Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method GetHasValidEffectiveRecipe ( 
 | 
  output Strings feedback_o, 
 | 
  output Strings sanitycheckfeedback_o 
 | 
) declarative remote as Boolean 
 | 
{ 
 | 
  Description: "Indicate if PISPIP's product has recipe assigned with an effective date, then for all PISPIP there should be an effective recipe" 
 | 
  TextBody: 
 | 
  [* 
 | 
    product := this.ProductInStockingPoint_MP().Product_MP(); 
 | 
    isvalid := not product.HasRecipe() 
 | 
               or not isnull( this.RecipeWithEffectiveDate() ) 
 | 
     
 | 
    if( not isnull( feedback_o ) and not isvalid ) 
 | 
    { 
 | 
      instance := ProductInStockingPointInPeriod::GetInstanceText( this ); 
 | 
      message := Translations::MP_ProductInStockingPointInPeriod_ViolateHasValidEffectiveRecipe(); 
 | 
     
 | 
      feedback_o.Add( SanityCheckMessage::GetFormattedMessage( instance, message ) ); 
 | 
      sanitycheckfeedback_o.Add( SanityCheckCategoryLevel::GetSanityCheckCategoryDataWarning() ); 
 | 
    } 
 | 
     
 | 
     
 | 
    return isvalid; 
 | 
  *] 
 | 
} 
 |