The signature of this Method is specified below.
Signature
LoadByNodeId (
[in]0:ExpandedNodeId Id
[out]0:Int32 Status
);
Table 71 specifies the Arguments.
Table 71 – LoadByNodeId Method Arguments
Argument |
Description |
Id |
ExpandedNodeId pointing to an instance of FileType representing a task control program or module |
Status |
0 – OK – Everything is OK 1 – E_SystemState – The system is not in correct state for this operation 2 – E_UnexpectedError – Unexpected Error during the method call 3 – E_ActiveAlarm – An Active Alarm prevents the system start 4 – E_AcknowledgeRequired – Condition needs to be acknowledged <0 – shall be used for vendor-specific errors. >0 – are reserved for errors defined by this and future standards |
The LoadByNodeId Method is called by a Client to load a program or a module into a task control.
For the storage of programs, the Server may support the Programs folder defined within the ControllerType. (see 7.18). This method can be used to load the program or module into the Task Control if the program or module itself is available in the address space (e.g. within the Programs folder). The Id input argument shall be used to identify the program in the address space. This method can be a synchronous or an asynchronous method. In case it is a synchronous method, the return output arguments may contain more information about the Success or Failure of the method call. If the system is in the Idle state when the method is called, and something goes wrong internally then instead of the IdleToReady transition, the IdleToIdle transition shall be observed by the client. If the system is already in the Ready state and the LoadByNodeId is called and fails, it is system dependent, whether the system goes back to the Idle state or remains in the Ready state. Calling LoadByNodeId in the Executing state will fail in normal circumstances.
The possible Method result codes are formally defined in Table 72. Some of these StatusCodes correspond to the ProgramId input argument.
Clients may inspect the Status output argument to determine if the program was successfully loaded or if it failed.
Table 72 – Method Result Codes (defined in Call Service)
Result Code |
Description |
Good |
The task control operation succeeded |
Bad_InternalError |
The task control operation failed because of an internal error |
Bad_ResourceUnavailable |
The Method is locked by another Client/Clientgroup |
Bad_UserAccessDenied |
The caller is not allowed to call this Method. |
Bad_NodeIdUnknown |
|
Bad_NodeIdInvalid |
The syntax of the NodeId is not valid. |
The LoadByNodeId Method representation in the AddressSpace is formally defined in Table 73.
Table 73 – LoadByNodeId Method AddressSpace definition
Attribute |
Value |
||||
BrowseName |
LoadByNodeId |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
M |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
M |
ConformanceUnits |
|||||
Rob Task Control Operation |