추가 Windchill 기능 > 제조 공정 관리 > 제품 구조 탐색기(PSE) 사용자 정의 > 객체 유형별로 작업을 사용 불가능으로 설정
  
객체 유형별로 작업을 사용 불가능으로 설정
PSE에서 객체 유형별로 작업을 사용 불가능으로 설정하려면 다음 지침을 따르십시오.
1. ExplorerStructures.xml 파일을 편집합니다.
작업을 사용 불가능으로 설정할 유형에 대해 <TypeDefinition> 요소를 작성합니다. 예를 들어, WTPart의 하위 유형인 org.my.MyTypeA, org.my.MyTypeBorg.my.MyTypeD에 대해 다음 요소를 정의합니다.
<TypeDefinition id="com.my.MyTypeATD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeA"/>
<TypeDefinition id="com.my.MyTypeBTD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeB"/>
<TypeDefinition id="com.my.MyTypeDTD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeD"/>
2. ExplorerValidators.xml 파일을 편집합니다.
작업을 사용 불가능으로 설정할 유형 그룹에 대해 <ValidatorDefinition> 요소를 작성합니다. 이 경우 선택된 부품의 유형이 검증자 정의에서 참조되는 유형 중 하나와 일치하면 false가 반환됩니다. 예를 들어, 위의 세 유형에 대해 다음과 같이 검증자를 정의합니다.
<ValidatorDefinition id="com.my.IsNotEqualToTypesABDVAL"
validatorClass="com.ptc.windchill.explorer.structureexplorer.
validators.IsValidTypeValidator" inverted="true">
<Import id="com.my.MyTypeATD"/>
<Import id="com.my.MyTypeBTD"/>
<Import id="com.my.MyTypeDTD"/>
</ValidatorDefinition>
* 
ValidatorDefinition의 validatorClass 속성 값은 위에 나열된 클래스여야 하고 inverted 속성은 "true"로 설정해야 합니다.
3. ExplorerActions.xml 파일을 편집합니다.
지정한 유형에 대해 사용 불가능으로 설정할 작업에 <ValidatorEntry> 요소를 추가합니다.
<ActionDefinition id="ptc.wnc.exp.EditCommonAttrsAction" ... >
...
<ValidatorEntry>
<Import id="com.my.IsNotEqualToTypesABDVAL"/>
</ValidatorEntry>
...
</ActionDefinition>
이 구성은 A, B 또는 D 유형의 부품을 선택할 때마다 PSE 응용 프로그램에서 공통 속성 편집 작업을 사용 불가능으로 설정합니다.
isValidTypeValidator 검증자
isValidTypeValidator 검증자는 com.ptc.windchill.explorer.structureexplorer.validators.IsValidTypeValidator 클래스로 구현됩니다. 지정된 유형 정의 세트에 대해 이 검증자는 현재 선택된 부품이 앞에 언급된 세트에 있으면 'true'를 반환합니다. A, B 및 D 유형에 대한 유형 정의를 사용하여 이 검증자의 인스턴스가 정의된 경우를 예로 들 수 있습니다. A, B 또는 D 유형의 부품이 선택되면 검증자가 true를 반환합니다. 다른 유형(예: C)의 부품이 선택되면 false를 반환합니다.
선택된 유형이 A, B 또는 D이면 true를 반환하는 <ValidatorDefinition>은 다음과 같은 방법으로 정의합니다.
<ValidatorDefinition id="com.my.IsEqualToOneOfTypesABDVAL"
validatorClass="com.ptc.windchill.explorer.structureexplorer.vali
dators.IsValidTypeValidator">
<Import id="com.my.MyTypeATD"/>
<Import id="com.my.MyTypeBTD"/>
<Import id="com.my.MyTypeDTD"/>
</ValidatorDefinition>
반대로, 선택된 유형이 A, B 또는 D이면 false를 반환하는 <ValidatorDefinition>은 다음과 같은 방법으로 정의합니다('inverted' 속성이 포함되어 있음).
<ValidatorDefinition id="com.my.IsNotEqualToTypesABDVAL"
validatorClass="com.ptc.windchill.explorer.structureexplorer.vali
dators.IsValidTypeValidator" inverted="true">
<Import id="com.my.MyTypeATD"/>
<Import id="com.my.MyTypeBTD"/>
<Import id="com.my.MyTypeDTD"/>
</ValidatorDefinition>
<Import> 요소는 <TypeDefinition> 요소를 참조하며 이 요소는 다음과 같이 정의합니다(각 유형이 WTPart의 직접 하위라고 가정할 경우).
<TypeDefinition id="com.my.MyTypeATD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeA"/>
<TypeDefinition id="com.my.MyTypeBTD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeB"/>
<TypeDefinition id="com.my.MyTypeDTD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeD"/>