EASE

Labels
AJAX(112) App Studio(7) Apple(1) Application Builder(245) Application Factory(207) ASP.NET(95) ASP.NET 3.5(45) ASP.NET Code Generator(72) ASP.NET Membership(28) Azure(18) Barcode(2) Barcodes(3) BLOB(18) Business Rules(1) Business Rules/Logic(140) BYOD(13) Caching(2) Calendar(5) Charts(29) Cloud(14) Cloud On Time(2) Cloud On Time for Windows 7(2) Code Generator(54) Collaboration(11) command line(1) Conflict Detection(1) Content Management System(12) COT Tools for Excel(26) CRUD(1) Custom Actions(1) Data Aquarium Framework(122) Data Sheet(9) Data Sources(22) Database Lookups(50) Deployment(22) Designer(177) Device(1) DotNetNuke(12) EASE(20) Email(6) Features(101) Firebird(1) Form Builder(14) Globalization and Localization(6) How To(1) Hypermedia(2) Inline Editing(1) Installation(5) JavaScript(20) Kiosk(1) Low Code(3) Mac(1) Many-To-Many(4) Maps(6) Master/Detail(36) Microservices(4) Mobile(63) Mode Builder(3) Model Builder(3) MySQL(10) Native Apps(5) News(18) OAuth(8) OAuth Scopes(1) OAuth2(11) Offline(20) Offline Apps(4) Offline Sync(5) Oracle(10) PKCE(2) PostgreSQL(2) PWA(2) QR codes(2) Rapid Application Development(5) Reading Pane(2) Release Notes(179) Reports(48) REST(29) RESTful(29) RESTful Workshop(15) RFID tags(1) SaaS(7) Security(80) SharePoint(12) SPA(6) SQL Anywhere(3) SQL Server(26) SSO(1) Stored Procedure(4) Teamwork(15) Tips and Tricks(87) Tools for Excel(2) Touch UI(93) Transactions(5) Tutorials(183) Universal Windows Platform(3) User Interface(338) Video Tutorial(37) Web 2.0(100) Web App Generator(101) Web Application Generator(607) Web Form Builder(40) Web.Config(9) Workflow(28)
Archive
Blog
EASE
Friday, September 12, 2014PrintSubscribe
Announcing Workflow Register

Workflows in Line-of-Business Applications

Workflow is a repeatable pattern of business activity.  Business applications mirror the real-world patterns through data collection performed in sequences of user-interface screens.

Software developers create hard-coded data structures and data entry forms based on the input from business users. A line-of-business application represents the current understanding of a business process by a development team.

A successful line-of-business application eventually evolves to match the requirements of business processes in organization. The dynamic nature of a business life-cycle will require constant tweaks and fine tuning even in a successful implementation.

Application customization and deployment are very expensive and frequently disruptive. Line-of-business applications must include built-in tools to allow changing application behavior without modifying the core application code.

Procedural Workflows

Many software packages include implementations of procedural workflows. Procedural Workflow allows non-developers to describe sequences of application operations with optional conditions and loops. Procedural workflows can be presented as visual workflow diagrams or text-based scripts. Procedural workflows offer a great tool that allows altering application behavior without changing the core application.

Complexity of procedural workflows grows exponentially when business users are trying to express various exceptions that exist in real-world business processes. Procedural workflows do not offer the means of limiting access to data.

State Machine Workflows

State Machine workflows are composed of rules triggered by the state of data, user identity, and time. Each rule defines a test that allows inspecting the state of data. If the test has passed, then the rule is “triggered”. The triggered rules affect application behavior. If there is no state test, then a rule is considered to be “triggered” by the mere fact of association with the current user identity.

A state-driven rule effects a specific type of application functionality. For example, a rule with Allow type can define a filter that reduces a set of records to a smaller subset based on user identity. If the rule is “triggered”, then the filter is applied to any SQL statement reading data from the application database.  A rule with Transform type may remove data modification actions from a data entry form. If the rule is triggered, then the end user will not be able to Edit, Delete, Import or create New data records.

A large collection of rules affecting application behavior can be developed. Developers organize related rules in groups. Groups of rules are associated with users and optional schedules. Association of end users with rule groups and scheduling can be outsourced to application administrators.

The standard end user experience is defined by the implementation of line-of-business application. The rules of the state machine workflow will alter user experience based on user identity, time, and state of data.

