RAMP-TSAD03 Step 8. What to Do When Things Do Not Work
If you have a problem with special field handlers you will need to debug them.
Trying to debug them with ALERT_MESSAGE(), alert() or MESSAGE_BOX_SHOW operations will probably just confuse you.
There are two reasons for this.
- First, ALERT_MESSAGE is asynchronous, so when it displays may not be when you think it does.
- Secondly, using these operations presents a windows message box. These usually take focus. Most handlers hide themselves when they lose focus or become deactivated, so typically every time you show a message box your handler will disappear. The same may be true of using the VL code debugger. Debugging focus and activation sensitive applications can be tricky.
The best solution is to use the framework application level trace facility, positioned so that it does not overlap you framework window. If you just turn it on a great deal of special field handling trace information will appear.
If this does not resolve the problem then start adding TRACE() calls to your RAMP scripts and #AvFrameworkManager.AvRecordTrace in your VL code.
Another useful debugging feature is to plug in the shipped DF_PRM06 handler in place of your handler. When invoked is reports on a lot of information about what information was passed to the handler, which my help you to identify your problem.