The general structure of an ATO is composed of one or all of the following components
one or more pagers, which allow to create or edit an entity member,
one or mode DataView objects allowing to enter data (hence data-entry should be enabled on one or more data blocks of the Layout).
a button object, which triggers the actual write-back and optionally executes a Board procedure achieving other tasks related to the newly entered data; for example, if the user inputs Budget Unit Price and Budget Quantity then the procedure executes the write-back and calculate the Budget Amount by multiplying price and quantity.
Note:
When an ATO contains one or more Pagers and a DataView, then the Layout of the DataView is executed only after the user selects an entity member on each of the Pagers. This allows the designer of the Capsule to create a screen where the end-user must explicitly make a selection on a Pager before he can enter or even view data.
the Layouts are not executed (i.e. DataView objects are not populated).
When a DataView object has data-entry enabled, it is required to put on the screen a button object to run the Save Data Entry action because when ATO is enabled the standard icon of the DataView to save data is disabled.
If there is more than one DataView object with data-entry within the same ATO then the save button saves data-entry for all DataView objects simultaneously. This allows the designer of the Capsule to create a screen where the end-user can enter data at different granularity levels, hence on different DataViews but save the data together. For example in a sales budget application you may want the user to input the product unit price, at Product and Year level, and the budget sales units at Product, Customer and Month level. With an ATO, having two DataViews, one for entering the unit price and the other one for entering the budget sales units, it is possible to control that the user inputs, for each budgeted product, both the unit price and the sales units.
From version 7.3.1 is possible to use the Advanced Transaction Object even in the Board Web Client.