| Quintiq file version 2.0 | 
| #parent: #root | 
| StaticMethod IsValidInput ( | 
|   output String feedback_o, | 
|   const SWF_ActivityBase current_activity, | 
|   String name, | 
|   const SWF_Step parent_step, | 
|   String authorization | 
| ) const declarative remote as Boolean | 
| { | 
|   Description: 'Validate input for activity' | 
|   TextBody: | 
|   [* | 
|     result := true; | 
|     isCreatingOnCompletedParent := not isnull( parent_step )  | 
|                                  and isnull( current_activity )  | 
|                                  and parent_step.IsCompleted(); | 
|                                   | 
|     isMovingToCompletedParent := not isnull( parent_step )  | 
|                                  and not isnull( current_activity )  | 
|                                  and current_activity.ParentStep() <> parent_step  | 
|                                  and parent_step.IsCompleted() | 
|      | 
|     if( name = '' ) | 
|     { | 
|       result := false; | 
|       feedback_o := SWF_Translation::TRANSLATE_ActivityMustHaveName();               | 
|     } | 
|     else if( isCreatingOnCompletedParent | 
|              or isMovingToCompletedParent ) | 
|     { | 
|       result := false; | 
|       feedback_o := SWF_Translation::TRANSLATE_StepMustOpenToCreateActivity(); | 
|     } | 
|     else if( authorization = '' | 
|              or authorization = SWF_AuthorizationBase::GetStringSelectionSeparator() ) | 
|     { | 
|       result := false; | 
|       feedback_o := SWF_Translation::TRANSLATE_ActivityMustHaveAuthorization(); | 
|     } | 
|      | 
|     return result; | 
|   *] | 
| } |