admin
2025-01-22 7e31442f0e9b07764e9c6a9680d3d4aeba5fe1de
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Quintiq file version 2.0
#parent: #root
StaticMethod ValidateInput (
  output String feedback_o,
  Number timelimit,
  Real absolutegap,
  Real relativegap,
  Real relativegoalslack,
  String solversettinggroupname,
  Boolean usehierarchicalabstol,
  Boolean usehierarchicalreltol,
  Real hierarchicalabstol,
  Real hierarchicalreltol
) declarative remote as Boolean
{
  Description: 'Validate input from the dialog'
  TextBody:
  [*
    // Validate input of StrategyLevel
    feedback_o := '';
    
    // Check if time limit is not less than zero
    if( timelimit < 0 )
    {
      feedback_o := Translations::MP_StrategyLevel_ValidateInput_IsNegativeTimeLimit( timelimit );
    }
    // Check if absolute gap is not less than zero
    else if( absolutegap < 0 )
    {
      feedback_o := Translations::MP_StrategyLevel_ValidateInput_IsNegativeAbsoluteGap( absolutegap );
    }
    // Check if relative gap is not less than zero
    else if( relativegap < 0 )
    {
      feedback_o := Translations::MP_StrategyLevel_ValidateInput_IsNegativeRelativeGap( relativegap );
    }
    // Check if relative goal slack is not less than zero
    else if( relativegoalslack < 0 )
    {
      feedback_o := Translations::MP_StrategyLevel_ValidateInput_IsNegativeRelativeGoalSlack( relativegoalslack );
    }
    // Check if solver setting group name is entered
    else if( solversettinggroupname = "" )
    {
      feedback_o := Translations::MP_StrategyLevel_ValidateInput_IsNullSolverSettingGroup();
    }
    // Check if hierarchical absolute tolerance is not less than zero when used
    else if ( usehierarchicalabstol and hierarchicalabstol < 0 ) 
    {
      feedback_o := Translations::MP_StrategyLevel_ValidateInput_HierarchicalAbsTol( hierarchicalabstol );   
    }
    // Check if hierarchical relative tolerance is not less than zero when used
    else if ( usehierarchicalreltol and hierarchicalreltol < 0 ) 
    {
      feedback_o := Translations::MP_StrategyLevel_ValidateInput_HierarchicalRelTol( hierarchicalreltol ); 
    }
    return feedback_o = '';
  *]
}