chenqinghong
2024-05-07 3ec06a830367465068963156dcc1d8e522571c13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Quintiq file version 2.0
#parent: #root
Method CopyScenario2 (
  String datasetname,
  String newscenarioname
) as stream[Void]
{
  Description: 'Copy scenario2 from scenario1 and create extra unitavailability'
  TextBody:
  [*
    copy := this.CopyMacroPlan( datasetname, newscenarioname )                     
    run := this.Run()
    
    this->CreateScenarioAndLinkToMacroPlan( copy, newscenarioname )->( scenario )
      {
        scenario.DatasetName( newscenarioname );    
        this->( utf )
        {
           run->UI_GlobalParameter::MenuEdit( copy, DTO_GlobalParameters::Construct().UnitLowerBottleneckThreshold( 92.0 ).ToNVT() ) 
              ->| run->UI_UnitAvailability::MenuNew( copy, DTO_UnitAvailability::Construct().Start( DateTime::Construct( 2021,03, 01 ) )
                                                                                         .UnitID( "resource2" )
                                                                                           .TimeUnit("Monthly").MinimumLoadThreshold( 40.0 )
                                                                                           .NrOfUnitsOpen( 1 ).Efficiency( 1.0 ).Allocation( 1.0 ) 
                                                                                           .ShiftPatternName( "24x7").ToNVT() )
          }                                                                                
       }
      
    
    return Transaction::GetCurrentTask().OnFinish();
  *]
  InterfaceProperties { Accessibility: 'Module' }
}