추가 기능 > 서비스 정보 관리 > Customizing Windchill Service Information Manager and Windchill Service Parts(Windchill Service Information Manager 및 Windchill Service Parts 사용자 정의) > 서비스 유효성 사용자 정의 개요 > 사용자 정의 서비스 유효성 구성 패널 작성
  
사용자 정의 서비스 유효성 구성 패널 작성
서비스 유효성 객체의 특성 속성에 대해 서비스 유효성 추가/편집 대화 상자에 표시되는 필드와 해당 값을 지정하는 서비스 유효성 필터를 사용자 정의할 수 있습니다.
이 항목에서는 아래 표시된 필드에서 구성 패널을 구성하는 방법을 설명합니다. 패널은 유형컨텍스트 필드 아래의 영역입니다.
다음 요구 사항에 유의하십시오.
1. ServiceEffectivityConfigType을 확장하는 Java 클래스
다음 클래스를 예제로 참조하십시오(줄 바꿈 무시).
codebase\com\ptc\arbortext\windchill\serviceEffectivityFilter\client\ui
\renderers\configTypes\SerialNumberDateConfigType.class
2. 이 클래스에서는 원하는 필드에 대해 GXT 레이아웃과 컴포넌트를 사용합니다.
3. 속성과 사용자 정의 ServiceEffectivityConfigType 클래스가 ServiceEffectivityConfig.xml 파일에 등록됩니다.
자세한 내용은 서비스 유효성 사용자 정의 항목을 참조하십시오.
메소드 요약
다음은 ServiceEffectivtityConfigType에서 상속되며 덮어쓰거나 구현되어야 하는 필수 메소드입니다. 각 메소드에 대한 자세한 내용은 후속 단원을 참조하십시오.
renderConfigType()
resetConfigType()>
getLocalizedLabel()
populateConfigType(JSONObject jsonObject)
isContextMandatory()
addDetailSummary()
initializeConfigType(JSONObject innerObject)
addConfigType()
getJsonFromFields()
getAllowAddingConfigType()
renderConfigType()
이 메소드는 패널과 패널에 포함된 필드를 작성합니다.
이 예에서 다음 엔트리는 필드를 구성합니다.
기본 패널은 ContentPanel 엔트리로 표시됩니다.
ContentPanel 엔트리에는 일련 번호 및 날짜요약 영역에 대한 NoLegendFieldSet 엔트리가 포함됩니다.
일련 번호 및 날짜 영역에 대한 FieldSet 엔트리에는 일련 번호 필드를 보관할 HorizontalPanel 엔트리와 날짜 필드에 대한 엔트리가 포함됩니다.
일련 번호 필드에 대한 HorizontalPanel 엔트리에는 입력할 수 있는 두 가지 정보 유형을 나타내는 RadioTextField 엔트리가 포함됩니다.
날짜 필드에 대한 HorizontalPanel 엔트리에는 DateTimePicker 엔트리가 포함됩니다.
요약 필드에 표시되는 텍스트에 대한 FieldSet 엔트리는 다른 필드 값이 변경되면 업데이트됩니다.
유효한 입력과 필드 및 단추의 활성화/비활성화를 제어하는 선택적 리스너가 이 메소드 내의 필드에 추가됩니다.
resetConfigType()
이 메소드는 모든 필드를 지우고 다시 설정합니다. 다음 작업과 함께 사용됩니다.
서비스 유효성 필터 탭의 적용 예정 테이블에 조건 추가
서비스 유효성을 추가할 때 적용 단추 클릭
컨텍스트 제거(필수 항목인 경우)
또한 예제에서 이 메소드는 계속하기 전에 컨텍스트 선택을 위해 모든 필드를 비활성화합니다. 컨텍스트는 서비스 유효성 유형에 대해 필수입니다.
getLocalizedLabel()
이 메소드는 서비스 유효성 유형에 대해 한글화된 리소스 문자열을 반환합니다.
유형 및 속성 관리 유틸리티에 등록되는 속성에 대해 디스플레이 이름을 사용하려면 getDisplayName()을 반환합니다. 수퍼 클래스에 이 값으로 설정되어 있습니다.
populateConfigType(JSONObject jsonObject)
필터 조건 또는 ServiceEffectivity 객체를 작성한 경우 필드 값이 JSONObject로 변환됩니다. 이 메소드는 JSONObject를 가져와서 필드 값을 읽은 다음 UI의 필드를 이러한 값으로 다시 채웁니다.
이 메소드는 다음 작업이 발생할 때 사용됩니다.
필터의 적용 예정 테이블에서 행을 선택할 때
필터 적용 시 필터 탭이 다시 열릴 때
저장된 필터를 적용하고 탭을 열 때
기존 ServiceEffectivity 객체를 편집할 때
JSONObject는 속성과 값을 가질 수 있지만 속성 및 값을 읽고 처리할 수 있는 사용자 정의 필터 위임이 필요합니다.
isContextMandatory()
이 메소드는 컨텍스트 필드가 선택된 서비스 유효성 유형에 대해 필수인지 여부를 지정합니다. 이 메소드를 사용하여 필드가 설정되지 않은 경우 필드를 비활성화할지 여부와 컨텍스트 제거 시 필드를 제거할지 여부를 제어할 수 있습니다.
addDetailSummary()
이 메소드는 요약 필드 세트를 작성한 경우에만 사용됩니다. 이 메소드는 필드 내의 텍스트를 업데이트합니다. 요약 필드가 필요하지 않은 경우 이 메소드를 구현할 필요가 없습니다.
initializeConfigType(JSONObject innerObject)
JSONObject가 서비스 유효성 필드를 나타낼 경우 필터에서 이 메소드는 필터 탭을 채울 때 적용 예정 테이블에서 모델을 초기화하는 데 사용됩니다.
addConfigType()
서비스 유효성 필터 탭에서 이 메소드는 모델을 작성하여 적용 예정 테이블에 추가합니다.
detail은 테이블의 열에 표시할 문자열을 나타냅니다.
예:
JSONObject latestJSON = getJsonFromFields();
String detail = valueText.getRawValue();
SETabInfoModel cm = new SETabInfoModel(getLocalizedLabel(),
ServiceEffectivityHelper.
getEffContextAsStringFromWidget(getEffContext(), true), detail, latestJSON,
getConfigTypeId());
return cm;
getJsonFromFields()
이 메소드는 필드의 값 세트로 JSONObject를 작성합니다. 이 객체는 서비스 유효성 유형마다 다르며 필터 위임에 의해 처리됩니다.
getAllowAddingConfigType()
이 메소드는 필드가 유효성 검사를 통과하지 못한 경우에 양식에서 단추를 활성화/비활성화하는 데 사용되는 allowAddingConfigType 부울 등록 정보를 반환합니다.