| Quintiq file version 2.0 | 
| #parent: #root | 
| StaticMethod GetMultiRowMessage ( | 
|   String message_i, | 
|   Number maxRowLength_i | 
| ) const declarative remote as String | 
| { | 
|   Description: 'Splits message on multiple rows if it exceeds maximum row length.' | 
|   TextBody: | 
|   [* | 
|     rows := construct( Strings ); | 
|        | 
|     messageLength := message_i.Length(); | 
|     currentIdx := 0; | 
|      | 
|     space := Char::Construct( 32 ); | 
|      | 
|     // Split message on multiple rows if it exceeds max row length | 
|     while( messageLength - currentIdx > maxRowLength_i ) | 
|     { | 
|       spaceIndex := message_i.FindChar( space, currentIdx + maxRowLength_i ); | 
|       newIdx := ifexpr( spaceIndex = -1, message_i.Length() - 1, spaceIndex + 1 ); | 
|       currentLineText := message_i.SubString( currentIdx, newIdx - currentIdx ); | 
|      | 
|       rows.Add( currentLineText );   | 
|       currentIdx := newIdx;  | 
|     } | 
|      | 
|     rows.Add( message_i.SubString( currentIdx, messageLength - currentIdx ) ); | 
|      | 
|     return rows.Concatenate( String::NewLine() ); | 
|   *] | 
| } |