State-based rules hide the complexity of the real-world business processes by breaking them down into small and manageable bits of functionality. State-based rules are great when it comes to implementing real-world exception. A state-based rule can define data filters, user interface alterations, business rule injection, and much more.

Adaptive Line-of-Business Apps

For the past few years we have worked on an integrated solution that will enable declarative state-machine workflows in the generated applications out-of-the-box. The goal is to enable adaptive customization of live apps without making changes to the code that require re-deployment.

We have identified the following customization requirements that must be available in a live application:

  1. Ability to define Allow/Deny filtering rules that can be applied to any data retrieved by application.
  2. Ability to create customization rules applied to XML definition of a data controller.
  3. Ability to replace an entire data controller with a substitute.
  4. Ability to create “content” and “data” pages in a live app.

Several prototypes have been developed but appeared too complex to operate.

Meanwhile developers working with Code On Time had an option to implement requirements (1), (2), and (3) on their own:

  1. Dynamic Access Control Rules - http://codeontime.com/learn/security/multi-tenant-applications/dynamic-access-control-rules
  2. Data Controller Virtualization - http://codeontime.com/learn/workflow/virtualization-node-set-plugins
  3. Substitution of controllers - http://codeontime.com/learn/data-controllers/virtualization

Requirement (4) can be satisfied in SharePoint Factory and DotNetNuke Factory Projects. Both products are content management systems that allow creating pages at runtime.

This year we have finally arrived to a solution that will become integrated in the apps created as Azure Factory, Mobile Factory, Web App Factory, or Web Site Factory projects.

The solution will be rolled into a single feature called “Workflow Register”.

It will include an integrated Content Management System (CMS) as a core component of generated apps. CMS will allow creating dynamic “data” and “content” pages at runtime.

“Data” pages will include markup that uses “data-“ attributes to define data views. For example, master-detail page at  http://demo.codeontime.com/northwind/Pages/Categories.aspx is defined as follows:

<div data-flow="NewRow">
    <div id="view1" data-controller="Categories" data-view="grid1" data-show-in-summary="true"></div>
</div>
<div data-flow="NewRow" style="padding-top: 8px">
    <div data-activator="Tab|Products">
        <div id="view2" data-controller="Products" data-view="grid1" 
            data-filter-source="view1" data-filter-fields="CategoryID" 
            data-page-size="5" data-auto-hide="container" data-show-modal-forms="true"></div>
    </div>
</div>

“Content” pages may contain arbitrary HTML.

Here is the screen shot of a “content” page based on popular Bootstrap framework, which will be integrated in the Code On Time release 8.0.9.0 due out at the end of September 2014.

CodeOnTimeBootstrap

If workflow Register is enabled in a project, then the app generator will install a custom database schema to the primary database. The tables will have “ease_” prefix. The schema includes tables to support the following features:

  • Workflows - specifies Allow, Deny, Transform, Define rules that are applied to various application components, such as pages, menu items, controllers, etc.
  • Content Management System – provides storage for dynamic content, such as pages and menu items.
  • Register - global registry that associates user identity references (user IDs and roles) with workflows and optional schedules.
  • Permissions – a collection of  workflow rules associated with users.

Register

The purpose of workflow Register is to enable management of various permissions by application administrators at runtime.

All users will have access to the Register entries associated with their user ID. Only administrators will have access to all entries in the Register.

Entries created by administrators have “Approved” status.  Users will also be able to assign workflows to themselves. Such entries will be created with “Pending” status. Only “Approved” workflow register entries will be taken into account by the application framework.

A person assigning a workflow to a user or role does not need to know the details of workflow implementation. An entry in Register may read:

Workflow Human Resources is assigned to John Doe on Tuesday, Wednesday, and Thursday starting on November 15, 2014 and ending on February 1, 2015.

User John Doe will have have access to human resources pages on the specified dates. The workflow may allow or deny access to data records exposed on the pages.

Developers will be able to create workflow rules that delegate management of Register entries to the users other than administrators.

Workflow Register comes with pre-defined data controllers and management pages exposed through “Register” menu option in generated apps.

Workflows

Workflows are collections of rules defined by application developers. A developer can create a set of pre-defined workflows as a part of application at design time.  New workflow rules can be created and existing ones can be customized at runtime as needed.

Rules may affect application behavior in multiple ways. For example:

  • A filter that allows or denies access to data can be specified
  • New pages can be made available to end users
  • Data controller actions defined in the application can be dynamically altered at runtime.
  • New SQL, JavaScript, and Email business rules can be introduced in data controllers.

