| Quintiq file version 2.0 | 
| #parent: #root | 
| Method MPSyncGlobalParameter ( | 
|   Boolean isoverwitemanualconfig, | 
|   IOGlobalParameter ioglobalparameter | 
| ) | 
| { | 
|   Description: 'Synchronization of GlobalParameter_MP from MPSync' | 
|   TextBody: | 
|   [* | 
|     // Get GlobalParameters_MP | 
|     objectinstance := this.GlobalParameters_MP(); | 
|      | 
|     // If no existing GlobalParameters_MP is found, create one | 
|     if( isnull( objectinstance ) ) | 
|     { | 
|       objectinstance := GlobalParameters_MP::Create( this, | 
|                                                      ioglobalparameter.AbsoluteLowerLimit(), | 
|                                                      ioglobalparameter.AbsoluteUpperLimit(), | 
|                                                      ioglobalparameter.AutoScalingFrequency(), | 
|                                                      ioglobalparameter.BalanceTolerance(), | 
|                                                      ioglobalparameter.BaseCurrency(), | 
|                                                      ioglobalparameter.BiasTolerance(), | 
|                                                      ioglobalparameter.BottleneckTolerance(), | 
|                                                      ioglobalparameter.BottleneckWindowEnd(), | 
|                                                      ioglobalparameter.BottleneckWindowStart(), | 
|                                                      ioglobalparameter.DefaultAbsoluteValueForInventoryHolding(),  | 
|                                                      ioglobalparameter.DefaultAccountForInventoryHolding(), | 
|                                                      ioglobalparameter.DefaultAllocation(), | 
|                                                      ioglobalparameter.DefaultAnnualInterestRateForInventoryHolding(), | 
|                                                      ioglobalparameter.DefaultEfficiency(), | 
|                                                      ioglobalparameter.DefaultMaxCapacityForStockingPoint(), | 
|                                                      ioglobalparameter.DefaultMaxCapacityPerDayForUnit(), | 
|                                                      ioglobalparameter.DefaultMaxLoadPercentage(), | 
|                                                      ioglobalparameter.DefaultMinCapacityPerDayForUnit(), | 
|                                                      ioglobalparameter.DefaultNumberOfPeriodsForAvgDemand(), | 
|                                                      ioglobalparameter.DefaultOperationInputOutputQuantity(), | 
|                                                      ioglobalparameter.DefaultServiceLevel(), | 
|                                                      ioglobalparameter.DefaultShiftPatternName(), | 
|                                                      ioglobalparameter.DefaultSmartPlanStrategy(), | 
|                                                      ioglobalparameter.DefaultUnitOfMeasure(), | 
|                                                      ioglobalparameter.DisaggregationRatio(), | 
|                                                      ioglobalparameter.DurationLotsizeHorizon(), | 
|                                                      ioglobalparameter.DurationInventoryMixBalancingCheck(), | 
|                                                      ioglobalparameter.EndOfKPIHorizon(), | 
|                                                      ioglobalparameter.HasAbsoluteValueForInventoryHolding(), | 
|                                                      ioglobalparameter.HasDefaultInventoryHoldingCost(), | 
|                                                      ioglobalparameter.IsPeggingRunAfterOptimization(), | 
|                                                      ioglobalparameter.LotSizeTolerance(), | 
|                                                      ioglobalparameter.MinimumSalesDemandQtyThreshold(), | 
|                                                      ioglobalparameter.NoiseThresholdOptimizerOutput(), | 
|                                                      ioglobalparameter.NumberOfDecimals(), | 
|                                                      ioglobalparameter.NumberOfPeriodsInWindow(), | 
|                                                      ioglobalparameter.NumberOfPeriodsPerSlide(), | 
|                                                      ioglobalparameter.NumberOfPeriodsSmartPlan(), | 
|                                                      ioglobalparameter.OutlierTolerance(), | 
|                                                      ioglobalparameter.PeriodTaskValidity(), | 
|                                                      ioglobalparameter.IsRunOptimizerSynchronously(), | 
|                                                      ioglobalparameter.SanityCheckLimit(), | 
|                                                      ioglobalparameter.StartOfKPIHorizon(), | 
|                                                      ioglobalparameter.StockingPointBottleneckThreshold(), | 
|                                                      ioglobalparameter.PeriodSpecificationForUnitActual(), | 
|                                                      ioglobalparameter.UnitLowerBottleneckThreshold(), | 
|                                                      ioglobalparameter.UnitUpperBottleneckThreshold(), | 
|                                                      ioglobalparameter.UseDefaultDisplayIndex(), | 
|                                                      ioglobalparameter.UseSlidingWindowsApproach(), | 
|                                                      ioglobalparameter.UseAuditTrail(), | 
|                                                      ioglobalparameter.UpdateKPIHorizonAtPeriodRoll(), | 
|                                                      ioglobalparameter.LaneLeadTimeLogic(), | 
|                                                      ioglobalparameter.OperationLeadTimeLogic(), | 
|                                                      ioglobalparameter.ChangeoverTime(), | 
|                                                      ioglobalparameter.MinToKeepTripInUsedPercentage(), | 
|                                                      ioglobalparameter.IsUsableIfExpiredWithinPeriod(), | 
|                                                      ioglobalparameter.IsUsableIfMatureWithinPeriod(), | 
|                                                      ioglobalparameter.RunSmartPlanSynchronously(), | 
|                                                      ioglobalparameter.DefaultDemandUncertainty(), | 
|                                                      ioglobalparameter.UseSingleEchelon(), | 
|                                                      true, | 
|                                                      ioglobalparameter.CO2ProcessUoM(), | 
|                                                      ioglobalparameter.CO2UoM(), | 
|                                                      ioglobalparameter.ForecastNettingRule() | 
|                                                    ); | 
|     } | 
|     // Else if the GlobalParameters_MP is not manually configured or the imported instance should overwrite manual configuration, | 
|     // update the existing GlobalParameters_MP | 
|     else if( not objectinstance.IsManuallyConfigured() or isoverwitemanualconfig ) | 
|     { | 
|       // Update GlobalParameters_MP | 
|       objectinstance.Update( ioglobalparameter.AbsoluteLowerLimit(), | 
|                              ioglobalparameter.AbsoluteUpperLimit(), | 
|                              ioglobalparameter.AutoScalingFrequency(), | 
|                              ioglobalparameter.BalanceTolerance(), | 
|                              ioglobalparameter.BaseCurrency(), | 
|                              ioglobalparameter.BiasTolerance(), | 
|                              ioglobalparameter.BottleneckTolerance(), | 
|                              ioglobalparameter.BottleneckWindowEnd(), | 
|                              ioglobalparameter.BottleneckWindowStart(), | 
|                              ioglobalparameter.DefaultAbsoluteValueForInventoryHolding(),  | 
|                              ioglobalparameter.DefaultAccountForInventoryHolding(), | 
|                              ioglobalparameter.DefaultAllocation(), | 
|                              ioglobalparameter.DefaultAnnualInterestRateForInventoryHolding(), | 
|                              ioglobalparameter.DefaultEfficiency(), | 
|                              ioglobalparameter.DefaultMaxCapacityForStockingPoint(), | 
|                              ioglobalparameter.DefaultMaxCapacityPerDayForUnit(), | 
|                              ioglobalparameter.DefaultMaxLoadPercentage(), | 
|                              ioglobalparameter.DefaultMinCapacityPerDayForUnit(), | 
|                              ioglobalparameter.DefaultNumberOfPeriodsForAvgDemand(), | 
|                              ioglobalparameter.DefaultOperationInputOutputQuantity(), | 
|                              ioglobalparameter.DefaultServiceLevel(), | 
|                              ioglobalparameter.DefaultShiftPatternName(), | 
|                              ioglobalparameter.DefaultSmartPlanStrategy(), | 
|                              ioglobalparameter.DefaultUnitOfMeasure(), | 
|                              ioglobalparameter.DisaggregationRatio(), | 
|                              ioglobalparameter.DurationLotsizeHorizon(), | 
|                              ioglobalparameter.DurationInventoryMixBalancingCheck(), | 
|                              ioglobalparameter.EndOfKPIHorizon(), | 
|                              ioglobalparameter.HasAbsoluteValueForInventoryHolding(), | 
|                              ioglobalparameter.HasDefaultInventoryHoldingCost(), | 
|                              ioglobalparameter.IsPeggingRunAfterOptimization(), | 
|                              ioglobalparameter.LotSizeTolerance(), | 
|                              ioglobalparameter.MinimumSalesDemandQtyThreshold(), | 
|                              ioglobalparameter.NoiseThresholdOptimizerOutput(), | 
|                              ioglobalparameter.NumberOfDecimals(), | 
|                              ioglobalparameter.NumberOfPeriodsInWindow(), | 
|                              ioglobalparameter.NumberOfPeriodsPerSlide(), | 
|                              ioglobalparameter.NumberOfPeriodsSmartPlan(), | 
|                              ioglobalparameter.OutlierTolerance(), | 
|                              ioglobalparameter.PeriodTaskValidity(), | 
|                              ioglobalparameter.IsRunOptimizerSynchronously(), | 
|                              ioglobalparameter.SanityCheckLimit(), | 
|                              ioglobalparameter.StartOfKPIHorizon(), | 
|                              ioglobalparameter.StockingPointBottleneckThreshold(), | 
|                              ioglobalparameter.PeriodSpecificationForUnitActual(), | 
|                              ioglobalparameter.UnitLowerBottleneckThreshold(), | 
|                              ioglobalparameter.UnitUpperBottleneckThreshold(), | 
|                              ioglobalparameter.UseDefaultDisplayIndex(), | 
|                              ioglobalparameter.UseSlidingWindowsApproach(), | 
|                              ioglobalparameter.UseAuditTrail(), | 
|                              ioglobalparameter.UpdateKPIHorizonAtPeriodRoll(), | 
|                              ioglobalparameter.LaneLeadTimeLogic(), | 
|                              ioglobalparameter.OperationLeadTimeLogic(), | 
|                              ioglobalparameter.ChangeoverTime(), | 
|                              ioglobalparameter.MinToKeepTripInUsedPercentage(), | 
|                              ioglobalparameter.IsUsableIfExpiredWithinPeriod(), | 
|                              ioglobalparameter.IsUsableIfMatureWithinPeriod(), | 
|                              ioglobalparameter.RunSmartPlanSynchronously(), | 
|                              ioglobalparameter.DefaultDemandUncertainty(), | 
|                              ioglobalparameter.UseSingleEchelon(), | 
|                              true, | 
|                              ioglobalparameter.CO2ProcessUoM(), | 
|                              ioglobalparameter.CO2UoM(), | 
|                              ioglobalparameter.ForecastNettingRule() | 
|                            );  | 
|     } | 
|      | 
|     // If GlobalParameters_MP is found or created, execute the commit logic method | 
|     if( not isnull( objectinstance ) ) | 
|     { | 
|       objectinstance.CustomUpdate( ioglobalparameter, isoverwitemanualconfig ); | 
|       objectinstance.UpdateCommitLogic(); | 
|     } | 
|   *] | 
| } |