210 likes | 397 Views
DataFlex Web Framework Symposium – Part 2 Web Framework Overview. John Tuohy Development Team www.dataaccess.com. The DataFlex Web Framework. At Synergy 2011, we ended the conference with a proposal for the next generation DataFlex Web Framework development system.
E N D
DataFlex Web Framework Symposium – Part 2Web Framework Overview John Tuohy Development Team www.dataaccess.com
The DataFlex Web Framework At Synergy 2011, we ended the conference with a proposal for the next generation DataFlex Web Framework development system. The next two slides came from that presentation…
Web Framework - 2011 Supports the DataFlex style of application on the web Focused on data entry and reporting style applications Concentrate on our core strength Make it feel more like an application than a web page Lower the entry point for creating professional looking data entry web-applications Developers should be able to write basic web applications from within the Studio Developers will need a minimum of HTML and JavaScript knowledge to write this application However, more advanced developers will be able to use JS/CSS and HTML to do great things
Web Framework - 2011 Studio Integration Automatic menu generation of views and reports Just like windows Preview of pages that use WBO based web controls More wizards create WebApps create web-views create web-reports
Web Framework - 2013 Well, here we are in 2013, and that’s pretty much what we’ve done In this presentation, we will talk about all the parts of the DataFlex Framework and we will compare the Windows and Web Framework implementations
DataFlex Application Framework Framework's Main purpose Create a DD class for each table DD class contains all rules, dependencies Create views Views contains DDO structures Create data entry objects (DEOs) in the view, which are attached to DEOs You save, delete and find data within a view using a handful of standard messages Assemble all your views and you have an application
Data Dictionaries A data dictionary class is created for each table Information is supplied for each column in the table Labels, control types, masks, valid values, validation rule, prompt lists Information is supplied about that table Validations, update rules, etc. Information is supplied about this table’s relationship to other tables These classes are defined once and used (reused) as data dictionary objects (DDO) DDOs are connected into DDO structures These are placed in views and connected to DEOs
Data Entry Objects DEOs are used to view and process data. DEOS are connected to appropriate DDOs using framework rules DEOs and DDOs communicate via an interface contract Data Binding: DEOs are bound to the DDOs Server: this identifies the DDO that handles the operations (save, delete,find find) Data_File & Data_Field: This binds a DEO to a table/column Done with the Entry_Item command
DEO Request Messages DEOs understand special request messages These are user triggered via a keypress or menu/toolbar item selection These direct high level requests to their server DDO Request_Find Request_Save Request_Clear Request_Clear_All Request_Delete Expected to handle entire process Validation, confirmation, refresh, etc.
Visual Objects Visual objects are the objects you see They are represented as DataFlex objects Properties are used to represent their appearance This determines size, location and layout The DataFlex objects wraps the platform specific control it creates In Windows these are Windows and COM controls In Web this is HTML and JavaScript DEO vs non-DEO A visual object may be data-aware
Containers and Controls Common containers Views Modal dialogs Tab Dialogs Groups Containers with other visual borders Image and Misc. Common controls Form Spin Form Combo Form Radio Button Checkbox Treeview Slider Grids & Lists
Menus and Toolbars Global Menu and Toolbar system Maintained by Studio Classes exist for most common options
Special Framework Features Prompt Lists Multi-function, relational, move value out, custom Data aware / non data aware Virtual / static Configurable when invoked Search dialog Auto-configuration Auto-column indexing Grids data aware / non-data aware Virtual / static
Special Framework Features Automatic support for DD Options Autofind, FindRequired, Required, Commit, Remember, Capslock, etc. Data type, data-length, and numeric precision Masking Validation Forward keyboard navigation During save and delete Entering / Exiting
Special Framework Features Modal Dialog Support Callable from underlying dialog or view Interface to react to the completion of a modal dialog task Confirmation Messages Handle common message box needs info, yes/no, multi-button Automatically triggered in views Save, delete, data loss confirm
The Studio The Studio understands the DataFlex development environment It understands the language workspaces the framework the current project It makes development easy
Studio Components Table Explorer Table Designer Data Dictionary Designer Wizards Project wizards View wizards Prompt list wizards View/ Dialog Designer Code and Visual design mode DDO Modeler with drag and drop Control palette with drag and drop Property Panel Properties & Events Workspace Explorer Code Explorer Code Editor Project aware Code sense Code assist
The Studio Easy project management add remove views, dialogs, etc. Class creation and maintenance Menu / Toolbar generation Integrated debugger Portable workspaces
Special Web Considerations Web applications are stateless Internet applications have special security issues Browsers are asynchronous All Browsers behave differently Browsers have their own different display layout (flow)
Finally All of this had to be built into the Web framework In the upcoming presentations you will see how these pieces are all used