| 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; | 
|   *] | 
| } |