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