Quintiq file version 2.0 #parent: #root Method SetAttributesBeforeOnApplyData () id:Method_DialogCreateEditProduct_SetAttributesBeforeOnApplyData { #keys: '[124808.1.1739232597]' Body: [* // Set attributes on apply data data := Dialog.Data(); // Since we use commit, we need to identiy whether the parent of this product has changed // This cannot be done if we commit data.Parent() from SelectionParentProduct(), so we need to disable it // and set the attribute ParentID. Propagation will relate this child-parent relation. SelectionParentProduct.Enabled( false ); // Parent ID should be empty when the checkbox is not checked / checked but selection is empty parentproductid := ifexpr( CheckBoxHasParentProduct.Checked(), guard( SelectionParentProduct.Data().ID(), '' ), '' ); data.ParentID( parentproductid ); // Set the icon name data.IconName( LabelImageString.Text() ); // Set IsExcludedFromFulfillmentKPI isexcludedfromfulfillmentkpi := ifexpr( CheckBoxIsExcludedFromFulfillmentKPI.Enabled(), CheckBoxIsExcludedFromFulfillmentKPI.Checked(), data.IsExcludedFromFulfillmentKPI() ) data.IsExcludedFromFulfillmentKPI( isexcludedfromfulfillmentkpi ); // ADSO-47827 Set IsExcludedFromOptimization because // When the checkbox is disabled (with check) it wont register in ApplyChanges. // Manually set the boolean value here data.IsExcludedFromOptimization( CheckBoxIsExcludedFromOptimization.Checked() ); *] }