The rule definition system if very simple and exceptionally extensible to fit the most demanding customization requirements.

Content Management System

Content management system allows populating an application with new “content” and “data” pages.

CMS may also store images, style sheets, JavaScript, and any other files or documents.

Application workflows determine access to the content. Content may be publicly available or limited to specific individuals or groups of users.

Permissions

Permissions are collections of  workflow rules matched to a user identity.

Permissions are evaluated by application framework when users access various applications resources. Application framework matches workflow Register entries with the user identity and resource type. Matched workflow rules are automatically engaged by application framework.

For example, if “Allow” rule defines a filter limiting visibility of customer records, then the filter is included in SELECT statements executed by the framework when application tries to read a list of customers.

If a workflow assignment has an associated schedule, then permission engagement will be time-sensitive.

Permissions are created by application framework on-demand directly from the workflow Register entries. Permissions are refreshed when associated workflows are changed.

Availability

We are planning to release various components of Workflow Register with each upcoming release.

The upcoming release 8.0.9.0 due out by the end of month in September will include several elements of Workflow Register:

  • Support for content pages.
  • Support for declarative data pages.
  • Integrated Bootstrap framework to allow creation of compelling responsive content pages.
  • One-to-One entities support in data controllers. This particular feature is introduced to support “ease_” database tables.

Our production schedule indicates that Workflow Register will become available in November of 2014 or a sooner.

Monday, July 14, 2014PrintSubscribe
Map View, Master-Detail Pages, Custom Result Sets, Client-Side APIs

Code On Time release 8.0.6.0 introduces countless enhancements to Touch UI - the unified user interface of mobile and desktop applications created with our app generator. Developers can now select a default user interface model for the apps in all product editions. The two options are Touch UI and Desktop. Applications created with Unlimited edition support both user interface models simultaneously.

Notable enhancements include:

  • Support for exact and negative search in Quick Find. For example, “USA” –“ak” will yield a list of customers from the United Stated with the exception of those located in Alaska.
  • Map view is now available in Touch UI.
  • Complex Master-detail pages are now supported in Touch UI.
  • Custom result sets based on arbitrary SQL queries, stored procedures, and web services with automatic support for filtering and sorting can now be utilized in applications. The tutorials are coming up.
  • Client-side  API has been extended with the method $app.execute. This method allows easy selection of data on the client and execution of arbitrary commands.  The tutorials will become available shortly. This method is the core of the custom GUI development in http://cloudontime.com. It performs a function similar to REST API, but works in all product editions. REST API does not require client libraries of apps created with Code On Time. The new method $app.execute works only within application and cannot be used independently.
  • Client-side API has been extended with the method Web.DataView.search. This method allows activating search in a data view on the page with filter and sort expressions defined by a developer.

Touch UI apps created with Code On Time work on all devices with an optional ability to degrade user interface in Inernet Explorer 6-9.

Touch UI automatically creates complex layouts with tabs and any number of levels of master-detail relationships.

Touch UI supports complex tabbed layout in apps created with Code On Time

Map view works on all types of devices:

Map view is a core automatic feature of Touch UI applications created with Code On Time.

The following features and enhancements are included in this release:

  • Developers can choose user interface for Azure Factory, Web App Factory, and Web Site Factory projects in the Settings /Namespace, Framework and UI section.
  • All settings of Touch UI applications can be configured in the Settings / Features / Touch UI section of application configuration.
  • Map view style is now available in Touch UI applications.
  • End users can choose Form Label Alignment in an app.
  • End users can choose Position of List Labels  in an app as.
  • Touch UI applications offer 38 built-in themes.
  • Developers can now specify default themes for pages.
  • End users can control Display Density of application pages.
  • End users can choose page transitions in apps with Touch UI.
  • Fixed the bug causing SQL business rules not being executed on each row when multi-select is enabled.
  • Data controller "Execute" method has been refactored for improved processing of multiple selected rows submitted from the client.
  • Fixed the incorrect multi-value adaptive filtering of lookup fields in Desktop UI.
  • Touch UI now uses minified CSS stylesheets.
  • JQuery Mobile 1.4.3 framework is the core of the Touch UI applications.
  • Methods $app.execute and Web.DataView.search are now supported.
    The first allows server-side requests to SELECT/UPDATE/INSERT/DELETE data on the server. The second method allows passing "sortExpresson" and "filter" to a data view to sync data. Method $app.execute also supports "Report" action.
  • Quick Find filter now uses a system name "_quickfind_" parameter to enable filtering operations on the first field in the view.
  • User controls generated "First Time Only" now include a standard template for Touch UI.
  • EASE configuration will not assign "mailto" if the field already has a HyperlinkFormatString.
  • Added fix in Controller.Filter for fields that are shorter than the search query.
  • Added Quick Find support for "exact matches" and -negative results.
  • Fixed charts not rendering in reports due to view access not being validated.
  • Data views can be tagged as display-style-grid, display-style-list, display-style-listonecolumn, and display-style-map to force a specific presentation style on all devices.
  • Renamed “Device” property of pages to "User Interface". The valid values are "Touch UI" and “Desktop”.
