IUANode.ChildrenRemoteRead(childVariables, timeoutMilliseconds)
호출하는 노드의 관심 하위 항목에 대한 모든 변수 목록을 반환합니다. 선택적 인수는 시간 초과 기간을 설정합니다.
IEnumerable<RemoteChildVariableValue> ChildrenRemoteRead(IEnumerable<RemoteChildVariable>childVariables, doubletimeoutMilliseconds);
인수
- childVariables(IEnumerable<RemoteChildVariable>)
- API가 호출되는 노드 내에서 상대 경로로 표현되는 관심 변수 목록입니다.
- timeoutMilliseconds(double)
- 밀리초 단위로 표시되는 시간 초과 기간으로, 이 시간이 경과하면 API가 예외를 발생시킵니다.팁: 지정하지 않을 경우 인수의 기본값은30000(30초)입니다.
반환
- IEnumerable<RemoteChildVariableValue>
- RemoteChildVariableValue클래스의 쌍으로 표현되는 관심 변수 목록입니다.
- RelativePath(string)
- 노드 내부의 변수에 상대적인 경로입니다.
- Value(UAValue)
- 변수의 값.
예제
다음 예시에서는
myNode
노드에 포함된 관심 변수가 있는 reads
목록을 반환하는 API를 보여줍니다. 두 개의 관심 변수가 myVariables
목록에 추가되었는데, 하나는 노드(Tag1
)의 직접 하위 항목이고 다른 하나는 하위 노드(NestedStructure/Tag2
) 내부에 있습니다.API가 오류를 반환하거나 설정된 시간 초과 시간에 도달하면 다음 예제에서 코드는 "
" 및 API에 대한 예상 오류 코드로 구성된 오류 메시지를 생성합니다.ChildrenRemoteRead failed:
var myVariables = new List<RemoteChildVariable>() { new RemoteChildVariable("Tag1"), new RemoteChildVariable("NestedStructure/Tag2") }; var myNode = Project.Current.Get("CommDrivers/Driver1/Station1/Tags/TagStructure1"); try { var reads = myNode.ChildrenRemoteRead(myVariables); } catch (Exception ex) { Log.Error("ChildrenRemoteRead failed: " + ex.ToString()); }
의견을 작성 부탁드립니다.