전문 관리 > 시각화 및 게시 지원 > WVS 게시 규칙 > 게시 규칙에서 조건 사용 > 조건 요소
  
조건 요소
최신 <condition> 요소를 통해 사용자는 EPMDocument에서 라이프 사이클 상태(예: In Work, Released), CAD 유형(예: Part, Assembly) 및 컨테이너와 같은 추가 속성을 찾는 규칙을 설정할 수 있습니다. 여기에는 AND, OR 및 NOT 등의 많은 논리 연산자의 도입이 포함됩니다.
속성 - 기본 속성 요소는 다음과 같습니다.
<attribute name="epmdoc_lifeCycleState" value="Released" />
이 요소의 name 속성은 평가 중인 EPMDocument에서 검사되는 속성입니다. 사용 가능한 속성을 모두 찾는 한 가지 방법은 Creo View에서 표현을 열고 등록 정보를 보는 것입니다. 게시 규칙에 사용 가능한 모든 일련의 epmdoc_* 등록 정보가 표시됩니다. 또한 관련 WTPart의 등록 정보도 사용할 수 있습니다. 이러한 등록 정보도 Creo View에서 볼 수 있으며 part_* 형식으로 표시됩니다.
이 예의 value 속성은 비교 대상 값입니다. EPMDocument의 값이 이 요소의 value와 같으면(대/소문자 구분) 이 속성은 true로 간주됩니다.
다음 예와 같이 사용자는 value 대신 regex XML 속성으로 정규식을 사용할 수 있습니다.
<attribute name="epmdoc_CADName" regex=".*\.asm" />
이 경우 정규식 패턴이 이 EPMDocument와 일치하는 항목을 반환하면 속성은 true로 간주됩니다.
attribute 요소의 또 다른 용도는 객체에 속성이 있는지 여부를 확인하는 것입니다. 여기서 값은 중요하지 않습니다. 이 요소는 name 또는 regex를 사용하지 않으며 다음과 같습니다.
<attribute name="MyIBA" />
Instance-of - <instance-of> 요소는 <attribute> 요소처럼 사용되지만 평가 중인 객체가 지정된 형식인지 확인하는 데 사용됩니다. 이 요소는 다음과 같습니다.
<instance-of type=”wt.epm.EPMDocument” />
객체가 EPMDocument일 경우 게시 규칙에서 이 요소는 true로 평가됩니다. 또는 다음을 사용할 수 있습니다.
<instance-of type="wt.doc.WTDocument" />
객체가 WTDocument일 경우 이 요소는 게시 규칙에서 true로 평가됩니다.
structure - <structure> 요소는 다음과 같습니다.
<structure type=”epm” />
<structure>는 기존 <structure-type type=”epm”> 요소와 비슷하며 같은 방식으로 동작합니다. 이 새 요소에 대한 자세한 내용은 게시 규칙 요소의 호환성을 참조하십시오.
논리 연산자 - attribute, instance-ofstructure 요소를 따로 사용할 수 있지만 논리 연산자로 이들 요소를 결합하면 훨씬 더 강력해집니다. 지원되는 새로운 연산자는 and, ornot입니다. 예:
<and>
<attribute name="epmdoc_lifeCycleState" value="Released" />
<attribute name="epmdoc_docType" value="Assembly"/>
</and>
이 예에서 문이 true가 되려면 평가 중인 객체가 모두 어셈블리이고 릴리즈됨 상태여야 합니다. or 사용도 매우 비슷합니다.
<or>
<attribute name="epmdoc_lifeCycleState" value="Released" />
<attribute name="epmdoc_lifeCycleState" value="In Work" />
</or>
이 예에서 객체는 Released 또는 In Work입니다. <and><or>에 대해 세 개 이상의 하위 요소가 있을 수도 있지만 둘 다 하위 요소가 두 개 이상 있어야 합니다. 예:
<and>
<attribute name="epmdoc_lifeCycleState" value="Released" />
<attribute name="epmdoc_docType" value="Assembly"/>
<instance-of type=”EPMDocument” />
</and>
<not>도 유사한 방식으로 작동하지만 하위 요소를 하나만 포함할 수 있습니다. 아래 예에서는 평가 중인 객체가 릴리즈됨이 아닌 상태임을 나타냅니다.
<not>
<attribute name="epmdoc_lifeCycleState" value="Released" />
</not>
이러한 문의 용량에 추가하기 위해 서로 중첩되는 논리 연산자를 사용하여 복합 평가를 만들 수 있습니다. 다음 예는 작업 중 또는 릴리즈됨인 어셈블리임을 나타냅니다.
<and>
<attribute name="epmdoc_docType" value="Assembly"/>
<or>
<attribute name="epmdoc_lifeCycleState" value="In Work"/>
<attribute name="epmdoc_lifeCycleState" value="Released"/>
</or>
</and>
다음 예에서는 객체가 작업 중 드로잉 또는 릴리즈됨 어셈블리임을 나타냅니다.
<or>
<and>
<attribute name="epmdoc_lifeCycleState" value="In Work"/>
<attribute name="epmdoc_docType" value="Drawing"/>
</and>
<and>
<attribute name="epmdoc_docType" value="Assembly"/>
<attribute name="epmdoc_lifeCycleState" value="Released"/>
</and>
</or>
원하는 만큼 중첩할 수 있습니다.
조건 래퍼 - 다음과 같이 위의 모든 요소를 <condition> 요소로 래핑해야 합니다.
<condition name="In Work">
<attribute name="epmdoc_lifeCycleState" value="In Work" />
</condition>
"name" 속성은 <if> 요소(아래 참조)에서 이 조건을 참조하는 데 사용됩니다. <condition> 요소는 루트 <rules> 요소 아래에 있을 수 있으므로 모든 <authoring-application> 요소에 사용할 수 있습니다. 또는 하나의 특정 <authoring-application> 요소 아래에 있을 수 있으며 이 경우 해당 컨텍스트에서만 사용할 수 있습니다. "name" 속성은 전체 게시 규칙 문서에서 고유해야 합니다. 다음은 논리 연산자를 사용하는 또 다른 예입니다.
<condition name="Released Assembly”>
<and>
<attribute name="epmdoc_lifeCycleState" value="Released" />
<attribute name="epmdoc_docType" value="Assembly"/>
</and>
</condition>
if condition - 정의된 <condition> 요소를 사용하여 게시를 제어하려면 <if> 요소를 다음과 같이 사용합니다.
<if condition="Released Assembly">
<publish on="checkin" />
<publish on="create-representation" />
<publish on="schedule" />
</if>
여기서는 이름이 Released Assembly인 조건이 규칙에 정의됩니다(위 참조).