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
Quintiq file version 2.0
#parent: #root
Method GetHasValidRestriction (
  output Strings feedback_o,
  output Strings sanitycheckfeedback_o
) declarative remote as Boolean
{
  Description: 'Check if this sales demand of higher product level can be supply by at least one of the product leaf.'
  TextBody:
  [*
    // Vincent Sep-2-2016 (created)
    
    isvalid := this.IsLeaf() 
               or exists( this.Product_MP().GetLeaves(),
                          Elements, 
                          product,
                          this.GetIsProductAllowed( product )
                          );
                       
    if( not isnull( feedback_o ) and not isvalid )
    {
      instance := SalesDemandBase::GetInstanceText( this.Product_MP(),
                                                this.SalesSegment_MP(),
                                                this.StartDate(),
                                                this.EndDate(),
                                                this.GetTypeName() );
    
      feedback_o.Add( SanityCheckMessage::GetFormattedMessage( instance, Translations::MP_SalesDemand_InvalidRestriction( this.GetTypeName() ) ) );
      sanitycheckfeedback_o.Add( SanityCheckCategoryLevel::GetSanityCheckCategoryDataIssue() );
    }
    
    return isvalid;
  *]
}