| Quintiq file version 2.0 | 
| #parent: #root | 
| Method EnableDisableManufacturedDate ( | 
|   Product_MP product, | 
|   StockingPoint_MP stockingpoint, | 
|   Boolean isbatchedit | 
| ) id:Method_PanelExternalSupply_EnableDisableManufacturedDate | 
| { | 
|   #keys: '[145730.1.1201001523]' | 
|   Body: | 
|   [* | 
|     //Enable or Disable Manufacture date component | 
|     data := DataHolderExternalSupply.Data(); | 
|      | 
|     pispspec := select( product, PISPSpecification, pisp, pisp.StockingPoint_MP() = stockingpoint ); | 
|      | 
|     hasshelflife := ( guard( product.HasShelfLife() | 
|                       or product.HasMaturation(), false ) ) and guard( not pispspec.IsExcludeShelfLifeAndMaturation(), true ); | 
|     dsManufaturedDate.Enabled( hasshelflife and not isbatchedit, "" ); | 
|      | 
|     // Always repopulate the manufactured date once switching products | 
|     if ( not isnull( data ) ) | 
|     { | 
|        dsManufaturedDate.Date( data.ManufacturedDate() ); | 
|     } | 
|      | 
|     // Switching products w or w/o shelf life will toggle the manufactured date data | 
|     if( not hasshelflife ) | 
|     { | 
|       dsManufaturedDate.Date( Date::MinDate() ); | 
|     } | 
|     else if( data.ManufacturedDate().IsInfinite() ) // check empty date | 
|     { | 
|       dsManufaturedDate.Date( data.Date() ); | 
|     } | 
|   *] | 
| } |