Monday, February 10, 2014PrintSubscribe
Roadmap 2014

Applications created with Code On Time are equipped with a Universal Mobile/Desktop Client.  Application pages are rendered with a device-friendly user interface. Mobile smartphones and tablets display touch-enabled pages with lists and forms featuring a responsive design.

Multi-purpose pages behave as standalone units of a line-of-business application. This concept is known today as a Single Page Application. The concept is rapidly catching on with the mainstream development community. It has been an integral part of apps created with Code On Time for the past five years.

The power and flexibility of the Code On Time application framework is proven by the mere fact of its ability to work with two completely different client libraries. The same exact “Code”, “SQL”, “Email”, and “JavaScript” business rules and exactly the same pages work with both mobile and desktop client devices.

This year we will introduce amazing new forward-looking framework capabilities and a new product called http://cloudontime.com.

Mobile Client

Mobile Client is based on the leading mobile JavaScript framework jQuery Mobile 1.4, released in December of 2013. We have deliberated a lot while trying to pick the best mobile framework as the foundation of the mobile client and settled on JQM. Primary reasons are the extensive support of numerous mobile operating systems, huge following, and tight integration with jQuery.

The initial release of Mobile Client does not fully match its desktop counterpart when it comes to a few features such as advanced search, filtering, dynamic calculations of field values, and conditional visibility. The gap will be closed by the end of March 2014.

Presently, the mobile client supports a single default theme. We will offer a large number of alternative themes and provide customization instructions in the coming  months. Theme Roller for jQuery Mobile will be used to create the themes.

Our next goal for the Mobile Client is to provide Grid, Data Sheet, Hierarchy, Map, Calendar, and Chart views.

  • Grid view will offer a “table” style responsive presentation of mobile lists. The number of visible columns will change depending on the screen size and device orientation.
  • Data Sheet view is the production release of the 2nd generation data sheet that was first introduced in the desktop client. It will support inline editing of field values with a new touch-enabled scrolling mechanism.
  • Hierarchy will be a feature of List, Grid, and Data Sheet views. The configuration of hierarchies is explained here.
  • Map view will be based on Google Maps integrated with JQM.
  • Calendar view is a touch-enabled custom implementation of a typical calendar. We will be borrowing presentation ideas from the leading mobile operating systems.
  • Chart view will be an extension of current charting capabilities of the desktop client.

Release 8.0.3.0 features a Task Assistant displayed when users tap on the toolbar header text. Unlimited edition applications will also show History and Favorites tabs with lists of data cards representing master data records to facilitate business-related activities.

We are also working a on a few data input enhancements:

  • “Basket” lookup style will complement “Check Box List” to enable multiple selection from a large number of options. This style of presentation will automatically activate if a list of “many-to-many” options is greater than a predefined number when rendered on mobile devices to improve presentation. “Basket” lookup will be available in Desktop Client after the initial introduction in the Mobile Client.
  • Signature capturing will complement Blob adapters. Users will be able to draw a signature on touch-enabled screens. The signature will be stored as a high-resolution PNG image with an optional SVG version. This is a high-priority feature that will be first introduced in the Mobile Client.

Mobile Client on the Desktop

Universal Mobile/Desktop Client uses two different JavaScript libraries to render the user interface. The mobile client library is touch-enabled and works great with a mouse as well. You can see a mobile user interface demo in action on your desktop computer.

The current market trend in the desktop computing is the introduction of touch-enabled screens. Microsoft Windows 8 is touch-enabled. Most business users will end up having a touch-enabled computer in the near future.

