| Quintiq file version 2.0 | 
| #parent: #root | 
| Method GetIsUniqueCost () derived id:Method_DialogCreateEditInventoryValueAndCost_GetIsUniqueCost | 
| { | 
|   #keys: '[113694.2.555296993]' | 
|   BaseType => //DialogCreateEditAccountCost/Method_DialogCreateEditAccountCost_GetIsUniqueCost | 
|   Body: | 
|   [* | 
|     // Check if the cost is unique | 
|     data := Dialog.Data(); | 
|     /* This dialog can be open up from different place, but there is only one place we want to check the | 
|        shadow unique cost, which is open from DialogCreateEditInventoryValueAndCosts */    | 
|     shadowowner := guard( Dialog.Parent().astype( DialogCreateEditPISPSpecification ).Data(), | 
|                           null( shadow[Product_MP] ) ); | 
|      | 
|     sp := guard( DataHolderStockingPoint.Data(),  | 
|                  null( StockingPoint_MP ) ); | 
|      | 
|     isvalid := not exists( shadowowner, InventoryValueAndCost, cost, | 
|                            cost <> data, | 
|                            cost.AccountName() = SelectionAccount.BoundValue() | 
|                            and cost.StockingPoint_MP() = sp | 
|                            and cost.CostDriver() = StringSelectionCostDriver.BoundValue() | 
|                            and cost.Start() = GUIDateTimeSelectorStart.DateTime().Date() ); | 
|      | 
|     return isvalid; | 
|   *] | 
| } |