Vision is a generic data management application.

Since all businesses store data and probably have some sort of database in place already, the Vision editor connects to an existing database and generates the application based on that data structure.  If the database structure is properly set up, the editor will generate a fully functional Java J2EE Enterprise class back end as well as a graphical client front end application to manage the data.  For a medium to large size structure, this process takes anything from 20 seconds to a minute to complete!

As standard, the generated application has the following features:

  1. Users can only see/do what they have permissions for.  This is functional enough for most cases.  ie. you can give someone permission to create a field, but not modify it afterwards etc.
  2. Users can customize and save the look and feel, shortcuts, quick searches and listings.
  3. Listings for all entities can be searched/sorted on any column/multiple columns as well as be printed with user heading and comments.
  4. All input fields have custom data driven input components with basic validation for data type as well as checking for compulsory values. Ie if you try to search on a date field, a Calendar Editor will pop up etc.
  5. Easy to view, sort, search and navigate data with all related info easily accessible.
  6. Built in messaging system where users can get system generated messages, which when double clicked will take them directly to the record related to the message as well as sending messages to other system users.
  7. Reporting interface for managing and running Jasper Reports that can easily be exported to pdf, xml, csv, html etc.
  8. The editor allows you to select fields to automatically filter related fields as well as using a related entity’s field values as defaults.  Ie if you have option lists for Region and City on a screen, you could have the City list automatically filtered based on the Region selected.
  9. Wizards for multi-step data entry.  ie  When creating a new Order, its compulsory to add at least one order line as well.
  10. Networked, multi-user, enterprise application server with rules based business logic.

You now have a generic application with which to easily search, view and modify your data.  You can now add roles, assign permissions to those roles and add users to roles directly from the editor.

After that you have the capability to add custom functionality and logic to any screen with action tool bars, write entire custom screens as well as rules to be executed before and/or after any change to the data. These rules are compiled and run at runtime, which means you can change your business logic without recompiling and redeploying the application (in most cases anyway).  Custom tool bar interface is very powerful in that it allows you to further control your application logic based on the current entity being viewed.  For example, the current user has permission to update the fields of eg a Job Card being viewed.  If the status field of this Job Card changes to “In Progress”, only the Person assigned to this task can modify certain fields.  Now if the status field of this Job Card changes to “Completed”, you can limit any further modification by any user.

About the editor:

It will connect to a JDBC compliant database, extract the schema and write all the java source files.  You can then open a project with the editor and visually modify what the generated program will look like by dragging and dropping and selecting values from input components.  You don’t need to know Java to use it.

You can click a button to then generate you the complete J2EE application with client and server side files.  The server archive will be automatically deployed to a JBoss server and the client application can be run directly from the editor.  By selecting an extra check box, it will also be deployed using Java Web Start.  Roles and permissions are also managed from the editor.  In addition to the J2EE version it can also build a stand alone application that doesn’t require an application server, or a version that runs inside a browser and connects to the same J2EE server for business rules and data storage.