Quintiq file version 2.0
|
#parent: #root
|
StaticMethod AppendFeedback (
|
String extraFeedback_i,
|
output String feedback_o
|
) const declarative remote as Boolean
|
{
|
TextBody:
|
[*
|
result := true;
|
|
currentLenght := feedback_o.Length();
|
|
if ( extraFeedback_i.Length() > 0 ) // Add additional feedback message
|
{
|
oterm := SCK_FeedbackBuilder::FeedbackOverflowTerminator();
|
olen := oterm.Length();
|
|
if ( currentLenght < olen or feedback_o.SubString( currentLenght - olen, olen ) <> oterm )
|
{
|
add := "";
|
// Process if within Max Lenght, else will add Terminator
|
if( feedback_o.Length() + extraFeedback_i.Length() + 1 < SCK_FeedbackBuilder::GetMaxFeedbackLength() )
|
{
|
add := extraFeedback_i;
|
}
|
else
|
{
|
add := oterm;
|
result := false;
|
}
|
|
if( currentLenght > 0 and add.Length() > 0 )
|
{
|
feedback_o := feedback_o + SCK_FeedbackBuilder::FeedbackDelimiter();
|
}
|
|
feedback_o := feedback_o + add; // Construct new feedback message after adding extra feedback
|
}
|
}
|
return result;
|
*]
|
}
|