Release 10.1A: OpenEdge Development:
Progress Dynamics Basic Development

> ## SmartDataBrowser basics

> The SmartDataBrowser, or more simply browser, is a Progress frame with a browse control in it. It includes a great deal of supporting behavior and a number of properties to allow browse control to interact with other objects in the application to:

> - Display and scroll through records in a related SDO.

> - Enable and disable toolbar buttons as certain actions occur.

> - Reset record position to a selected record so that other objects, such as viewer, can display and update fields from the same record.

> The standard Progress Version 9 SmartObject set includes both a static browser procedure and a dynamic browser. In releases of the ADM and SmartObjects before the introduction of Progress Dynamics, you must always define a dynamic browser as an instance in a particular window, because code written into the window procedure holds the property settings for the browser, including its column list, size, etc.

> You can use both static and dynamic browsers with Progress Dynamics, but the framework tools are designed to generate dynamic browsers for you. Because Progress Dynamics can store instance properties in the Repository, you can define browsers as entirely data-driven objects without associating them with a particular container. This allows you to use your browsers in many different windows, without needing any source file procedures for them at all. Also, if you need custom code to extend the behavior of the browser, you can write it into a custom super procedure, so there is still typically no need for static browser procedures.

> One typical way to use a browser in an application is to define the `Launch` `Container` property for the browser where you identify the associated maintenance window you want Progress Dynamics to run when a user wants to update a selected record. Alternatively, you could design a single window with a browser together with a viewer, on the same page or on different pages of a tab folder. The viewer will always display the currently selected row, allowing the user to update the row there. A dynamic browser can also be made updateable itself.

> As described in Chapter 8, "Using the Progress Dynamics Container Builder," Progress Dynamics provides numerous extensions to standard SmartDataBrowser behavior. In addition to the `Launch` `Container` property used to associate a browser with a window, various toolbar functions can also act on the currently selected record, including viewing or editing comments for the record, and viewing the audit trail for a record. Toolbar functions can also act on the entire data set displayed by the browser, including data export functions to send the data to Excel or to a Print Preview tool, and filtering the data set or repositioning to a particular record. The Progress Dynamics Object Generator described in this chapter creates a dynamic browser for you, for each table you select.

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