| Quintiq file version 2.0 | 
| #parent: #root | 
| Method NewInventorySpecification ( | 
|   internal[GUIComponent] parent, | 
|   ProductInStockingPointInPeriod pispip | 
| ) as InventorySpecification id:Method_DialogCreateEditInventorySpecification_NewInventorySpecification | 
| { | 
|   #keys: '[105706.0.1322690604]' | 
|   Body: | 
|   [* | 
|     // New inventory specification | 
|      | 
|     Dialog.ShowHideComponentForBatchEdit( false, true ); | 
|      | 
|     stockingpoint := guard( pispip.ProductInStockingPoint_MP().StockingPoint_MP(), null( StockingPoint_MP ) ); | 
|     owner := guard( pispip.ProductInStockingPoint_MP().Product_MP(), InventorySpecification::GetDefaultOwner( MacroPlan, stockingpoint ) ); | 
|      | 
|     // Start | 
|     pispipstart := guard( pispip.Start().Date(), MacroPlan.StartOfPlanning().Date() ); | 
|     data := owner.InventorySpecification( relshadow, StockingPointID := stockingpoint.ID(), ProductID := owner.ID(), Start := pispipstart ); | 
|     data.StockingPoint_MP( relset, stockingpoint ); | 
|      | 
|     Dialog.Data( data ); | 
|     Dialog.SetDefaultValue( pispip ); | 
|      | 
|     result := Dialog.DoModal( parent ); | 
|     newobj := null( InventorySpecification ); | 
|      | 
|     if( result > 0 ) | 
|     { | 
|       newobj := InventorySpecification::Create( data.Product_MP(), | 
|                                                 data.StockingPoint_MP(), | 
|                                                 data.Start(), | 
|                                                 false, | 
|                                                 0.0, | 
|                                                 0.0, | 
|                                                 data.HasMinLevelInDays(), | 
|                                                 data.MinLevelInDays(), | 
|                                                 data.MinLevelInQuantity(), | 
|                                                 data.HasMaxLevel(), | 
|                                                 data.HasMaxLevelInDays(), | 
|                                                 data.MaxLevelInDays(), | 
|                                                 data.MaxLevelInQuantity(), | 
|                                                 false, | 
|                                                 false ); | 
|     } | 
|      | 
|     return newobj; | 
|   *] | 
| } |