The major difference between mobile and desktop presentation in a Code On Time app is the number of data views visible to a user at any moment:

  • Desktop Client presents multi-level master-detail pages that allow a user to gain immediate access to data views on any level by scrolling the page up and down.
  • Mobile Client displays only one data view of a multi-level master-detail page. User clicks on navigation buttons to access relevant data views from lower levels.  The drill-down approach is common in mobile operating systems. There is always a way to return back to the original top-level data views of a page.

Our development team is researching the possibility of creating multi-pane presentation with data views displayed each in its own pane on desktop devices. Additional panes will be revealed on the same screen when a user drills down to see related “detail” data.  The responsive design of the mobile client scales perfectly for a multi-pane presentation. Panes will be independently scrollable.

MultiPaneMobileSample2

We will introduce the multi-pane capability in the mobile client in the near future.

Based on your input we will consider if this will be a good approach to follow when building touch-enabled line-of-business applications for both mobile and desktop devices. What do you think?

Offline Data Caching

Performance of line-of-business applications in HTML 5 web browsers can be greatly improved with client-side data caching. We will introduce ability to cache entire datasets exposed by data controller views on the client.

Data controller view will have a Tag property to control client-side caching. For example, tagging a data view as data-cache37 will cause the client library to look for data in the local storage of the browser before attempting to request data from the server. If the data is in the storage and it has been there less than 37 minutes, then the client library will not attempt to access the server and will use the cached data instead.

Tagging of a view for client-side caching will disable advanced search and will only leave Quick Find and Adaptive Filtering search options. Both operations will be performed via JavaScript entirely on the client.

Cached data will be scoped to the user identity and page. We will make sure that cascading lookups work correctly with cached data.

This unique capability will be available in both Mobile and Desktop client.

Offline Transactions

The current implementation of client library does not cache data changes in the browser. If a transactional data input is required, then we generally recommend to rely on your database server and follow transaction implementation strategies that include “Status” field, log tables, or staging tables. The described strategies will work perfectly well with mobile and desktop devices.

If a network connection is lost or unavailable, then the server-side transaction processing is not going to work.

Modern web browsers can notify a web page if a network connectivity is lost and when the client device is back online.

New tag data-offline will allow indicating that the page data views are supporting offline transactions. The tag will activate automatic caching of data requests to Update, Insert, and Delete data. Client library will store each AJAX request object in the local browser storage in the sequence the requests are initiated, without sending request to the server. The client library will execute “cached” requests locally to simulate the end result of Update, Insert, and Delete actions on the client. Developers will be able to implement custom JavaScript business rules in offline mode.

Two new actions “Commit” and “Rollback” will be supported. Actions will be visible in their scope only if there are pending “offline” changes. If a network connection is available, then “Commit” action will send all pending requests as a single array to the server for execution. The server will perform all request in the same sequence that was recorded on the client to allow the database server to persist changes. Simulated client-side data modifications will be discarded if all operations were successfully executed. “Rollback” will simply remove pending changes and restore client-side data to its initial state.

The primary objective of this feature is to allow implementing apps that can capture data without a mandatory interaction with the server. Signature capturing will also work in this mode.

Offline Mobile Client

HTML 5 standard defines a concept of an application manifest that helps a web browser to download all application resources such as HTML pages, JavaScript files, images, and CSS style sheets. Resources listed in a manifest are cached in the local browser storage. A manifest can also include resources that represent application data as static JavaScript structures.

We will implement a dynamic HTML 5 application manifest construction in Code On Time apps created with Unlimited edition. Only pages and data marked to work Offline will be included.

End users will be able to download the offline version of an app by simply entering the application web address followed by “offline” path. For example:

http://myapp.com/offline

The contents of the manifest will be downloaded when the app is accessed for the first time from an HTML 5 browser. This is basically a process of application installation.

The subsequent visits will follow this script:

  • If a network connection is available, then a browser will ensure that the contents of the manifest and previously downloaded resources are up-to-date.
  • If a network connection is not available, then verification of resources is skipped.
  • The browser will proceed to display pages from the local storage.
  • The client library will always check “local” resources before attempting to download data from the “network”.

Note that the offline app is not a separate application. It is is simply a capability of an app created with Code On Time to expose some of its functionality to offline users.

Offline apps will be provided with the Mobile Client user interface

Offline apps do not require distribution through the app stores of mobile operating systems.

