Release 10.1A: OpenEdge Development:
AppBuilder

> ## SmartPanels

> A SmartPanel is a task-oriented array of pushbuttons that incorporates ADM Smart technology. As is true of all SmartObjects, SmartPanels are modular and communicate with other SmartObjects through SmartLinks. SmartPanel instances are immediately available as precompiled objects from the Object Palette. They are loosely coupled to the SmartObjects they control and, because they are not directly involved in the operation of a data stream, are not based on a master object.

> Table 7–2 describes the predefined SmartPanels for your use:

> Table 7–2: SmartPanels options
> Style | Description
> --- | ---
> Navigation (with Icon Labels) | A four-button array with iconic labels that follow the arrowhead convention made familiar by tape recorders and VCRs. The four buttons select, respectively: the first record in a data stream; the record immediately preceding the current record, if possible; the record immediately following the current record, if possible; the final record in the data stream.
> Navigation (with Text Labels) | The same four-button array, but with text (First, Prev, Next, Last) rather than icon labels.
> Update (Standard) | A six-button array with text labels. The six buttons are Save/Update, Reset, Add, Copy, Delete, and Cancel. You must use this SmartPanel, or the equivalent buttons in a SmartToolbar, to enable changes to the database when using a SmartDataViewer for data display. You do not need it to make simple updates when using a SmartDataBrowser; a SmartDataBrowser that allows update will automatically perform the update when the user leaves the changed row. Use an Update SmartPanel with a SmartDataBrowser if you want the user to be able to add and delete records, or make more sophisticated updates.
> Commit | A two-button array used for transaction processing. The two buttons are Commit and Undo. A transaction is any group of operations that must be completed or discarded as an atomic unit. Failing to treat a transactional group atomically generally results in logical rather than physical data corruption. For example, after a credit purchase, successfully updating the inventory and shipping queue without also updating the customer’s balance will cause an inventory leak. In this example, an update must be performed on all of the tables or on none of them, if the system is to remain in good order.

> Note: A SmartDataBrowser provides it’s own navigational interface with the scroll bar. Adding a navigation array creates the possibility of confusion: since the SmartPanel is not able to communicate with the scroll bar, they can get out-of-sync. If you choose to add a SmartPanel for navigation, consider turning off the scroll bar in the property sheet for the browse widget.

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095