РК – Разработка концепции АС.
Изучение объекта.
Проведение необходимых научно-исследовательских работ.
Разработка вариантов концепции АС.
Оформление отчета о выполненной работе.
ТЗ – Техническое создание АС.
Разработка и утверждение технического задания на задание.
ЭП – Эскизный проект.
Разработка предварительных проектных решений по системе и ее частям.
Разработка документации на АС и ее части.
ТП – Технический проект.
Разработка проектных решений по системе и ее частям.
Разработка документации на АС и ее части.
Разработка и оформление документации на поставку изделий для комплектования АС и/или технических требований (технических заданий) на их разработку.
Разработка заданий на проектирование в смежных частях проекта объекта автоматизации.
РД – Рабочая документация.
Разработка рабочей документации на систему и ее части.
Разработка или адаптация программ.
ВД – Ввод в действие.
Подготовка объекта автоматизации к вводу АС в действие.
Подготовка персонала.
Комплектация АС поставляемыми изделиями (программными и техническими средствами, информационными изделиями).
Строительно‑монтажные работы.
Пуско‑наладочные работы.
Проведение предварительных испытаний.
Проведение опытной эксплуатации.
Проведение приемочных испытаний.
СП – Сопровождение АС.
Выполнение работ в соответствии с гарантийными обязательствами.
Послегарантийное обслуживание.
Описано содержание документов, разрабатываемых на каждом этапе. Это определяет потенциальные возможности выделения на содержательном уровне сквозных работ, выполняемых параллельно или последовательно, и составляющих их задач. Такой прием может использоваться при построении профиля стандартов ЖЦ проекта, включающего согласованные подмножества стандартов ГОСТ 34 и ISO 12207.
Приложение 2. Список макрокоманд ERWin
Макропеременные, используемые в таблице:
· <defaul value>, <value>, <initial value> – определяемый пользователем текст или числовое значение, применяемое при генерации;
· <action> – SQL-команда, например INSERT, UPDATE или DELETE; <macro code> – фрагмент макрокода;
· <predicate> – булевое выражение, которое может возвращать значение FALSE или TRUE;
· <preflx>, <old prefix>, <new prefix> – фрагмент текста или числовое выражение, которое добавляется перед именем таблицы или колонки при генерации;
· <separator> – разделитель, который вставляется в текст триггера или процедуры при генерации (заключается в двойные кавычки);
· <table name>, <default name>, <domain name>, <validation> – имя таблицы, значения по умолчанию, домена и правила валидации;
· <variable> – переменная, использующаяся в триггере.
%% – два символа % необходимо использовать, если расширенный текст триггера должен содержать один символ.
%!=(<macro code, <macro code 2>) – возвращает TRUE, если аргументы равны.
%*(<macro code 1,<macro code 2>) – перемножает <macro code l> и <macro code 2>.
%+(<macro code 1>,<macro code 2>) –складывает <macro code l> и <macro code 2>.
%–(<macro code 1,<macro code 2>) – вычитает <macro code 2> из <macro code l>.
%/(<macro code 1>, <macro code 2>) – делит <macro code l> на <macro code 2>.
%:<variable> – возвращает значение <variable>.
%<(<macro code 1>, <macro code 2>) – возвращает TRUE, если <macro code l> меньше, чем <macro code 2>.
%<=(<macro code 1>, <macro code 2>) – возвращает TRUE, если <macro code 1> меньше или равен <macro code 2>.
%=(<variable>,<macro code>) – присваивает <macro code> переменной <variable>.
%==(<macro code 1 ><macro code 2>) –возвращает TRUE, если аргумент <macro code 1> равен <macro code 2>
%>(<macro code1>, <macro code 2>) – возвращает TRUE, если <macro code 1> больше, чем <macro code 2>.
%Action – возвращает имя команды, до или после которой срабатывает триггер, например INSERT, UPDATE, DELETE.
%Actions (<separator>) – возвращает список команд, до или после которых срабатывает триггер, например INSERT или UPDATE.
%And (<macro code 1>,<macrо code 2>) – выполняет операцию «логическое И» над булевыми предикатами, заданными в <macro code 1 и <macro code 2>.
%Att Datatype – возвращает тип данных текущего атрибута.
%Att Def – возвращает определение атрибута.
%Att Default – возвращает имя значения по умолчанию, связанное с атрибутом.
%Att Domain – возвращает имя домена, связанное с атрибутом.
%Att Fieldname – возвращает имя колонки, соответствующей атрибуту.
%Att FieldWidth – возвращает целое число, представляющее длину типа данных текущего атрибута..
%AttlD – возвращает ID атрибута.
%AttlsFK/%AttlsPK – булевый предикат, который может быть использован как условие в выражении %If. Он определяет, входит ли текущий атрибуту состав внешнего/первичного ключа.
%AttlsRolenamed – булевый предикат, который может быть использован как условие в выражении %If. Он определяет, является ли текущий атрибут именем роли.
%AttName – возвращает логическое имя текущего атрибута.
%AttNullOption – возвращает строку, представляющую режим нулевых значений для текущего атрибута (NULL/NOT NULL).
%AttPhysDatatype – возвращает физический тип данных текущего атрибута независимо оттого, является ли этот тип данных типом данных, определенным пользователем.
%Atts (<separator>,<function>,<prefix>) – выдает список всех атрибутов сущности триггера, выполняя заданную функцию для каждого элемента.
%AttValidation – возвращает имя правила валидации, связанного с данным атрибутом; может быть использован в ForEachAtt или ForEachFKAtt.
%Cardinality – возвращает мощность (кардинальность) связи.
%Child – возвращает физическое имя таблицы дочерней сущности в связи.
%ChildAtts (<separator>, <function>,<prefix>) – возвращает список внешних ключей дочерней сущности в связи, выполняя заданную функцию для каждого элемента.
%ChildFK (<separator><function>) – возвращает список внешних ключей дочерней сущности в связи, выполняя заданную функцию для каждого элемента.
%ChildFKDecl (<old prefix> <new pre1ix>,<separator>) – возвращает список внешних ключей дочерней сущности в связи с их типами данных (см. %ParamDecl).
%ChildNK (<separator>, <function>,<prefix>) – генерирует разделенный список функций для всех неключевых атрибутов дочерней сущности в связи, выполняя заданную функцию для каждого элемента.
%ChildNKDecl (<old prefix>, <new prefix>(<separator>) – возвращает список неключевых атрибутов дочерней сущности связи с их типами данных.
%Child Param Decl (<old prefix>, <new prefix>,<separator>) – возвращает список атрибутов дочерней сущности связи с их типами данных (см. %ParamDecl).
%ChildPK (<separator>, <function>,<prefix>) – генерирует разделенный список функций для каждого элемента первичного ключа дочерней сущности, выполняя заданную функцию для каждого элемента (например, update(customer_number) or update(customer_name) or....).
%ChildPKDecl (<old prefix>, <new prefix>,<separator>) – возвращает список атрибутов первичного ключа дочерней сущности связи с их типами данных (см. %ParamDecl).
%Concat(<value 1>,<value 2>) – возвращает конкатенацию (объединение) <value 1> и <value 2>.
%CurrentDatabase – возвращает имя БД, которое используется в диалоге LOGIN при генерации скрипта.
%CurrentFile – возвращает имя файла модели (.ER1), на основе которой генерируется скрипт.
%CurrentServer –возвращает имя сервера, для которого генерируется скрипт.
%CurrentUser –возвращает имя пользователя, которое используется в диалоге LOGIN при генерации скрипта.
%CustomTriggerDefaultBody –часть триггера, определенного пользователем – default body, которая содержится в diagram–wide–сегменте шаблона CUSTOM TRIGGER FOOTER.
%CustomTriggerDefaultFooter –часть триггера, определенного пользователем – default footer, которая содержится в diagram‑wide‑сегменте шаблона CUSTOM TRIGGER FOOTER.
%CustomTriggerDefaultHeader – часть триггера, определенного пользователем – default header, которая содержится в diagram‑wide‑сегменте шаблона CUSTOM TRIGGER HEADER.
%DatatypeName( ) –возвращает тип данных.
%DatatypeScale( ) – для десятичных типов данных возвращает разряд числа.
%DatatypeWidth( ) –возвращает ширину поля.
%Datetime –возвращает строку с текущей датой и временем.
%DBMS –возвращает имя СУБД.
%DBMSDelim – возвращает разделитель операторов СУБД.
%Decl (<arg>,<initial value>) – объявляет <arg> как переменную и, если это задано, присваивает ей значение <initial value>.
%DefaultName/%DefaultValue – возвращает имя/значение по умолчанию.
%DomainDatatype (<domain name>) – возвращает физический тип данных домена.
%DomainDef (<domain name>) – возвращает определение домена.
%DomainName – возвращает имя домена.
%DomainNullOption (<domain name>) – возвращает режим нулевых значений для домена (NULL/NOTNULL).
%DomainValidation (<domain name>) – возвращает имя правила валидации, связанное с доменом.
%Entityld (<entity or tablename>) –возвращает ID сущности или таблицы.
%EntityName (<entity or tablename>) – возвращает имя сущности или таблицы.
%File (<filename>, <macro code>) –макрокод записывается в файл.
%Fire – задает, когда срабатывает триггер, на таблицы (например: BEFORE или AFTER) (INFORMIX, Ingres, ORACLE 7, Rd).
%ForEachAtt (<table>, <separator>) {<macro сode>} – расширяет макрокод для каждого из атрибутов заданной таблицы.
%ForEachChildRel (<separator>) {<relationship code>} – расширяет <relationship code> для каждой связи, в которой сущность триггера является дочерней.
%ForEachDefault (<separator>) { <macro code>} – расширяет макрокод для каждого значения по умолчанию.
%ForEachEntity (<separator>) { <macro code>} – расширяет макрокод для каждой сущности.
%ForEachEKAtt (<separator>) { <macro code>} – расширяет макрокод для каждого из атрибутов внешнего ключа, мигрировавших через текущую связь.
%ForEachlndexMem (<sequence>, [<separator>]) {<macro code>} – расширяет макрокод для каждого индекса в подмножестве модели.
%ForEachKey([<table>], [<type>], [<separator>]) {<macro code>} – расширяет макрокод для всех инвертированных входов и альтернативных ключей в подмножестве модели.
%ForEachKeyMem(<sequence>, [<separator>]) {<macro code>} – расширяет макрокод для всех членов ключей.
%ForEachParentRel (<separator>) {<krelationship code>} – расширяет <relationship code> для каждой связи, в которой сущность триггера является родительской.
%ForEachValidValue (<separator>) {<macro code>} – расширяет макрокод для всех значений правила валидации.
%ForEachValidation (<separator>) {<macro code>} – расширяет макрокод для всех правил валидации.
%If (<predicate>){<macro code>}, %Else{<macrocode>} – в зависимости от условия расширяет макрокод if или else. Часть else не является обязательной.
%lndexName/%indexType –возвращает имя/тип индекса.
JoinFKPK(<child table>, <parent table>, <comparison op>,<separator>) – часть условия поиска оператора Where, присоединяющая внешний ключ дочерней сущности к первичному ключу родительской сущности связи.
JoinPKPK{<table>,<correlation>, <comparison op>, <separator> )– часть условия поиска оператора Where, соединяющая первичные ключи двух корреляций или таблицы и корреляции.
%KeyName –возвращает имя ключа.
%Len (<macro code> ) – возвращает длину строки <macro code>.
%Lower (<macro code>) – преобразует аргумент <macro code> в нижний регистр.
%Max(<value1>,<value2>) – возвращает максимальное значение <value1> или <value2>.
%Min(<value1>,<value2>) – возвращает минимальное значение <value1> или <value2>.
%NK (<separator>,<function>,<prefix>) – выдает список всех неключевых атрибутов сущности триггера, выполняя заданную функцию для каждого элемента.
%NKDecl(<old prefix>, <new prefix>, <separator>) –выдает список неключевых атрибутов сущности тиггера с их типами данных (см. %ParamDecl).
%Not (<macro code>) – выполняет операцию «логическое НЕ» над булевым предикатом, определенным в <macro code>.
%NotnullFK (<child table>, <not null expression>, <prefix>, <separator>) – часть условия поиска оператора Where, сравнивающая внешний ключ дочерней сущности связи с null. Эта макрокоманда расширяется тогда и только тогда, когда связь является неидентифицирующей, nulls allowed.
%Or (<macro code>,<macro code2>) – выполняет операцию «логическое ИЛИ» над булевыми предикатами, определенными в <macro code1> и <macro code2>.
%ParamDecl (<old prefix>, <new pretix>,<separator>) – выдает список всех атрибутов сущности триггера с их типами данных. Имя каждого атрибута имеет формат: <old/newprefix>_<att_name>. Если заданы и старый, и новый префикс, то длина списка удваивается. В первой половине списка содержится <old prefix>_<att_name>, во второй – < new prefix>_<att_name>.
%ParamPass(<old prefix>, <new prefix>,<param/value separator>,<param separator>) – присваивает значения параметрам процедур, заданным в <old prefix> и/или в <newprefix> для всех атрибутов сущности триггера.
% Parent – физическое имя таблицы родительской сущности связи.
%ParentAtt (<attribute macro>) – расширяет любую макрокоманду атрибута (например, %AttFieldName, AttDatatype) для атрибута родительского первичного ключа, который, мигрировав, сформировал текущий атрибут.
%ParentAtts (<separator>, <function>,<prefix>) – выдает список всех атрибутов родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentNK(<separator>, <function>, <prefix>) – выдает список всех неключевых атрибутов родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentNKDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl).
%ParamDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl ).
%ParamPass (<old prefix>, <new prefix>,<param/value separator>,<param separator>) – присваивает значения параметрам процедур, заданным в <old prefix> и/или в <new prefix> для всех атрибутов сущности триггера.
%ParentAtt (<attribute macro>) – расширяет любую макрокоманду атрибута (например, %AttFieldName, %AttDatatype) для атрибута родительского первичного ключа, который, мигрировав, сформировал текущий атрибут.
%Parent – физическое имя таблицы родительской сущности связи.
%ParentAtts/%ParentNK (<separator>, <function>, <prefix>) – выдает список всех/неключевых атрибутов родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentNKDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl).
%ParentParamDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl).
%ParentPK (<separator>,<function>) – выдает список всех атрибутов первичного ключа родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentPKDecl (<old prefix>, <new prefix>, <separator>) – выдает список атрибутов первичного ключа родительской сущности связи с их типами данных (см. %ParamDecl).
%PhysRelName – возвращает физическое имя связи.
%PK (<separator>, <function>) – выдает список первичных ключей сущности триггера, выполняя заданную функцию для каждого элемента.
%PKDecl (<old prefix>, <new prefix> ,<separator>) – выдает список атрибутов первичного ключа сущности триггера с их типами данных (см. %ParamDecl).
%RefClause – оператор ссылок; генерирует: REFERENCES OLD as <old name> new as <new name> (INFORMIX, Ingres, ORACLE 7, Rdb).
%Relld –возвращает ID связи.
%RellsNonull – проверяет null-выражение для связи и возвращает TRUE, если null не разрешены.
%RelRI (<action>, <RI Type>) –возвращает правило ссылочной целостности.
%RelTemplate – расширяет код шаблона, присоединенного к текущей связи. Если нет присоединенного кода, то расширяется соответствующий шаблон ссылочной целостности.
%RelType – возвращает тип связи.
%Scope – задает, каким образом будет выполняться триггер (например, один раз для всей таблицы, для каждой строки и т.д.).
%SetFK (<child table>,<value>) – выдает список атрибутов внешнего ключа дочерней сущности связи, в котором каждому элементу присвоено заданное значение (ORACLE 7).
%Substitute (<value>, <pattern> <substitute>) – заменяет строку <pattern> в строке <value> на строку <substitute>.
%Substr (<macro code>, <initial pos>, <length>) – создает подстроку для расширения заданного <macro code>.
%Switch (<argument>) {%Choose(<choise 1) {<macro code 1>}
{%Choose(<choise 2) {<macro code 2>} ... .
%Default {<macro code n>}} – позволяет расширить макрокод по условию.
%Table Name – возвращает физическое имя таблицы сущности триггера.
%TemplateName – возвращает имя шаблона триггера, хранимой процедуры или скрипта; может быть использовано в редакторе Entity Trigger.
%Trigger Name – возвращает физическое имя триггера.
%TriggerRelRI (<action>, <type>,<integrity>) – булевый предикат, принимающий значение TRUE, если заданный триггер и связь относятся к заданным действию (Update/Delete/Insert), типу (Child/Parent) и целостности (Cascade/Restrict/Set Null/Set Default).
%UpdateChildFK() – выдает список внешнего ключа дочерней сущности связи, выполняя функцию update для каждого элемента. (ORACLE 7, SQL Server, SYBASE).
%UpdateParentPK() –выдает список первичного ключа родительской сущности связи, выполняя функцию update для каждого элемента (ORACLE 7, SQL Server, SYBASE).
%UpdatePK() – выдает список первичного ключа сущности триггера, выполняя функцию update для каждого элемента ( ORACLE 7, SQL Server, SYBASE).
%Upper (<macro code>) – преобразует аргумент <macro code> в нижний регистр.
%ValidationHasValidValues (<arg>) –возвращает TRUE, если заданное правило валидации <агg> имеет допустимые значения, иначе – FALSE .
%ValidationName – возвращает имя правила валидации.
%ValidationRule (<validation name>) или %ValidationRule – возвращает правило валидации для сервера; может быть использовано в любом месте с аргументом <validation name> или в рамках действия правила, без аргументов.
%ValidValue – возвращает значение допустимого значения; используется в рамках действия допустимого значения.
%ValidValueDef – возвращает определение допустимого значения; используется в рамках действия допустимого значения.
%VerbPhrase – возвращает глагольную фразу связи.
Приложение 3. Список макрокоманд ERWin
Макропеременные, используемые в таблице:
· <defaul value>, <value>, <initial value> – определяемый пользователем текст или числовое значение, применяемое при генерации;
· <action> – SQL-команда, например INSERT, UPDATE или DELETE; <macro code> – фрагмент макрокода;
· <predicate> – булевое выражение, которое может возвращать значение FALSE или TRUE;
· <preflx>, <old prefix>, <new prefix> – фрагмент текста или числовое выражение, которое добавляется перед именем таблицы или колонки при генерации;
· <separator> – разделитель, который вставляется в текст триггера или процедуры при генерации (заключается в двойные кавычки);
· <table name>, <default name>, <domain name>, <validation> – имя таблицы, значения по умолчанию, домена и правила валидации;
· <variable> – переменная, использующаяся в триггере.
%% – два символа % необходимо использовать, если расширенный текст триггера должен содержать один символ.
%!=(<macro code, <macro code 2>) – возвращает TRUE, если аргументы равны.
%*(<macro code 1,<macro code 2>) – перемножает <macro code l> и <macro code 2>.
%+(<macro code 1>,<macro code 2>) –складывает <macro code l> и <macro code 2>.
%–(<macro code 1,<macro code 2>) – вычитает <macro code 2> из <macro code l>.
%/(<macro code 1>, <macro code 2>) – делит <macro code l> на <macro code 2>.
%:<variable> – возвращает значение <variable>.
%<(<macro code 1>, <macro code 2>) – возвращает TRUE, если <macro code l> меньше, чем <macro code 2>.
%<=(<macro code 1>, <macro code 2>) – возвращает TRUE, если <macro code 1> меньше или равен <macro code 2>.
%=(<variable>,<macro code>) – присваивает <macro code> переменной <variable>.
%==(<macro code 1 ><macro code 2>) –возвращает TRUE, если аргумент <macro code 1> равен <macro code 2>
%>(<macro code1>, <macro code 2>) – возвращает TRUE, если <macro code 1> больше, чем <macro code 2>.
%Action – возвращает имя команды, до или после которой срабатывает триггер, например INSERT, UPDATE, DELETE.
%Actions (<separator>) – возвращает список команд, до или после которых срабатывает триггер, например INSERT или UPDATE.
%And (<macro code 1>,<macrо code 2>) – выполняет операцию «логическое И» над булевыми предикатами, заданными в <macro code 1 и <macro code 2>.
%Att Datatype – возвращает тип данных текущего атрибута.
%Att Def – возвращает определение атрибута.
%Att Default – возвращает имя значения по умолчанию, связанное с атрибутом.
%Att Domain – возвращает имя домена, связанное с атрибутом.
%Att Fieldname – возвращает имя колонки, соответствующей атрибуту.
%Att FieldWidth – возвращает целое число, представляющее длину типа данных текущего атрибута..
%AttlD – возвращает ID атрибута.
%AttlsFK/%AttlsPK – булевый предикат, который может быть использован как условие в выражении %If. Он определяет, входит ли текущий атрибуту состав внешнего/первичного ключа.
%AttlsRolenamed – булевый предикат, который может быть использован как условие в выражении %If. Он определяет, является ли текущий атрибут именем роли.
%AttName – возвращает логическое имя текущего атрибута.
%AttNullOption – возвращает строку, представляющую режим нулевых значений для текущего атрибута (NULL/NOT NULL).
%AttPhysDatatype – возвращает физический тип данных текущего атрибута независимо оттого, является ли этот тип данных типом данных, определенным пользователем.
%Atts (<separator>,<function>,<prefix>) – выдает список всех атрибутов сущности триггера, выполняя заданную функцию для каждого элемента.
%AttValidation – возвращает имя правила валидации, связанного с данным атрибутом; может быть использован в ForEachAtt или ForEachFKAtt.
%Cardinality – возвращает мощность (кардинальность) связи.
%Child – возвращает физическое имя таблицы дочерней сущности в связи.
%ChildAtts (<separator>, <function>,<prefix>) – возвращает список внешних ключей дочерней сущности в связи, выполняя заданную функцию для каждого элемента.
%ChildFK (<separator><function>) – возвращает список внешних ключей дочерней сущности в связи, выполняя заданную функцию для каждого элемента.
%ChildFKDecl (<old prefix> <new pre1ix>,<separator>) – возвращает список внешних ключей дочерней сущности в связи с их типами данных (см. %ParamDecl).
%ChildNK (<separator>, <function>,<prefix>) – генерирует разделенный список функций для всех неключевых атрибутов дочерней сущности в связи, выполняя заданную функцию для каждого элемента.
%ChildNKDecl (<old prefix>, <new prefix>(<separator>) – возвращает список неключевых атрибутов дочерней сущности связи с их типами данных.
%Child Param Decl (<old prefix>, <new prefix>,<separator>) – возвращает список атрибутов дочерней сущности связи с их типами данных (см. %ParamDecl).
%ChildPK (<separator>, <function>,<prefix>) – генерирует разделенный список функций для каждого элемента первичного ключа дочерней сущности, выполняя заданную функцию для каждого элемента (например, update(customer_number) or update(customer_name) or....).
%ChildPKDecl (<old prefix>, <new prefix>,<separator>) – возвращает список атрибутов первичного ключа дочерней сущности связи с их типами данных (см. %ParamDecl).
%Concat(<value 1>,<value 2>) – возвращает конкатенацию (объединение) <value 1> и <value 2>.
%CurrentDatabase – возвращает имя БД, которое используется в диалоге LOGIN при генерации скрипта.
%CurrentFile – возвращает имя файла модели (.ER1), на основе которой генерируется скрипт.
%CurrentServer –возвращает имя сервера, для которого генерируется скрипт.
%CurrentUser –возвращает имя пользователя, которое используется в диалоге LOGIN при генерации скрипта.
%CustomTriggerDefaultBody –часть триггера, определенного пользователем – default body, которая содержится в diagram–wide–сегменте шаблона CUSTOM TRIGGER FOOTER.
%CustomTriggerDefaultFooter –часть триггера, определенного пользователем – default footer, которая содержится в diagram‑wide‑сегменте шаблона CUSTOM TRIGGER FOOTER.
%CustomTriggerDefaultHeader – часть триггера, определенного пользователем – default header, которая содержится в diagram‑wide‑сегменте шаблона CUSTOM TRIGGER HEADER.
%DatatypeName( ) –возвращает тип данных.
%DatatypeScale( ) – для десятичных типов данных возвращает разряд числа.
%DatatypeWidth( ) –возвращает ширину поля.
%Datetime –возвращает строку с текущей датой и временем.
%DBMS –возвращает имя СУБД.
%DBMSDelim – возвращает разделитель операторов СУБД.
%Decl (<arg>,<initial value>) – объявляет <arg> как переменную и, если это задано, присваивает ей значение <initial value>.
%DefaultName/%DefaultValue – возвращает имя/значение по умолчанию.
%DomainDatatype (<domain name>) – возвращает физический тип данных домена.
%DomainDef (<domain name>) – возвращает определение домена.
%DomainName – возвращает имя домена.
%DomainNullOption (<domain name>) – возвращает режим нулевых значений для домена (NULL/NOTNULL).
%DomainValidation (<domain name>) – возвращает имя правила валидации, связанное с доменом.
%Entityld (<entity or tablename>) –возвращает ID сущности или таблицы.
%EntityName (<entity or tablename>) – возвращает имя сущности или таблицы.
%File (<filename>, <macro code>) –макрокод записывается в файл.
%Fire – задает, когда срабатывает триггер, на таблицы (например: BEFORE или AFTER) (INFORMIX, Ingres, ORACLE 7, Rd).
%ForEachAtt (<table>, <separator>) {<macro сode>} – расширяет макрокод для каждого из атрибутов заданной таблицы.
%ForEachChildRel (<separator>) {<relationship code>} – расширяет <relationship code> для каждой связи, в которой сущность триггера является дочерней.
%ForEachDefault (<separator>) { <macro code>} – расширяет макрокод для каждого значения по умолчанию.
%ForEachEntity (<separator>) { <macro code>} – расширяет макрокод для каждой сущности.
%ForEachEKAtt (<separator>) { <macro code>} – расширяет макрокод для каждого из атрибутов внешнего ключа, мигрировавших через текущую связь.
%ForEachlndexMem (<sequence>, [<separator>]) {<macro code>} – расширяет макрокод для каждого индекса в подмножестве модели.
%ForEachKey([<table>], [<type>], [<separator>]) {<macro code>} – расширяет макрокод для всех инвертированных входов и альтернативных ключей в подмножестве модели.
%ForEachKeyMem(<sequence>, [<separator>]) {<macro code>} – расширяет макрокод для всех членов ключей.
%ForEachParentRel (<separator>) {<krelationship code>} – расширяет <relationship code> для каждой связи, в которой сущность триггера является родительской.
%ForEachValidValue (<separator>) {<macro code>} – расширяет макрокод для всех значений правила валидации.
%ForEachValidation (<separator>) {<macro code>} – расширяет макрокод для всех правил валидации.
%If (<predicate>){<macro code>}, %Else{<macrocode>} – в зависимости от условия расширяет макрокод if или else. Часть else не является обязательной.
%lndexName/%indexType –возвращает имя/тип индекса.
JoinFKPK(<child table>, <parent table>, <comparison op>,<separator>) – часть условия поиска оператора Where, присоединяющая внешний ключ дочерней сущности к первичному ключу родительской сущности связи.
JoinPKPK{<table>,<correlation>, <comparison op>, <separator> )– часть условия поиска оператора Where, соединяющая первичные ключи двух корреляций или таблицы и корреляции.
%KeyName –возвращает имя ключа.
%Len (<macro code> ) – возвращает длину строки <macro code>.
%Lower (<macro code>) – преобразует аргумент <macro code> в нижний регистр.
%Max(<value1>,<value2>) – возвращает максимальное значение <value1> или <value2>.
%Min(<value1>,<value2>) – возвращает минимальное значение <value1> или <value2>.
%NK (<separator>,<function>,<prefix>) – выдает список всех неключевых атрибутов сущности триггера, выполняя заданную функцию для каждого элемента.
%NKDecl(<old prefix>, <new prefix>, <separator>) –выдает список неключевых атрибутов сущности тиггера с их типами данных (см. %ParamDecl).
%Not (<macro code>) – выполняет операцию «логическое НЕ» над булевым предикатом, определенным в <macro code>.
%NotnullFK (<child table>, <not null expression>, <prefix>, <separator>) – часть условия поиска оператора Where, сравнивающая внешний ключ дочерней сущности связи с null. Эта макрокоманда расширяется тогда и только тогда, когда связь является неидентифицирующей, nulls allowed.
%Or (<macro code>,<macro code2>) – выполняет операцию «логическое ИЛИ» над булевыми предикатами, определенными в <macro code1> и <macro code2>.
%ParamDecl (<old prefix>, <new pretix>,<separator>) – выдает список всех атрибутов сущности триггера с их типами данных. Имя каждого атрибута имеет формат: <old/newprefix>_<att_name>. Если заданы и старый, и новый префикс, то длина списка удваивается. В первой половине списка содержится <old prefix>_<att_name>, во второй – < new prefix>_<att_name>.
%ParamPass(<old prefix>, <new prefix>,<param/value separator>,<param separator>) – присваивает значения параметрам процедур, заданным в <old prefix> и/или в <newprefix> для всех атрибутов сущности триггера.
% Parent – физическое имя таблицы родительской сущности связи.
%ParentAtt (<attribute macro>) – расширяет любую макрокоманду атрибута (например, %AttFieldName, AttDatatype) для атрибута родительского первичного ключа, который, мигрировав, сформировал текущий атрибут.
%ParentAtts (<separator>, <function>,<prefix>) – выдает список всех атрибутов родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentNK(<separator>, <function>, <prefix>) – выдает список всех неключевых атрибутов родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentNKDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl).
%ParamDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl ).
%ParamPass (<old prefix>, <new prefix>,<param/value separator>,<param separator>) – присваивает значения параметрам процедур, заданным в <old prefix> и/или в <new prefix> для всех атрибутов сущности триггера.
%ParentAtt (<attribute macro>) – расширяет любую макрокоманду атрибута (например, %AttFieldName, %AttDatatype) для атрибута родительского первичного ключа, который, мигрировав, сформировал текущий атрибут.
%Parent – физическое имя таблицы родительской сущности связи.
%ParentAtts/%ParentNK (<separator>, <function>, <prefix>) – выдает список всех/неключевых атрибутов родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentNKDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl).
%ParentParamDecl (<old prefix>, <new prefix>, <separator>) – выдает список неключевых атрибутов родительской сущности связи с их типами данных (см. %ParamDecl).
%ParentPK (<separator>,<function>) – выдает список всех атрибутов первичного ключа родительской сущности связи, выполняя заданную функцию для каждого элемента.
%ParentPKDecl (<old prefix>, <new prefix>, <separator>) – выдает список атрибутов первичного ключа родительской сущности связи с их типами данных (см. %ParamDecl).
%PhysRelName – возвращает физическое имя связи.
%PK (<separator>, <function>) – выдает список первичных ключей сущности триггера, выполняя заданную функцию для каждого элемента.
%PKDecl (<old prefix>, <new prefix> ,<separator>) – выдает список атрибутов первичного ключа сущности триггера с их типами данных (см. %ParamDecl).
%RefClause – оператор ссылок; генерирует: REFERENCES OLD as <old name> new as <new name> (INFORMIX, Ingres, ORACLE 7, Rdb).
%Relld –возвращает ID связи.
%RellsNonull – проверяет null-выражение для связи и возвращает TRUE, если null не разрешены.
%RelRI (<action>, <RI Type>) –возвращает правило ссылочной целостности.
%RelTemplate – расширяет код шаблона, присоединенного к текущей связи. Если нет присоединенного кода, то расширяется соответствующий шаблон ссылочной целостности.
%RelType – возвращает тип связи.
%Scope – задает, каким образом будет выполняться триггер (например, один раз для всей таблицы, для каждой строки и т.д.).
%SetFK (<child table>,<value>) – выдает список атрибутов внешнего ключа дочерней сущности связи, в котором каждому элементу присвоено заданное значение (ORACLE 7).
%Substitute (<value>, <pattern> <substitute>) – заменяет строку <pattern> в строке <value> на строку <substitute>.
%Substr (<macro code>, <initial pos>, <length>) – создает подстроку для расширения заданного <macro code>.
%Switch (<argument>) {%Choose(<choise 1) {<macro code 1>}
{%Choose(<choise 2) {<macro code 2>} ... .
%Default {<macro code n>}} – позволяет расширить макрокод по условию.
%Table Name – возвращает физическое имя таблицы сущности триггера.
%TemplateName – возвращает имя шаблона триггера, хранимой процедуры или скрипта; может быть использовано в редакторе Entity Trigger.
%Trigger Name – возвращает физическое имя триггера.
%TriggerRelRI (<action>, <type>,<integrity>) – булевый предикат, принимающий значение TRUE, если заданный триггер и связь относятся к заданным действию (Update/Delete/Insert), типу (Child/Parent) и целостности (Cascade/Restrict/Set Null/Set Default).
%UpdateChildFK() – выдает список внешнего ключа дочерней сущности связи, выполняя функцию update для каждого элемента. (ORACLE 7, SQL Server, SYBASE).
%UpdateParentPK() –выдает список первичного ключа родительской сущности связи, выполняя функцию update для каждого элемента (ORACLE 7, SQL Server, SYBASE).
%UpdatePK() – выдает список первичного ключа сущности триггера, выполняя функцию update для каждого элемента ( ORACLE 7, SQL Server, SYBASE).
%Upper (<macro code>) – преобразует аргумент <macro code> в нижний регистр.
%ValidationHasValidValues (<arg>) –возвращает TRUE, если заданное правило валидации <агg> имеет допустимые значения, иначе – FALSE .
%ValidationName – возвращает имя правила валидации.
%ValidationRule (<validation name>) или %ValidationRule – возвращает правило валидации для сервера; может быть использовано в любом месте с аргументом <validation name> или в рамках действия правила, без аргументов.
%ValidValue – возвращает значение допустимого значения; используется в рамках действия допустимого значения.
%ValidValueDef – возвращает определение допустимого значения; используется в рамках действия допустимого значения.
%VerbPhrase – возвращает глагольную фразу связи.
Учебное издание
Плещёв Владимир Васильевич
Программная инженерия
Редактор и корректор
Поз. Подписано в печать .
Формат бумаги 60 х 84 1/16. Бумага для множительных аппаратов.
Печать плоская. Уч.- изд. л. 10. Усл. печ. л. 10 .
Заказ Тираж экз.
Издательство Уральского государственного экономического университета
Екатеринбург