Native Mobile Apps

Modern mobile development has a popular trend of building native apps with JavaScript and HTML, packaged to run in embedded web browsers of a mobile operating system. There are several popular tools that allow packaging a collection of HTML and JavaScript files as a native app.

The app generator will support production of pre-packaged files for at least one of such tools that will be announced in the second half of this year.

Native apps will have to be distributed through an app store of the chosen mobile operating platform.

Next Generation Desktop Client

Current implementation of Desktop Client works best on high resolution screens with the mouse and keyboard.

The next generation of the desktop client will be based on the mobile client and will feature a slide-down ribbon with context actions and menu options at the top of each page. Multi-pane pages on the desktop client will display containers arranged in multiple columns and rows, which will turn a page into a collection of scrollable tiles.

The new version of desktop client will ensure efficient desktop keyboard data entry in the forms and data sheet view.

We will likely offer additional presentation enhancements to various view styles that will benefit desktop users.

Mobile user interface themes will be adapted for improved desktop  presentation.

The details will become available in second half of 2014.

EASE (Enterprise Application Services Engine)

For the past few years we were building a collection of features under a moniker EASE (Enterprise Application Services Engine). Several key features have not been released to production as a part of Code On Time application framework. The key unreleased components are Workflow Register and Dynamic Access Control List. The initial implementations were complex and difficult to manage.

The latest iteration has been significantly streamlined.

DACL (Dynamic Access Control List) will not be a dedicated module in the generated apps as originally intended. Instead we have re-factored this into Workflow Register.

Workflow Register is based on a core set of 11 tables that will have to be hosted in the application database. There will be a set of built-in data controllers similar to Membership Manager that will allow managing configuration data in the tables. 

Workflow Register allows associating "Workflows" with Users and User Groups controlled by optional schedules.

"Workflow" is a combination of Rules.

Rules are matched to registered objects. Objects represent "business entities" of your app.

A rule may define:

  1. SQL expression limiting access to data (Dynamic Access Control Rules)
  2. Custom version of a data controller
  3. Transformation of a data controller via Node Sets (Data Controller Virtualization)
  4. Transformation of a data controller via XSLT (new feature)
  5. Custom version of a page content (new feature)
  6. Transformation of XHTML content (page) via XSLT (new feature - virtualization of pages)
  7. Custom page URL for Search Engine Optimization

Application framework automatically "consults" rules of workflows matched to the current user when performing various life-cycle operations on controllers, pages, and data.

Installation of Workflow Register will include built-in business entities.  Built-in entities include:

1) blog
2) content
3) image
4) comment
5) support ticket
6) discussion

The described entities are there to support built-in Atom-based publishing module of the Content Management System of the application framework. This is a new feature of EASE.

Installation of Workflow Register in the database will allow building a dynamic website similar to http://codeontime.com with built-in blogging, community forum, and ticket-based support system. All these features will run alongside your own data controllers if enabled.

There will be built-in rules to control access to blogs, content, images, comments, support tickets, and discussions. Workflow Register will allow browsing and changing these rules. We expect the built-in rules to be a "live" example of Dynamic Access Rules that developers can use to model restrictions for their own data.

New EASE features will be integrated in the application framework in April/May of 2014.

Cloud On Time

The new product called http://cloudontime.com will go online in April of 2014. 

This product is an app created with Code On Time. The type of the project is Azure Factory.

Cloud On Time allows creating custom cloud apps on top of dedicated databases hosted in Windows Azure. The apps include Universal Mobile/Desktop Client and all EASE features.

Users will be able to create “cloud” tables using a browser on mobile and desktop devices. A built-in Designer works in the cloud and is modeled after Project Designer available in Code On Time app generator. Multi-user development teams will be able to cooperatively work on their projects.

Developers will customize projects with SQL, JavaScript, and Email business rules.

Monthly subscriptions with several levels and a free trial period will be available.

Subscribers can use a free standalone utility to download their entire cloud database from Cloud On Time to a local machine in a variety of formats.

The same utility will allow uploading an existing database to Cloud On Time.

The target  audience of the product:

  • Business users who want to rapidly prototype a mobile or desktop line-of-business application without using developers.
  • Professional development teams can quickly build complete apps hosted in a private database running in a shared cloud.
  • Code On Time app generator users can prototype an app in a cloud and bring it locally for further development and deployment to their own platform of choice.
Continue to EASE Geo Tagging