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(); 
 | 
  *] 
 | 
} 
 |