An app example


CMF can be used to quickly build data input apps for use by employees or partners.

Imagine a time clock for offsite employees that records check in / out time and location anywhere -- out in the field or at remote offices. Or an expense form that each employee can use to enter travel expenses on the road, on their own devices, complete with images of their receipts. Or a shipment app that keeps track of retail deliveries and can scan UPC codes as they are dropped off. The possibilities are endless.

Expense Form App

Let's take a quick look at what a simple expense app could look like. For this example we'll focus on collecting expense information, with one screen to add and edit expense information and another to list expenses entered -- a basic master-detail user interface.

Our screen to capture expenses collects basic expense information like date, description, and cost.

















It also captures receipts by enabling the employee to take a picture of the receipt. For this function, a 'capture' button is programmed by making a single call to a CMF function that takes care of triggering the device camera and putting the captured image back on the screen:



Once saved, an expense is put into a list where employees can add, edit, or delete expenses:
















Notice that Expense data for this example is collected on the device. Employees can 'send' it from the main screen when they're ready via web services, presumably to a workflow within their company that routes it from approval to payment.














Also, while I didn't show it running in Android here, this app works just as well on a 'pad or Android device without additional coding.


So, what did it take to put this app together in CMF?


First I added about 2 pages of HTML code using JQuery Mobile that defined both screens. I also included a CMF style to make it look ios7-ish which can be easily changed using CSS. Straightforward stuff.

I then defined the fields to save and added some code for initialization in standard Javascript, about 1 page worth in all.  In the same language used across the web by a large percentage of developers. The storage, retrieval, and sending of saved data is all handled by a CMF module, so no tiresome DB coding was necessary.


Lastly, I hosted it in CMF's ios and android shell so it can access camera capabilities on both types of devices.


A working mobile business app that uses mobile hardware features, operates when a network is unreliable, runs on both the iPhone, Android, and the major tablets. All in a couple of pages of code. Not bad!