Progress
Application Development
Environment — Getting Started
SmartObject Technology
The SmartObjects in the main window of the sample application are based on SmartObject templates. Templates provide a starting point for creating masters. At run time, you run an instance of a master, and this instance is a SmartObject. Progress provides a starter set of SmartObject templates from which to build your own masters for creating end-user applications. For example, in the SportsPro Order Tracking System, the SmartObject named bcust is a master based on the SmartDataBrowser template.
SmartObjects provide a significant advantage in that you can reuse them. When you use a SmartObject master in an application, the AppBuilder does not write its actual code into the window file it creates; it only writes instructions to create an instance of the master. You can have many applications that use instances of a single master, and you usually use multiple instances of the same master in one application.
SmartObjects are specialized 4GL procedures that run persistently. After a SmartObject performs a specific task, in response to an end-user action, it remains in memory, ready to respond to end-user input and instructions it receives from other SmartObjects. The specific functionality of a SmartObject is encapsulated within a framework of internal procedures (also known as methods). Internal procedures are procedure blocks defined inside the context of an external procedure. Some internal procedures are common to all SmartObjects, and some give each standard type of SmartObject its unique characteristics. For more information about internal and external procedures, see the Progress AppBuilder Developer’s Guide , the Progress ADM 2 Guide , and the Progress ADM 2 Reference .
Using SmartObjects in applications makes even the most complex applications easy to maintain. Since all instances of a SmartObject master are based on one file, any change you make to that source file applies to every application that uses that master.
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |