If you need to get more information out of a #Validate message, here is a tip
1, if using #Validate, make sure #Prompt does not have the REQuired attribute.
The REQuired attribute will popup its error message instead of the #Validate error message.and the #Validate error message can give you more information in complicated multi prompt situations.
2, Example of generating more informative messages for complicated multi prompt situations
#Tab(’&1 Some Text’)
#Prompt(‘StringField’,@s255),%stringfield
#Validate(%groupValidateCode,‘Error message:’ & %ValidateErrorMSG)
#EndTab
#Tab(’&2 Debug’)
#Prompt(’%ValidateErrorMSG’,TEXT),%ValidateErrorMSG
#EndTab
or
#Declare(%ValidateErrorMSG)
#Group(%groupValidateCode)
#IF(some condition fails)
#Set(%ValidateErrorMSG,'1st condition fail<13,10><13,10>You can have a multi line error message appear here')
#Return %False
#ElsIF(some other condition fails)
#Set(%ValidateErrorMSG,'2nd condition fail <13,10> You can have a multi line error message appear here')
#Return %False
#Else
#Set(%ValidateErrorMSG,'3rd condition fail - You can have a multi line error message appear here')
#Return %False
#EndIF
All the #Validate examples in the shipping templates only show a single line text error message and this is how you can expand the error message functionality of #Validate to be a bit more helpful. You can also adapt this for debugging purposes by making all #Return %False, or in the #Group(%groupValidateCode) add another #Call(%grpSendDebugView(‘Some Message Here’) and then create another group which calls Debugview from a clarion proc called from #RunDll.
Also worth pointing out, if you have lots of tabs in a template using the HSCROLL, use the ampersand and number in the tab description and then use ALT+[number] to cycle/jump directly to the tab in question when in the app gen. (Lee should like that one considering he likes keyboard navigation).
If you have more than ten tabs, pressing ALT+2 will take you to tab 2 and then tab 12, tab 22 and so on but the format is
tab(’&2 some text’)
tab(‘1&2 some text’)
tab(‘2&2 some text’)
probably obvious to some, but its not something I’ve ever seen used in other templates.