Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method AddConstrainedDemandForExport ( 
 | 
  String scenario, 
 | 
  String uriitem, 
 | 
  String uristocklocation, 
 | 
  String urisalessegment, 
 | 
  Date startdate, 
 | 
  Date enddate, 
 | 
  Real quantity, 
 | 
  Real revenue 
 | 
) 
 | 
{ 
 | 
  Description: 'Verify duplicate then append ConstrainedDemand to ConstrainedDemandCache' 
 | 
  TextBody: 
 | 
  [* 
 | 
    // Use converter to get right date format 
 | 
    stringStartDate := LibSCIIntegration_Utility::DateToStringISOConverter( startdate ); 
 | 
    stringEndDate := LibSCIIntegration_Utility::DateToStringISOConverter( enddate ); 
 | 
     
 | 
    // Check if the ConstrainedDemand is already existing 
 | 
    existingConstrainedDemand := LibSCIConstrainedDemand::FindLibSCIConstrainedDemandTypeIndex( scenario, uriitem, urisalessegment, uristocklocation, enddate ); 
 | 
    if( isnull( existingConstrainedDemand ) ) 
 | 
    { 
 | 
      this.LibSCIConstrainedDemand( relnew, 
 | 
                                    UriScenario := scenario, 
 | 
                                    UriItem := uriitem, 
 | 
                                    UriSalesSegment := urisalessegment, 
 | 
                                    UriStockLocation := uristocklocation, 
 | 
                                    UriEndDate := enddate ); 
 | 
                          
 | 
      content := construct( Strings ); 
 | 
       
 | 
      content.Add( LibSCIIntegration_Utility::FormatString( scenario ) );           // scenario 
 | 
      content.Add( LibSCIIntegration_Utility::FormatString( uriitem ) );            // item 
 | 
      content.Add( LibSCIIntegration_Utility::FormatString( uristocklocation ) );   // salesSegment 
 | 
      content.Add( LibSCIIntegration_Utility::FormatString( urisalessegment ) );    // stockLocation 
 | 
      content.Add( stringStartDate );                                                      // startDate 
 | 
      content.Add( stringEndDate );                                                        // endDate 
 | 
      content.Add( [String]quantity );                                                     // quantity 
 | 
      content.Add( [String]revenue );                                                      // revenue 
 | 
       
 | 
      addedvalues := content.ToString( LibSCIIntegration_Utility::Tokenizer() ); 
 | 
      addedvalues := this.ConstrainedDemandCache() + String::NewLine() + addedvalues; 
 | 
     
 | 
      this.ConstrainedDemandCache( addedvalues ); 
 | 
    } 
 | 
  *] 
 | 
} 
 |