Quintiq file version 2.0
|
#parent: #root
|
Method EditInventorySpecificationFromListPISPIP (
|
internal[GUIComponent] parent,
|
structured[ProductInStockingPointInPeriod] selection
|
) id:Method_DialogCreateEditInventorySpecification_EditInventorySpecificationFromListPISPIP
|
{
|
#keys: '[105706.1.245085157]'
|
Body:
|
[*
|
// Edit the inventory specification of the selection pispip from periods list
|
pispip := selection.Element( 0 );
|
isbatchedit := selection.Size() > 1;
|
Dialog.ShowHideComponentForBatchEdit( isbatchedit, false );
|
|
// Need this for excluding itself in pre-condition primary keys checking.
|
data := shadow( pispip.InventorySpecification() );
|
|
// In case selection.Element( 0 ) doesn't bind to any inventory specification, calling SetDefaultValue method will return null error.
|
// Check start in case of editing from PISPIP later than the existing IS, the Start date will be off if we pass in existing IS
|
if( isnull( data )
|
or data.Start() <> pispip.Start().Date() )
|
{
|
pisp := pispip.ProductInStockingPoint_MP();
|
data := pisp.Product_MP().InventorySpecification( relshadow, ProductID := pisp.ProductID(), StockingPointID := pisp.StockingPointID(), Start := pispip.Start().Date() );
|
data.StockingPoint_MP( relset, pisp.StockingPoint_MP() );
|
}
|
|
Dialog.Data( data );
|
|
// Need this so that when the pispip doesn't not have a inventory specification, the fields in this Dialog will not be blank.
|
Dialog.SetDefaultValue( selection.Element( 0 ) );
|
|
result := this.DoModal( parent );
|
|
if ( result > 0 )
|
{
|
InventorySpecification::CreateOrUpdateForProductInStockingPointInPeriods( selection,
|
false,
|
false,
|
0.0,
|
0.0,
|
not isbatchedit or CheckBoxBatchEditMinLevel.Checked(),
|
data.HasMinLevelInDays(),
|
data.MinLevelInDays(),
|
data.MinLevelInQuantity(),
|
not isbatchedit or CheckBoxBatchEditMaxLevel.Checked(),
|
data.HasMaxLevel(),
|
data.HasMaxLevelInDays(),
|
data.MaxLevelInDays(),
|
data.MaxLevelInQuantity(),
|
false );
|
|
}
|
*]
|
}
|