Quintiq file version 2.0 
 | 
#parent: #root 
 | 
StaticMethod ValidateInput ( 
 | 
  output String feedback, 
 | 
  MacroPlan owner, 
 | 
  ChangeLossSetting old, 
 | 
  Unit unit, 
 | 
  Product_MP product1, 
 | 
  Product_MP product2, 
 | 
  Date startdate, 
 | 
  Date enddate, 
 | 
  String number 
 | 
) as Boolean 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // 甄兰鸽 Jun-5-2024 (created) 
 | 
    feedback := ''; 
 | 
    if( [Real]number < 0 ){ 
 | 
      feedback := Translations::MP_ChangeLossSettingExcel_Import_PositiveInteger(); 
 | 
    } 
 | 
    if( isnull( unit ) or isnull( product1 ) or isnull( product2 ) or [Real]number = 0 ){ 
 | 
      feedback := Translations::MP_ChangeLossSetting_CheckNull(); 
 | 
    } 
 | 
    if( product1 = product2 ){ 
 | 
      feedback := Translations::MP_ChangeLossSetting_SameProduct(); 
 | 
    } 
 | 
    if( startdate > enddate ){ 
 | 
      feedback := Translations::MP_LibCal_Event_ValidDatePeriod(); 
 | 
    } 
 | 
    if( exists( owner, ChangeLossSetting, cls, cls <> old and cls.Unit() = unit and not ( cls.StartDate() > enddate or cls.EndDate() < startdate ) 
 | 
                and cls.ProductFirst() = product1 and cls.ProductSecond() = product2 ) ){ 
 | 
    //            and ( ( cls.ProductFirst() = product1 and cls.ProductSecond() = product2 )  
 | 
    //                  or ( cls.ProductFirst() = product2 and cls.ProductSecond() = product1 ) ) ) ){ 
 | 
      feedback := Translations::MP_ChangeLossSetting_Exist() 
 | 
    } 
 | 
    if( exists( owner, ChangeLossSetting, cls, cls <> old and cls.Unit() = unit  and not ( cls.StartDate() > enddate or cls.EndDate() < startdate ) 
 | 
                and cls.ProductFirst() = product1 and cls.ProductSecond() = product2 ) ){ 
 | 
    //            and ( ( cls.ProductFirst() = product1 and cls.ProductSecond() = product2 )  
 | 
    //                  or ( cls.ProductFirst() = product2 and cls.ProductSecond() = product1 ) ) ) ){ 
 | 
      feedback := Translations::MP_ChangeLossSetting_DateCoincide() 
 | 
    } 
 | 
     
 | 
    return feedback = ''; 
 | 
  *] 
 | 
} 
 |