Quintiq file version 2.0 
 | 
#parent: #root 
 | 
StaticMethod ValidDate ( 
 | 
  output String feedback_o, 
 | 
  MacroPlan owner, 
 | 
  DateTime startdate, 
 | 
  DateTime endtime 
 | 
) declarative remote as Boolean 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // 甄兰鸽 Jul-26-2024 (created) 
 | 
    feedback_o := ''; 
 | 
    if( startdate.IsFinite() and endtime.IsFinite() ){ 
 | 
      if( startdate > endtime ){ 
 | 
        feedback_o := Translations::MP_LibCal_Event_ValidDatePeriod(); 
 | 
      } 
 | 
      mindate      := owner.StartOfPlanning().Date(); 
 | 
      maxdate      := maxobject( owner, Period_MP, period, not period.IsHistorical(), period.StartDate() ); 
 | 
     
 | 
      if( startdate.Date() < mindate or endtime.Date() > maxdate.StartDate() ){ 
 | 
        feedback_o := Translations::MP_LibCal_Event_ValidDate(); 
 | 
      } 
 | 
     
 | 
      if( ( endtime - startdate ).Days() > 1 ){ 
 | 
        feedback_o := Translations::MP_LibCal_Event_ValidDateInterval(); 
 | 
      } 
 | 
     
 | 
    }else{ 
 | 
      feedback_o := "日期非法"; 
 | 
    } 
 | 
    return feedback_o = ''; 
 | 
  *] 
 | 
} 
 |