Quintiq file version 2.0
Component MatrixEditorProductPlanning id:MatrixEditorProductPlanning_679
{
  #keys: '[412960.0.220270414]'
  BaseType: 'WebMatrixEditor'
  Children:
  [
    Component MatrixEditorCellPISPIP
    {
      #keys: '[412960.0.220270415]'
      BaseType: 'WebMatrixEditorCell'
      Children:
      [
        Component DataExtractorPISPIP
        {
          #keys: '[412960.0.220270416]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'structured[ProductInStockingPoint_MP]'
            FixedFilter: 'not object.ProductInStockingPoint_MP().IsSystem() and object.ProductInStockingPoint_MP().IsLeaf()'
            Source: 'ApplicationMacroPlanner.DataHolderPISP'
            Taborder: 0
            Transformation: 'Elements.ProductInStockingPointInPeriod'
          ]
        }
      ]
      Properties:
      [
        Attributes: 'DisplaySupplyQuantity;DependentDemandAndSalesDemandQuantity;TargetInventoryLevel;InventoryLevelEnd;StockLevelInDays'
        Column: 'Period_MP'
        Row: 'ProductInStockingPoint_MP'
        Taborder: 2
      ]
    }
    Component MatrixEditorRowsPISP
    {
      #keys: '[412960.0.220270417]'
      BaseType: 'WebMatrixEditorHeaderLevel'
      Children:
      [
        Component DataExtractorPISP
        {
          #keys: '[412960.0.220270418]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'CustomerOrder'
            ExtractionMode: 'Selected'
            FixedFilter: 'not object.IsSystem() and object.IsLeaf()'
            Source: 'ListOrderLock'
            Taborder: 0
            Transformation: 'ProductInStockingPoint_MP'
          ]
        }
      ]
      Properties:
      [
        Legend: 'Name'
        SortCriteria: 'Product_MP.DisplayIndex;Name'
        Taborder: 0
      ]
    }
    Component MatrixEditorColumnsPeriod
    {
      #keys: '[412960.0.220270419]'
      BaseType: 'WebMatrixEditorHeaderLevel'
      Children:
      [
        Component DataExtractorPeriod
        {
          #keys: '[412960.0.220270420]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'structured[Period_MP]'
            Source: 'ApplicationMacroPlanner.DataHolderPeriods'
            Taborder: 0
            Transformation: 'Elements'
          ]
        }
      ]
      Properties:
      [
        Legend: 'Start'
        SortCriteria: 'Start'
        Taborder: 1
      ]
    }
    Component UserConfigurableInformationMatrixEditorProductPlanning
    {
      #keys: '[412960.0.220270421]'
      BaseType: 'WebUserConfigurableInformation'
      Properties:
      [
        Identifier: 'Cell: PISPIP'
        ObjectType: 'ProductInStockingPointInPeriod'
        Taborder: 3
        Text: 'Test text'
        Tooltip: '<table><tr><td><b>SYNONYM(object.InventoryLevelEnd())</b></td><td>VALUE( MacroPlan::GetDisplayValue( object.InventoryLevelEnd() ) )</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td><b>Inventory holding cost </b></td><td>VALUE(object.TotalBaseInventoryHoldingCost())VALUE( \' \'+ object.ProductInStockingPoint_MP().StockingPoint_MP().Currency_MP().Symbol() )</td><td>VALUE( \'[\' + object.TotalBaseInventoryHoldingCostPerQuantity().Format(\'N(Dec(2))\') )</td><td>VALUE( object.ProductInStockingPoint_MP().StockingPoint_MP().Currency_MP().Symbol()  + \'/\' + object.ProductInStockingPoint_MP().UnitOfMeasure_MP().Name() + \']\' )  </td></tr><tr><td><b>SYNONYM(object.StockLevelInDays())</b></td><td>VALUE(object.StockLevelInDays)</td><td>day</td></tr><tr><td><b>Total supply </b></td><td>VALUE(object.SupplyQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Total demand </b></td><td>VALUE(object.GetDemandQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr><br><tr><td><b>Inventory start </b></td><td>VALUE( guard( MacroPlan::GetDisplayValue( object.InventoryLevelStartPISPIP().InventoryLevelEnd() ), 0.0 ) )</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Sales demand </b></td><td>VALUE(object.SalesDemandQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr><tr><td><b>New supply </b></td><td>VALUE(object.NewSupplyQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Dependent demand </b></td><td>VALUE(object.DependentDemandQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr><tr><td><b>Inventory supply </b></td><td>VALUE(object.InventorySupplyQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Fulfilled demand </b></td><td>VALUE(object.FulfilledDemandQuantity() )</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr></table><hr>VALUE( object.ImgHasFeedback() ) VALUE(  ifexpr( object.HasFeedback() , " Feedback message exist. Refer to Supply Planning matrix for details."  , "" )  )'
      ]
    }
    #child: matrixEditorActionBarPageProductPlanning_1
    #child: matrixeditorContextMenuProductPlanning_1
  ]
  Properties:
  [
    AllowAttributeConfiguration: true
    AllowMultipleAttributes: true
    Columns: 'MatrixEditorColumnsPeriod'
    ContextMenu: 'matrixeditorContextMenuProductPlanning'
    Rows: 'MatrixEditorRowsPISP'
    ShowEditability: true
    ShowSingleAttribute: true
    Taborder: 0
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick
    {
      #keys: '[412960.0.220270401]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[6763.0.7990336]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebButton_OnClick
    {
      #keys: '[412960.0.220270400]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[6763.0.7990409]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick_119
    {
      #keys: '[412960.0.220270399]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selectedrows
        {
          #keys: '[6763.0.7990482]'
          Binding: 'this.SelectedRows()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebButton_OnClick_720
    {
      #keys: '[412960.0.220270398]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selectedrows
        {
          #keys: '[6763.0.7990555]'
          Binding: 'this.SelectedRows()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick_640
    {
      #keys: '[412960.0.220270397]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selectedcolumns
        {
          #keys: '[6763.0.7990628]'
          Binding: 'this.SelectedColumns()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebButton_OnClick_582
    {
      #keys: '[412960.0.220270396]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selectedcolumns
        {
          #keys: '[6763.0.7990701]'
          Binding: 'this.SelectedColumns()'
        }
      ]
    }
  ]
}
