Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method ExecuteEDIBroker ( 
 | 
  String brokerID_i, 
 | 
  Boolean pingFirst_i 
 | 
) 
 | 
{ 
 | 
  Description: 
 | 
  [* 
 | 
    Get the EDI-broker of which the ID is provided and call its Execute-method. 
 | 
    If applicable ping the database first to see if it can be reached. 
 | 
    NOTE: only EDI-brokers that are used for a database can be retrieved using this method. 
 | 
    For import/export using XLS methods DoImportFromXLS and DoExportToXLS must be used. 
 | 
  *] 
 | 
  TextBody: 
 | 
  [* 
 | 
    result := ""; 
 | 
     
 | 
    // See if the database can be reached (if applicable). 
 | 
    if( pingFirst_i ) 
 | 
    { 
 | 
      result := this.CheckDatabaseConnection( brokerID_i ); 
 | 
    } 
 | 
     
 | 
    if( result = "" )  // OK 
 | 
    { 
 | 
      // Use the method that must be overridden and implemented at the Implementation Level to get the EDI-broker. 
 | 
      ediBroker := this.DoGetEDIBrokerForDB( brokerID_i ); 
 | 
       
 | 
      if( not isnull( ediBroker ) ) 
 | 
      { 
 | 
        ediBroker.Execute(); 
 | 
      } 
 | 
      else 
 | 
      { 
 | 
        LibDIF_Util::Error( this.DefinitionName() + ".DoGetEDIBrokerForDB() is not implemented for EDI-broker | BrokerID = '" + brokerID_i + "'" ); 
 | 
      } 
 | 
    } 
 | 
    else 
 | 
    { 
 | 
      LibDIF_Util::Error( result );  // Database cannot be reached 
 | 
    } 
 | 
  *] 
 | 
} 
 |