Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method OnOK () id:Method_DialogCreateEditProduct_OnOK #extension 
 | 
{ 
 | 
  Body: 
 | 
  [* 
 | 
    // onOK for ProductDialog 
 | 
    // When the user clicks ok,        
 | 
    // we either create or edit the data 
 | 
    this.ApplyChanges(); 
 | 
    this.SetAttributeAfterApplyData(); 
 | 
     
 | 
    data := DataHolderDialogData.Data(); 
 | 
     
 | 
    if( isnull( data.WrappedInstance() ) ) // New 
 | 
    { 
 | 
      // When create product, parent relation must be null (as server method has logic to detect parent change using this relation) 
 | 
      data.Parent( relflush ); 
 | 
      data.Commit(); 
 | 
      DataHolderForm.Data().ListProduct().SelectByKey( data.WrappedInstance().Key() ); 
 | 
    }  
 | 
    else 
 | 
    {  
 | 
      supplyChainView := select( MacroPlan, ViewBase.astype( SupplyChainView ), scv, true );  //TODO!! handling of current SupplyChainView 
 | 
       
 | 
      Product_MP::Update(  DataHolderDialogDatas.Data() 
 | 
                          ,CheckBoxBatchEditParent.Checked() 
 | 
                          ,CheckBoxBatchEditUOM.Checked() 
 | 
                          ,CheckBoxBatchEditShelfLife.Checked() 
 | 
                          ,CheckBoxBatchEditMaturation.Checked()  
 | 
                          ,CheckBoxBatchEditByProduct.Checked() 
 | 
                          ,CheckBoxBatchEditExcludeFromOptimizer.Checked() 
 | 
                          ,CheckboxBatchEditExcludeFromFulfillmentKPI.Checked() 
 | 
                          ,CheckBoxBatchEditNote.Checked() 
 | 
                          ,EditFieldID.Text() 
 | 
                          ,EditFieldName.Text() 
 | 
                          ,guard( selParentProduct.Data(), null(  Product_MP ) ) 
 | 
                          ,guard( DropDownListUOM.Data(), null( UnitOfMeasure_MP ) ) 
 | 
                          ,EditFieldGeneration.Text() 
 | 
                          ,EditFieldMQBMLB.Text() 
 | 
                          ,EditFieldPower.Text() 
 | 
                          ,data.HasShelfLife() 
 | 
                          ,data.ShelfLife() 
 | 
                          ,data.HasMaturation() 
 | 
                          ,data.MaturationDays()   
 | 
                          ,data.IsByProduct() 
 | 
                          ,data.IsExcludedFromOptimization() 
 | 
                          ,data.IsPlannedAfterOptimization() 
 | 
                          ,ifexpr( CheckboxIsExcludedFromFulfillmentKPI.Enabled(),  
 | 
                                   data.IsDerivedExcludeFromFulfillmentKPI(),  
 | 
                                   data.IsExcludedFromFulfillmentKPI() ) 
 | 
                          ,data.Notes() 
 | 
                          ,supplyChainView ); 
 | 
    } 
 | 
     
 | 
    this.Close(); 
 | 
  *] 
 | 
} 
 |