| Quintiq file version 2.0 | 
| #parent: #root | 
| StaticMethod CheckIsUnique ( | 
|   output String feedback_o, | 
|   output String sanitycheckfeedback_o, | 
|   Units units, | 
|   TransitionType_MP transitionType, | 
|   String fromCampaignType, | 
|   String toCampaignType | 
| ) declarative remote as Boolean | 
| { | 
|   Description: 'Precondition to check transition type is unique.' | 
|   TextBody: | 
|   [* | 
|     // Check if transition type already exist | 
|     isDuplicated := exists( units, Elements.TransitionType_MP, tt, | 
|                             isnull( transitionType ) or  tt <> transitionType, | 
|                             tt.FromCampaignTypeName() = fromCampaignType and tt.ToCampaignTypeName() = toCampaignType ) ; | 
|     if( isDuplicated ) | 
|     { | 
|       feedback_o := Translations::MP_TransitionType_IsDefined( fromCampaignType, toCampaignType ); | 
|       sanitycheckfeedback_o := SanityCheckCategoryLevel::GetSanityCheckCategoryDataWarning(); | 
|     } | 
|     return not isDuplicated; | 
|   *] | 
| } |