특성 설정
노드, 흐름, 모델, 그리고 결과물에는 접근이 가능하고, 대부분의 경우 설정이 가능한 속성이 있습니다. 속성은 일반적으로 객체의 동작이나 모양을 수정하는 데 사용됩니다. 개체 속성에 접근하고 설정하는 데 사용할 수 있는 방법은 다음 표에 요약되어 있습니다.
| 방법 | 리턴 유형 | 설명 |
|---|---|---|
p.getPropertyValue(propertyName) |
오브젝트 | 지정된 속성의 값을 반환하거나, 해당 속성이 존재하지 않으면 " None "를 반환합니다. |
p.setPropertyValue(propertyName, value) |
적용할 수 없습니다. | 명명된 속성의 값을 설정합니다. |
p.setPropertyValues(properties) |
적용할 수 없습니다. | 명명된 속성의 값을 설정합니다. 속성 맵의 각 항목은 속성 이름을 나타내는 키와 해당 속성에 할당되어야 하는 값으로 구성됩니다. |
p.getKeyedPropertyValue( propertyName, keyName) |
오브젝트 | 지정된 속성 값과 연관된 키를 반환하거나, 해당 속성이나 키가 존재하지 않으면 빈 문자열( None )을 반환합니다. |
p.setKeyedPropertyValue( propertyName, keyName,
value) |
적용할 수 없습니다. | 명명된 속성과 키의 값을 설정합니다. |
예를 들어, 다음 스크립트는 흐름에 대한 파생 노드의 값을 설정합니다
stream = modeler.script.stream()
node = stream.findByType("derive", None)
node.setPropertyValue("name_extension", "new_derive")
또는 필터 노드에서 필드를 필터링할 수도 있습니다. 이 경우, 값도 필드 이름에 따라 결정됩니다. 예를 들어,
stream = modeler.script.stream()
# Locate the filter node ...
node = stream.findByType("filter", None)
# ... and filter out the "Na" field
node.setKeyedPropertyValue("include", "Na", False)