Специализированное администрирование > Настройка бизнес-объектов > Администрирование правил инициализации объектов > Работа с правила инициализации объектов > Слияние правил для создания композитного правила > Создание составного правила
  
Создание составного правила
Правила для типа объекта и его подтипов, которые установлены в одном контексте, не заменяют другие правила, которые установлены в родительском контексте. Вместо этого все правила объединены в составное правило. Слияние включает объединение определений правила с использованием типа объекта и действующих иерархий контекста, где определение правила из наиболее низкого уровня в иерархии имеет преимущество перед определениями в родительских типах и контекстах. Оба типа объекта указываются при создании правила; принимается в расчет контекст, в котором правило было создано.
Можно просмотреть составное правило, действующее в особом контексте, щелкнув значок загрузки составного правила в таблице Правила инициализации объектов, показанной в контексте.
Если значение по умолчанию не задано для атрибута объекта в действующем составном правиле и пользователь при создании объекта не указал значение для атрибута, то происходит одно из следующих событий:
Если задано значение по умолчанию, то оно будет использоваться. Например, если правило не задало этап жизненного цикла по умолчанию, то служба жизненного цикла использует значение свойства, чтобы задать значение по умолчанию.
Если значение по умолчанию не определено, то значение атрибута задано как NULL. Если значение атрибута не может быть NULL, так как атрибут - это требуемый атрибут, происходит ошибка.
Управление созданием частей и документов CAD с помощью менеджеров рабочей группы Windchill повлияет на использование правил инициализации объекта, установленных для атрибутов имени и номера частей и документов CAD. Сведения об опциях управления, доступные через администраторов рабочих групп, см. в разделе Использование OIR для задания наименований и значений
Если к атрибуту объекта в действующем составном правиле не приложены ограничения или приложены пустые ограничения, то при показе интерфейса пользователя не будет дополнительных изменений внешнего вида поля значения. Например, представленное поле является пустым и редактируемым.
Примеры, показанные в данном разделе, используют содержимое правила, котороеопределяет значения по умолчанию. Слияние правил, включающихограничения дисплея, производится аналогично правилам, определяющим значения по умолчанию. Действующие иерархии типа и контекста используются для слияния индивидуальных правил и создания составного правила, которое будет использоваться.
Пример 1. Правила, включающие иерархию контекста
Если все правила определены для того же типа объекта, то слияние правил включает только использование установленной иерархии контекста. Рассмотрим следующий пример.
Правило для нумерации и контроля версий wt.doc.WTDocument задано в контексте сайта
Правило для папок wt.doc.WTDocument задано в контексте изделия или организации
Когда создается составное правило для объектов wt.doc.WTDocument под изделием или организацией, оно включает параметры для нумерации, контроля версий и папок. Если правило изделия для типа объекта wt.doc.WTDocument включает параметры схемы нумерации, то данные параметры правила обычно имеют преимущество перед параметрами, заданными в контексте сайта.
Пример 2. Правила, включающие иерархию типа
Если все правила определены для того же типа контекста, то слияние правил включает только использование установленной иерархии типов. Рассмотрим следующий пример.
Правило, заданное в контексте сайта, включает содержимое для настройки значений по умолчанию для нумерации и контроля версий документов типа wt.doc.WTDocument
Правило, заданное в контексте сайта, включает содержимое для значений папок по умолчанию для документов, связанных с подтипом wt.doc.WTDocument (как, например, com.ptc.General)
Тогда объединенное правило для com.ptc.General в контексте сайта обычно включает определение нумерации и контроля версий из родительского типа (wt.doc.WTDocument) и определение папок из com.ptc.General. Составное правило для объектов wt.doc.WTDocument в контексте сайта не будет включать определение папок, так как определение папок включено только в правило, определенное для подтипа.
Наследование от родителя к потомку типов и контекстов можно изменить, включив дополнительный атрибут "Конечный", или игнорировать атрибуты в элементе AttrValue, AttrConstraint или VarDef для конкретного атрибута объекта. Использование данных атрибутов описано в разделе Необязательные атрибуты AttrValue, AttrConstraint и VarDef.
Пример 3. Объединенные правила с множественными контекстами
Если правила, заданные для конкретного типа объекта, включают правила для родительского типа, дочернего подтипа и для правил в многочисленных контекстах, то слияние правил включает иерархию типа и контекста. Рассмотрим следующий пример.
Правило для пути папки по умолчанию, нумерации и контроля версий документов, связанных с типом wt.doc.WTDocument, задано в контексте сайта. Данное правило автоматически создает номер и версию документа и задает путь папки по умолчанию как /Default (папка верхнего уровня в контексте создания документа).
Правило для пути папки по умолчанию для документов, связанных с подтипом com.ptc.General типа wt.doc.WTDocument, задано в контексте изделия. Данное правило задает папку по умолчанию как /Default/General (общая папка в контексте, где создан документ, использующий тип com.ptc.General).
Использование данных правил предполагает, что пользователь создает документ, используя тип wt.doc.WTDocument в контексте изделия. Тогда верным является следующее:
Документ имеет автоматически сгенерированный номер и версию.
Расположением папки по умолчанию является папка верхнего уровня в контексте изделия.
В данном случае действующее составное правило включает содержимое правил, заданных в контексте сайта, и не использует содержимое правил, заданных в контексте изделия для пути папки по умолчанию (так как указанный тип объекта является родительским типом wt.doc.WTDocument).
Если пользователь создает документ, используя подтип com.ptc.General в контексте изделия, то верно следующее:
Документ имеет автоматически сгенерированный номер и версию.
Расположением папки по умолчанию является папка General в контексте изделия.
В действующем составном правиле используется содержимое правила для пути папки по умолчанию, который задан в изделии для подтипа com.ptc.General, потому что оно заменяет содержимое правила, заданного в контексте сайта для родительского типа wt.doc.WTDocument.
Пример 4. Объединенные правила с иерархией типа и контекста
Если используется иерархия и типа, и контекста, иерархия типа объекта в пределах текущего контекста имеет приоритет над иерархией контекста. Правило инициализации объекта для подтипа игнорируется, когда родительское правило типа существует в текущем контексте. Рассмотрим следующий пример.
Правило для пути папки по умолчанию, нумерации и контроля версий документов, связанных с типом wt.doc.WTDocument, задано в контексте сайта. Данное правило автоматически создает номер и версию документа и задает путь папки по умолчанию как /Default (папка верхнего уровня в контексте создания документа).
Правило для пути папки по умолчанию для документов, связанных с подтипом com.ptc.General типа wt.doc.WTDocument, задано также в контексте сайта. Данное правило задает папку по умолчанию как /Default/General (общая папка в контексте, где создан документ, использующий тип com.ptc.General).
Правило для пути папки по умолчанию для документов, связанных с типом wt.doc.WTDocument, задано в контексте изделия. Данное правило задает папку по умолчанию как /Default/General (подпапка Design в контексте, где создан документ, использующий тип wt.doc.WTDocument).
Если пользователь создает документ, используя подтип com.ptc.General в контексте изделия, то верно следующее:
Документ имеет автоматически сгенерированный номер и версию.
Расположением папки по умолчанию является папка Design в контексте изделия.
В сложном правиле, действующем в этом случае, используется содержание правила для пути папки по умолчанию, который установлен в изделии для wt.doc. WTDocument, потому что оно заменяет настройку папки в правиле, заданном в контексте сайта для родительского типа wt.doc.WTDocument, а также настройку папки в правиле, заданном в контексте сайта для подтипа com.ptc.General. Хотя правило уровня сайта, установленное для подтипа com.ptc.General, того же типа, что и созданный объект, оно игнорируется правилом на уровне изделия, которое использует иерархию типа объекта.