Jon Box

Subscribe to Jon Box: eMailAlertsEmail Alerts
Get Jon Box: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Article

Mobile Accessibility: Technology and Tools

Mobile Accessibility: Technology and Tools

There are so many cool things that can be done with .NET applications today, including extending their reach. In Part 1 of this series we looked at the technology and tools used to add mobile accessibility to Web applications using as an example Quilogy's system, which utilizes ASP.NET Mobile Controls, known as the Microsoft Mobile Internet Toolkit (MMIT) before VS.NET 2003. This month we will examine using Mobile Controls to access accounting, financial, and other information

Wireless Financials
One of the biggest benefits of Mobile MyQ is the ability to access accounting and financial information. Considering our flat, yet distributed, management structure, retrieving key performance indicators from anywhere and at any time is critical to a company in this economy.

In this area, we decided to buy instead of build. Therefore, we chose to work with Great Plains, a leading accounting software vendor. Although we have never directly used this accounting software, some of the MyQ pages are based on its data. For example, Figure 1 shows an accounting menu as seen on the Pocket PC. Each of the options is a function of eEnterprise, the Great Plains product used by Quilogy.

When retrieving information from a system, it is always beneficial to filter information based on the user's wishes, especially when considering processing time, transmission time, and the memory constraints of a small device. For example, consider the second menu option, PL Statement, which generates a Profit and Loss report. When selecting this option, the user is presented with selection criteria that will create a useful report specific to the manager's search. This criteria includes year, month, and location. Figures 2­4 show this selection page rendered by the Pocket PC Emulator, Microsoft Mobile Emulator, and the Ericsson emulator, respectively.

This page uses the SelectionList control from ASP.NET Mobile Controls for the Year, Month, and Location selections. Notice how it works differently on the three emulators ­ specifically notice the location selection. This is an illustration of one of the core benefits of using ASP.NET Mobile Controls. With no extra effort by the developer, the control knows how to interact with the device. The Pocket PC gives us a normal-looking dropdown list box. The Microsoft Mobile Explorer gives us a display that shows how a device would use softkeys. The Ericsson emulator gives us a control that is similar to a listbox.

One interesting note here is that the Accounting menu shown previously is rendered differently based on the capability of the device. In this case, the Ericsson device would not have Billable Hours and Industry Chart (the third and fourth menu items). This is because these reports display dynamically created images and a typical cell phone will not have a markup language that supports this feature. As a result, we took advantage of ASP.NET Mobile Controls' ability to programmatically detect device capabilities to modify the menu.

Figure 5 shows the results of the Billable Hours and Industries report pages (with artificial data in this case). The ability to pull this type of graphical presentation should please Pocket PC users. For ASP.NET developers, the ability to create images programmatically is supported in the .NET Framework. This also applies to the ASP.NET Mobile Controls environment since it simply extends an ASP.NET application.

Other Controls of Note
There are a good number of controls that ASP.NET Mobile Controls provides; however, several are worth a quick mention.

  • Validation controls are included and have the same benefits as their ASP.NET relatives.
  • The Image control, as mentioned earlier, provides several presentation alternatives based on the device capability.
  • There is a nifty Calendar control that also gives different renderings based on the device.
  • The PhoneCall control is a link that allows the user to initiate a phone call on a device that supports voice calls. If not, it allows for alternate text.

    From this quick list, you can see that there is a lot you can do with ASP.NET Mobile Controls.

    More Functionality Provided by Pocket PC
    If you refer back to the PC version of MyQ, you'll see something called OnQ, which is located in the top left corner. You will also notice that the first menu item of the Mobile MyQ page is OnQ. Only Pocket PC­type devices will show this item on the mobile menu because it requires the support of Windows Media Player. (Mobile Controls gave the application the ability to show or hide the menu option based on the capability of the device.) OnQ is Quilogy's internal newscast that keeps employees current on company direction and news, new technologies, and employee success stories. With this capability, employees with Pocket PCs can watch Quilogy news at any time.

    Conclusion
    Using ASP.NET Mobile Controls is a great way to give your users access to important information from many mobile devices using one set of code. This is not "bleeding-edge" technology, as demonstrated by Quilogy's implementation. We further attempted to show that this is an extension of Visual Studio .NET and ASP.NET development and thus provides for reuse of business logic developed for your existing Web applications. We would recommend that you look at the resources below in order to further explore ASP.NET Mobile Controls' value to your company.

    In coming months, we will look at the mobile application landscape and drill down into the mobile technologies provided by .NET. We look forward to your feedback on what you are doing, where you are going, and what you see out there as opportunities and roadblocks.

    Resources

  • The Official ASP.NET Mobile Controls site: http://msdn.microsoft.com/vstudio/ device/mitdefault.asp
  • GotDotNet ASP.NET Mobile Controls site: www.gotdotnet.com/team/mit
  • MSDN WebCast on ASP.NET Mobile Controls: www.microsoft.com/usa/webcasts/ondemand/513.asp
  • Microsoft Official Course 2514: www.microsoft.com/traincert/syllabi/2514BFinal.asp
  • Microsoft Mobile Device Developer: www.microsoft.com/mobile/developer/default.asp
  • LearnMobile.net: www.learnmobile.net

    Emulators

  • Pocket PC Emulator (eMbedded Visual Tools 3.0): www.microsoft.com/mobile/downloads/emvt30.asp
  • Microsoft Mobile Explorer Emulator: www.microsoft.com/downloads/release.asp?ReleaseID=30578
  • OpenWave: http://developer.openwave.com/download/index.html
  • Ericsson: www.ericsson.com/developerszone
  • More Stories By Jon Box

    Jon Box is an Architect Evangelist in Developer & Platform Evangelism with the Microsoft Corporation. He coauthored Building Solutions with the Microsoft .NET Compact Framework, published by Addison-Wesley, and blogs at http://blogs.msdn.com/jonbox/default.aspx.

    Comments (0)

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.