Monday 12 November 2018

Action Diagram Syntax Changes

One of the challenges in developing the new action diagram editor to support keyboard entry was the need to ensure that each part of a statement was unambiguous and easy and quick to enter. This necessitated a few minor changes to the action diagram syntax.



  • View Names. The parts of a view name are separated by a . rather than a space, for example IN.CUSTOMER.CODE not IN CUSTOMER CODE.
  • Several operators are simplified to aid keyboard entry for example ‘IS EQUAL TO’ is replaced by ‘=’ and ‘IS NOT EQUAL TO’ is replaced by ‘!=’.
  • Keywords that contain spaces in the legacy toolset are joined with underscores.  For example, FOR EACH becomes FOR_EACH, READ EACH becomes READ_EACH and ELSE IF becomes ELSE_IF. This is also true for some expression clauses, for example IS_BETWEEN and IS_IN, IS_VISIBLE.
  • SET_PROPERTY. The legacy CA Gen toolset uses a SET verb for two completely different types of statement: setting a view value and setting an ole/com/object property. The Action Diagram Editor uses SET_PROPERTY for the latter instead of SET, so the distinction is clear, avoiding ambiguity.
  • READ_EACH statements always have a (for each successful iteration) clause even if there are no exception clauses.
  • Numerous statements and clauses present detail information directly in the diagram for convenient viewing and editing, whereas the legacy toolset would provide some of these properties only via a separate pop-up dialog.  For example, Event properties default, always move, never move is displayed in the Action Diagram itself.
  • Various expression parts have also been subtly changed to aid auto-suggest, making each combination distinct and unique where possible to avoid ambiguity in the language.  However, because of the automatic nature of the suggestion lists presented, these should be intuitive and clear.



No comments: