Quintiq file version 2.0
#parent: #root
Method UpdatePISPIPValues (
  structured[ProductInStockingPointInPeriodPlanning] pispip,
  structured[internal[MatrixEditorCell]] newvalue
) id:Method_FormProductPlanningMatrix_UpdatePISPIPValues
{
  #keys: '[133706.0.596202913]'
  Body:
  [*
    // Update values of PISPIP attributes based on values entered              
    isSupply := newvalue.Element( 0 ).AttributePath() 
                = attribute( ProductInStockingPointInPeriod, DisplaySupplyQuantity ).Name();
    
    if( isSupply )
    {
      //Smart plan with user qty   
      /* User [Real] instead of ApplicationMacroPlanner.FormatStringToReal
         MatrixEditor will do the format internaly to match the server locale
         and it only allow Real for cell bind to Real attribute */
      totalsupplyuser := [Real]newvalue.Element( 0 ).NewValue();
     
      
      MacroPlan.RunSmartPlanFromPlanningMatrix( pispip, totalsupplyuser, ScenarioManager );
      if ( not MacroPlan.GlobalParameters_MP().RunSmartPlanSynchronously() ) 
      {
        Application.RemoveHistory();
      }
    }
  *]
}
