The StartProductionOrder Method starts a production order at the machine module.

The signature of this Method is specified below. Table 35 specifies the Arguments representation.

Signature

StartProductionOrder (

[in] ProductionOrderType POToStart,

[in] 0:String[] SourceMaterialLoadingPointIDs,

[in] 0:String[] DestinationMaterialOutputPointIDs,

[out] MethodExecutionFeedbackTypeExecutionFeedback);

Table 35 – StartProductionOrder Method Arguments

Argument

Description

POToStart

The production order to be started.

SourceMaterialLoadingPointIDs

The list of material loading points that are going to be used by the production order to be started.

DestinationMaterialOutputPointIDs

The list of material output points that are going to be used by the production order to be started.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

When no production order is in execution and StateMachine is implemented, invoking the method causes the machine module to start the execution of a production order present in AssignedProductionOrders[]. The POToStart argument is copied to ProductionOrder and is removed from AssignedProductionOrders[].

The StartProductionOrder method can be invoked for infeed machine modules (i.e. machine modules without an active upstream connected machine module and machines modules with all MaterialPoints with PropagatesProductionOrder False) and for machine modules with AutoStart false. When AutoStart is True the Executable property of the method is set to False and when the method is invoked, the status code Bad_NotSupported is returned.

The StartProductionOrder method requires input arguments specifying the loading point(s) where the input materials will be loaded and the output point(s) where the output material will be collected.

When the StateMachine is in state Assigned, the successful execution of the method shall cause a transition to state Starting. In case the method execution terminates unsuccessfully, no transition shall occur.

When the method is invoked in any other state, the method property Executable is False and when the method is invoked, the status code Bad_NotSupported is returned.

When no production order is in execution and StateMachine is not implemented, invoking the method causes the machine module to start the execution of the production order.

The underlying system will be responsible to verify that the production order information is complete and will otherwise terminate the method execution with a negative execution feedback.