P.S. Еще идеи будут?

Яяя, яяя!!! У меня!!!

Описываю свою реальную задачу. Заранее скажу что всё решено делать на стороне сервере как минимум по причине производительности.

Задача такая: есть некая система описания макетов объектов, которые:
a) древовидно свызаны между собой
б) Имеют дополнительные произвольные зависимости
в) Имеют атрибуты
г) Некоторые атрибуты также имеют податрибуты

Задача - создание реальных объектов на основе этих макетов. Вот реальный _ПРОСТЕЙШИЙ_ кусочек процедуры, которая клонирует атрибуты макета в атрибуты созданного на основе макета объекта:

CREATE PROCEDURE "_InternalCloneWbsElementData"(
    "SourceId" INTEGER,
    "DestinationId" INTEGER)
AS
BEGIN
  -- clone endproducts
  INSERT INTO "_Endproducts" ("WbsElementId", "TypeId", "Description")
    SELECT :"DestinationId", "TypeId", "Description"
      FROM "EndproductsView" WHERE "WbsElementId" = :"SourceId";

Здесь :"DestinationId" задаётся извне и не известен во вьюхе. Разве что через GET_CONTEXT, но это как-то через одно место.

Есть ещё более сложные ситуации где нельзя создать вьюху. Если этого примера недостаточно, могу посложнее привести.

Что в этом случае посоветуете?

Ответить