| Quintiq file version 2.0 | 
| #parent: #root | 
| Method ExecuteInbound ( | 
|   DSP_ServiceCommitterBase local_committer | 
| ) | 
| { | 
|   Description: | 
|   [* | 
|     Execute one or all inbound messages depending on process mode and call OnNeedExecuteInbound to inform client if additional processing is needed. | 
|     This message should be called from a Job on the client dataset that passes the interface (dataset) | 
|   *] | 
|   TextBody: | 
|   [* | 
|     dsp := this.DistributedServiceProviderBase(); | 
|      | 
|     // Set some details on the committer | 
|     local_committer.IsDetailedLogging( dsp.IsDetailedLogging() ); | 
|     local_committer.NodeId( dsp.MyNodeId() ); | 
|      | 
|     // Process the required number of messages as long as execution is succesful | 
|     currentTransactionId := guard( this.InboundMessageQueue().FirstMessage().TransactionId(), "" ); | 
|     while (   ( not this.InboundMessageQueue().IsEmpty() ) | 
|           and ( this.InboundMessageQueue().FirstMessage().TransactionId() = currentTransactionId ) | 
|           and this.ExecuteFirstInboundMessage( local_committer ) | 
|           ) {} | 
|      | 
|     // Continue processing inbound items in new transaction | 
|     this.KickInbound(); | 
|   *] | 
| } |