Quintiq file version 2.0 #parent: #root Method EditDisaggregationFactorFromListProductInStockingPointInPeriod ( internal[GUIComponent] parent, structured[ProductInStockingPointInPeriod] selection ) id:Method_DialogCreateEditDisaggregationFactor_EditDisaggregationFactorFromListProductInStockingPointInPeriod { #keys: '[124808.0.1994363489]' Body: [* // Edit the cost of the selection pispip from periods list isbatchedit := selection.Size() > 1; Dialog.EnableDisableComponent( isbatchedit, false ); pispip := selection.Element( 0 ); pisp := pispip.ProductInStockingPoint_MP(); // Need this for excluding itself in pre-condition primary keys checking. data := shadow( pispip.DisaggregationFactor() ); if( isnull( data ) or data.Start() <> pispip.Start().Date() ) { data := pispip.ProductInStockingPoint_MP().Product_MP().DisaggregationFactor( relshadow, ProductID := pisp.ProductID(), StockingPointID := pisp.StockingPointID(), Start := pispip.Start().Date()); } Dialog.Data( data ); // Need this so that when the pispip doesn't not have a disaggregation factor, the fields in this Dialog will not be blank. Dialog.SetDefaultValue( selection.Element( 0 ) ); result := this.DoModal( parent ); if ( result > 0 ) { DisaggregationFactor::CreateOrUpdateForProductInStockingPointInPeriods( selection, data.Factor() ); } *] }