|
Change of behaviour |
Top Previous Next |
|
Change of behaviour
Here is a list of situations where conversion process changes the behavior:
1. Operations in Fast mode
The Control Verification handler works slightly different than the RM logic: Leaving a control in fast mode to another record by mouse executes the Verification, where as in Record Main the Fast mode logic is executed only if the data was modified.
2. Zoom indication in Status Line
In RM logic, when condition on Zoom operations is False then the Zoom indication is not available in Status Line. After the conversion the Zoom indication will be enabled even if the condition of the Zoom hander is false.
3. Block with Select operations and Condition set
In RM logic, if a Block with condition contains Select operations, then the condition determines whether the controls are parkable or not. If the condition is changed within the Block, the controls are still parkable as if condition is the same.
After conversion, the Block's condition is put into Allow Parking property of controls. In situations when the Block's condition is changed, then the parkable controls are determined by the change of condition.
4. MainLevel function
In RM logic, Level()='RM' function is used to determine if the task is in Record Main. The Level() function returns different values when executed from control or event handlers. That why the MainLevel() function is replacing the Level() when it checks for 'RM' (Record Main), because it returns 'RM' instead of the actual logic unit.
Example:
Old expression: Level(1)='RM' New expression: MainLevel(1)='RM'
The conversion process will not be able to identify the situations where instead of 'RM' is used a no simple string value.
Example:
Old expression: Level(1)=vSeekingStatus New expression: Level(1)=vSeekingSatus
In this case the expression stays unchangedm, even if vSeekingStatus has value 'RM' when the function is executed.
5. Missing or duplicate Control Names
The conversion process converts Control handlers for each control, thus they need to have a Control Name set. It automatically assign control names to all missing control names, if they have any handler attached.
If it comes to duplication of control names, the conversion process renames them by numbering each one of them, as "Item_001" and so on.
This could affect functions which use Control Names as their attributes, such as: LastClicked(), LastPark(), CtrlGoto()...
|