Creating a Mobile Notes application with Domino Everyplace Enterprise

This article introduces Domino Everyplace Enterprise (DEE) for mobile and wireless devices. It explains how to install DEE and includes example code you can use to develop a test Mobile Notes application for a Palm OS-based PDA device.

Share:

Christopher Pepin (christopher_pepin@us.ibm.com), IBM certified Senior information technology specialist, Lotus

Christopher Pepin is an IBM certified senior information technology specialist for IBM Software Solutions for Lotus in New York City. In this role, he assists customers in translating business needs into technical system solutions. Christopher is a CLP Principal Developer in R5 and has over eight years of consulting experience specializing in Lotus and IBM technologies. He received his M.S. in Computer Science from the University of Connecticut. When not working, Christopher enjoys relaxing with his wife, Elizabeth, and six-month old son, Matthew.



Carl Kriger, Senior Product Manager , Lotus

Carl Kriger is Senior Product Manager of Lotus mobile products and is responsible for overall product definition and direction. In this role, Carl focuses on total solution offerings designed to provide customers with the highest value messaging capabilities from a mobile perspective. He is involved in setting product direction, interfacing with all aspects of the Lotus messaging business, and representing Lotus messaging software with customers and at industry events worldwide. Carl also acts as the Lotus point person for SyncML. Carl received his Hi-Tech MBA from Northeastern University and his areas of expertise are mobile and wireless, Notes/Domino application development, Web languages, and Web security. Off-line, Carl spends much of his time with his wife, Joanne, and playing with his three children, Ian, Nevin and Erin, as well as attempting to break 100 on the golf course on a monthly basis.



01 July 2002

Just few years ago, PDAs, handheld PCs, smart phones, and two-way pagers were viewed as gadgets and were largely unsupported by IT organizations. In recent years, however, these devices have proven to be powerful tools for optimizing communications and improving responsiveness to customers in ways that dial-up laptops cannot. As a result, many companies now embrace mobile devices as standard issue for their employees.

As useful as these devices are, they are of little use without software to connect them to corporate information systems. For an increasing number of companies, the Lotus Domino family of servers is used as the foundation for collaboration, e-business, corporate messaging, and Web-based transactions. To extend the reach of Domino to include mobile and wireless devices, Lotus introduced the Domino Everyplace line of products. Building on the previous capabilities of Mobile Services for Domino, Domino Everyplace provides a comprehensive platform available for secure, reliable, and easy-to-administer mobile and wireless services. Domino Everyplace supports WAP phones, PDAs, handheld computers, pagers, and digital phones supporting SMS messaging. The Domino Everyplace product line includes the following products:

  • Domino Everyplace Access, which provides real-time, wireless access to corporate email, calendars, directories, and WAP-enabled Domino applications
  • Domino Everyplace SMS, which allows applications to automatically send email messages, alerts, and notifications to pagers, mobile phones, and other SMS devices
  • Domino Everyplace Enterprise, which allows organizations to create Mobile Notes applications that run locally on the mobile device and sync with Domino applications and data on Domino servers

This article focuses on Domino Everyplace Enterprise (DEE). It explains how to install its components and how to develop a test Mobile Notes application and install it on a Palm-compatible device. You can download the test application from the Sandbox.

This article assumes an intermediate level of experience developing Notes/Domino applications with Domino Designer. It also assumes a basic understanding of Palm-based PDAs, their interfaces and capabilities. Knowledge of Pocket PC and Symbian-based PDAs will be a plus if you want to leverage what you learn in this article to build mobile applications for those platforms.

What is Domino Everyplace Enterprise?

In simple terms, Domino Everyplace Enterprise, or DEE, is server-based synchronization software that allows companies to easily develop, administer, and extend Domino collaborative applications to PDAs. Combined with the Mobile Notes client, it provides mobile users access to their critical Domino applications anytime, anywhere. DEE is designed to provide both wireless and wired sync solutions to mobile workers quickly and easily by leveraging the collaboration power of Domino. It is easy to set up, deploy, and administer; and it includes an application development environment so that you can easily create and extend business applications to mobile and wireless devices.

Domino Everyplace Enterprise consists of:

  • The Domino Everyplace Enterprise Mobile Application Design database
  • The Domino Everyplace Enterprise server
  • The Mobile Notes client

The Mobile Application Design database

The Mobile Application Design database allows Domino developers to design and build applications for mobile devices using the familiar Domino Designer environment. The database acts as a repository for the internal design elements needed by the DEE compile process to translate Notes design elements created as the design of the mobile application, into raw XML. (The compile process is covered later in this article.) Previously, to develop applications for mobile devices, you often needed to learn an entirely new development environment with a specific focus on C, C++, Java, or a various other proprietary computing languages. With the introduction of the Mobile Application Design database, any Domino developer can quickly and easily develop full-featured mobile applications.

The current release supports the Pocket PC, Pocket PC 2002, Symbian, and Palm OS platforms. The system requirements for the Mobile Application Design database are:

  • Windows 98, 2000, or NT 4.0 with server pack 5 or higher
  • Domino Designer 5.0.6 or higher
  • Notes client 5.0.6 or higher
  • 40 MB of disk space
  • 128 MB of memory

The Domino Everyplace Enterprise server

Domino Everyplace Enterprise server allows organizations to provide both wireless and wired synchronization solutions to mobile workers. The Domino Everyplace Enterprise server is essentially a Domino server with additional synchronization services. The synchronization services, which are based on industry standards XML and SyncML, allow mobile workers to work off-line and synchronize their applications and data with Domino Everyplace Enterprise servers using a wireless or hardwired connection. Along with the sync engine for Domino, there is an Administration component that allows easy management of both mobile workers and applications. Users authenticate with the Domino Everyplace Enterprise server using their Domino user name and HTTP password.

The system requirements for Domino Everyplace Enterprise server 2.6b are:

  • Microsoft Windows 2000 or NT 4.0 with service pack 5 or higher
  • Domino 5.0.6a or higher
  • 1 GB of disk space
  • 512 MB of memory

The Mobile Notes client

The Mobile Notes client is essentially a thin Notes client for a mobile device providing a subset of the capabilities of the more robust Notes client. More specifically, Mobile Notes is a real-time runtime environment providing Notes-like functionality to the end user, as well as providing the communications management and data control of synchronization requests for both Domino data and applications between the device and Domino servers.

An under-the-covers look at the Mobile Notes client reveals that it consists of three major components. First, there is the user interface (UI). This is basically an XML browser with constructs to render data in UI components such as a view or form along with the ability to show other elements such as hotspot buttons and form or view actions. There is also a library of logic that provides the execution of @Functions and @Commands built using Domino Designer. This means that, for example, a view action button with an @Command([Compose]) behind it will execute this command at the time the user clicks the button by calling the library of logic and creating a new document along with the UNID. The second component of the Mobile Notes client is the datastore. DB2e from IBM is used for storing all the data in the Mobile Notes client. And the third component is the synchronization manager and the messaging queue. The current release of Mobile Notes is available for the Pocket PC, Pocket PC 2002, Symbian, and Palm OS platforms.

The system requirements for the Mobile Notes clients are:

Mobile Notes for Palm

  • Available handheld memory: 1.5 MB
  • Palm Desktop 4.0 or higher
  • Palm Emulator (POSE) 3.0a.7 or higher with a 3.5 OS ROM and 8 MB of memory
  • Palm OS 3.5 or higher
  • TCP/IP connection from PDA to network
  • One of the following Palm or Palm-compatible devices:
    - PalmVx
    - Palm IIIxe
    - Palm m500
    - Palm m505
    - IBM Workpad C3

Mobile Notes for Pocket PC

  • Microsoft ActiveSync 3.5 of higher
  • Pocket PC version 3.0 or higher
  • 16 MB RAM on the PDA
  • TCP/IP connection from PDA to network
  • One of the following devices:
    - Compaq iPaq running either Pocket PC or Pocket PC 2002
    - Casio Cassiopia running either Pocket PC or Pocket PC 2002
    - Any device Pocket PC 2002 device

Mobile Notes for Symbian

  • PC Suite from Nokia Version 1.01
  • Serial Cable
  • Nokia Symbian OS 6.0
  • Nokia 9210

Installation

To begin, you can install the Mobile Application Design database and the Mobile Notes client.

Installing the files on your PC

The installation process uses InstallShield and is quick and straightforward. When the installer program is loaded, you are presented with a series of checkboxes for the software you wish to install. The options are:

  • Desktop
  • Device
  • Server
  • Sync Router

Desktop refers to the Mobile Application Design database, which is used to develop mobile applications and contains the framework of your mobile application as well as the necessary files used in the compile process.

Device refers to the Mobile Notes client. This option installs the device-appropriate files that make up the Mobile Notes client on the user's PC; for instance, in the case of a Palm device, selecting Device installs the necessary PRC files. These files then must be synched to your PDA device to complete the install process. You use the standard sync software that ships with your device to do the initial sync to install the Mobile Notes client. For example, you use HotSync to install the Mobile Notes client for a Palm and ActiveSync to install the Mobile Notes client for a Pocket PC. Also, if your device is connected to the desktop at the time of the install, the Mobile Notes client will be installed immediately. However, it's possible to install the Mobile Notes client at a later time, because the install process for Mobile Notes simply copies the appropriate files to your hard drive and waits the next sync to your PDA. Once Mobile Notes is installed on your PDA, the local sync software such as HotSync or ActiveSync is no longer needed to synchronize your mobile applications. All subsequent synchronizations occur directly with the DEE server.

Server corresponds to Domino Everyplace Enterprise server software and is used to install the sync code on an existing Domino Web server. The DEE administration database and log files are also installed with this component.

Sync Router corresponds to the sync router software, which is installed on the PC to connect the handheld device with the Domino Everyplace Enterprise server through a serial port connection. This is only necessary when synchronizing the PDA to the remote DEE server using the desktop as a proxy or passthrough configuration.

For the purposes of creating a test mobile application and installing it on a Palm-compatible device, you can select the Desktop and Device install options. When you proceed with the install, you'll be asked to provide the path to the Notes data directory. After you specify the directory, the necessary program files are installed. For the complete list of files that are installed, consult the Domino Everyplace Enterprise Mobile Application Developer's Guide, which is installed in the Notes\Data\Help directory as part of the product installation.

Once the installation completes, you should complete a few tasks before moving on to building your mobile applications. First, launch the Notes client and bookmark the Domino Everyplace Enterprise Mobile Application User's Guide and Domino Everyplace Enterprise Mobile Application Developer's Guide. These Domino databases were installed in the Notes\Data\Help directory as part of the product install.

Next, you should bookmark the Mobile Application Design database. This Domino database was also installed as part of the software install and is located in the Notes\Data directory. Its file name is msddesigner.nsf. You'll use this database to copy the necessary internal design elements to the Domino application you want to mobilize. These internal design elements are necessary to compile, test, and publish your mobile application.

Finally, you'll want to create a Domino Everyplace log database. As part of the software install, a Domino database template, called Domino Everyplace Log (deslog.ntf), was installed in the Notes\Data directory. Create a new Domino database using this template and save it to the Notes\Data directory with a file name of deslog.nsf. This database will be used to store log information related to the creation and compilation of Mobile Notes applications. The logging options are controlled by the NOTES.INI file setting MSDSyncLogging=n. The value of this variable is a bit-coded decimal number with the following available logging options:

1 - Send entries to the Notes log

2 - Log the option settings at the start of every sync

4 - Log the cache content at the start of every sync

8 - Log successful document operations

32 - Log the filter contents at the start of every sync

You can add the options together to provide various logging results. For example, to log cache (4), filter content (32), and successful document operations(8) you would use MSDSyncLogging=44.

Installing the Mobile Notes client on your handheld device

As previously mentioned, once you've installed the device files on your PC and prior to running any mobile applications, you need to sync your PDA with your PC to install the appropriate files on your handheld device. For instance, for Palm-compatible devices, the client consists of nine PRC files that are installed in the Lotus\Notes\PRC directory when you select the Device option during product installation. They total about 916 K in size. The PRC files are:

  • db2ecomp.prc
  • db2eruntime.prc
  • isynce.prc
  • imsaconfig.prc
  • imsanotes.prc
  • mnotes.prc
  • pbspkcs11.prc
  • wbxmllb2.prc
  • wbxmllib.prc

For example, we have a Palm V with the HotSync software installed on my PC and after we completed the install process for the Mobile Notes client, the nine PRC files were automatically added to the Palm install tool. When we performed a HotSync, the Mobile Notes client was installed on my Palm V. The install is completed when the m-Notes icon is visible on the Palm application launcher screen, as shown below:

Figure 1. Mobile Notes as it appears on the Palm
Mobile Notes as it appears on the Palm

Preparing the development environment

You might find it useful to install a Palm emulator on your workstation in order to test Mobile Notes applications. Using an emulator will eliminate the need to sync with the Palm-compatible device in order to test the application. The Palm OS emulator is available as a free download from Palm. we used this emulator extensively throughout the course of developing the test application that will be introduced in the next section.


Understanding the test application

To demonstrate the capabilities of the Mobile Application Designer, we built a test application to track time and expenses for consulting engagements. The application has a Time and Expense form for capturing the client name, week-ending date, number of hours billed, and total expenses. The client name field is a "self-generating" keyword field that allows the user to select from previously entered clients as well as enter new client names. A hidden view is used to produce the keyword list. The week-ending date field allows a user to select the date from a calendar control.

In addition to the forms, the application has two views that are visible to the user. One view sorts T&E documents by client name and the other view sorts the documents by date. Action bar buttons allow the user to create a new document and also allow the user to delete selected documents.

Finally, the application home page launches when the application is opened and contains buttons to create a new expense report entry as well a button to open each of the two views mentioned above. The home page was built using a Notes form.


Overview of the process

Now that you understand what DEE is and how to install it, you're ready to start creating an application. There are six basic steps you go through when creating, publishing, and synching a Mobile Notes application:

  1. Build
  2. Compile
  3. Test
  4. Publish
  5. Deploy
  6. Synchronize

Building the mobile application

First, remember that a mobile application is the same as a Notes application in that the design and data are separate. In this section, we'll describe how to build the design elements of your mobile application. The data is separate from the design and will be synchronized when a user actually synchronizes with the Domino Everyplace Enterprise server. The sync process is similar to Notes replication in that a primary role of the DEE sync engine is data management. In other words, document additions and deletions are made to the NSF file just as you'd imagine (a new noteID is created or removed from the Notes database as appropriate), while document modifications are merged to existing documents as part of the sync process. Also, conflict documents are created as necessary.

To begin building your application, launch Domino Designer. Developing a Mobile Notes application is like developing any other Domino application. There is no special template or starting point. In fact, building a Mobile Notes application consists primarily of right-sizing the design elements used by Notes and Web clients that would be too big and bulky to be rendered on the small PDA screen. You can leverage an existing Domino database or create a new, blank database from scratch. For the purpose of the test application, we used a new local database created from scratch.

Keep in mind that there are a number of features of Domino applications that are not available in Mobile Notes applications. A complete list of supported design elements and features appears in the Domino Everyplace Enterprise Mobile Application Developer's Guide. At a high level, Mobile Notes supports an unlimited number of forms with the exception of view templates, search, and search results forms. Views and view actions are also supported but simple actions are not supported in view columns. The Mobile Notes client does not support LotusScript, Java, or JavaScript. However, over 100 @Functions and @Commands are supported, so you have a lot of capabilities at your fingertips.

Perhaps the biggest difference between PDA devices and PCs is the size of the screen. You'll need to scale down your Domino applications so they fit within the bounds of the screen. Font sizes of 9 point or smaller are recommended for all form and view elements; 8 point Default Sans is a good choice in many cases. Also, the lines on forms should not exceed 2 inches in width. The maximum number of lines on forms is 13 if action bar buttons are not used. If action bar buttons are used, the limit is 10 lines. It is possible to build forms longer than what is viewable on the PDA, but then the user will need to scroll the form while using the mobile application. Scrolling is supported on the PPC and Symbian-based devices, but it is not possible to scroll a form on Palm-based devices. (However, you can use the @Command([ViewSwitchForm]) command to switch forms and display additional fields or form data.)

For the time and expense reporting test application, we created a simple form with the following four fields: client name, week-ending date, number of hours billed, and total amount of expenses. The form name is fmTandE. The form design is shown in the following screen:

Figure 2. Fields in the Time & Expense form
Fields in the Time & Expense form

We used a table to make it easy to control the layout of the fields and to make the width conform to Mobile Notes' requirements. ClientName is a ComboBox field with a keyword formula of @Unique(@DbColumn("notes" ; "tande.nsf" ; "vwClients" ; 1)). "Allow values not on the list" is also checked in the field properties. Note that the database file name is specified in the @DBColumn command even though the lookup is performed to the same database. This is required by Mobile Notes.

The remaining fields are straightforward. WeekEnding is a date field that is set to use the calendar/time control. Hours is a number field, and Expenses is a number field with currency formatting.

You can use action bar buttons in Mobile Notes applications, although in keeping with the style guidelines for PDA applications, they are displayed at the bottom of the screen rather than at the top. It's not necessary to create an Edit action bar button since by default, Mobile Notes opens all documents in Edit mode.

We created a Close action bar button to close the document. In this case, we wanted to control where the user ended up after saving the new document. The standard @Command([FileCloseWindow]) formula command will not work in Mobile Notes unless a view is used to open the document. To get around this, you can build a navigator to serve as the application's home page. For the example, we created a navigator called fmNavigator. The command @Command([Compose] ; "" : "tande.nsf"; "fmNavigator") is used for the Save action bar button to prompt the user to save the document and then return the user to the navigator, which in this case is the application's home page.

As the home page, the form fmNavigator appears when the application is launched from the Mobile Notes workspace. The form has three hotspot buttons-one to create a new expense entry and two others to open views. Here's the form in Domino Designer:

Figure 3. Home page form
Home page form

The two views are straightforward. One is sorted by client and the other is sorted by the week-ending date. Again, we had to be careful not to make the view too wide or it wouldn't fit on the Mobile Notes screen without scrolling. (However, if the view is wider than the screen size of the PDA, the view will scroll horizontally, just as it will scroll vertically if there are more documents than fit on one screen.) We also wanted to provide a means to delete documents at the view level, so we created a view action button with the following code to perform this function:

@If(1 = @Prompt([YESNO];"Delete"; "Are you sure you want to delete the selected documents?"); @Command([EditCut]);"")

We created one additional view, which is hidden, named vwClients. The ClientName field on the fmTandE form uses this view to produce the self-generating keyword list.

To summarize, the time and expense application consisted of two forms and three views. After testing the application on the Notes client, we were ready to compile it for Mobile Notes.


Compiling the mobile application

Compiling the Mobile Notes application is a straightforward process. First, open the Mobile Application Design database and click the Create Mobile Application action bar button in the view. You enter the title, design name, server, and database in the Mobile Application Design form that appears. You leave the server name field blank for local databases.

Figure 4. Mobile Application Design form
Mobile Application Design form

After entering the required information, click the Create Mobile Application Compiler Form action bar button to create the mobile application framework in the target database. In the background, several views and forms are added to your target Domino application automatically. Do not modify or delete these design elements as they are necessary for the DEE server software to properly synchronize your mobile application with the Mobile Notes client. In essence, what is happening here is that internal design elements are being copied to the target application to be used by the compiler process. Also, the Mobile Application Compiler document is created during this process. If the process is successful, you will be asked if you want to open the Mobile Application Compiler document. Click Yes to open this document and continue with the compilation process.

Figure 5. Specifying elements on the Design tab
Specifying elements on the Design tab

The Mobile Application Compiler document is your primary interface with the mobile application definition. First, you select the platform you're building the application for using the keyword field on the Basics tab; for our example, select Palm. If you were building an application for the Pocket PC or Symbian platforms, you'd select the appropriate platform from the list.

Next, complete the design information on the Design tab. On this tab, select only the mobile forms and views, which were created using Domino Designer, to include in the mobile version of the application. You also specify the default form and home page for the application on this screen. For the test application, we selected the forms and views created above. For a real-world application, this is not likely to be the case. For example, assume you have an existing, production Domino application that you want to make available via Mobile Notes. It's unlikely that the existing application would lend itself to a Mobile Notes application without modifications. You would add new views and forms specific for Mobile Notes. Only these Mobile Notes–specific design elements would then be included in the Mobile Application Compiler form. This is an extremely powerful feature in that it allows the same Domino application-and its data-to be accessed from Notes clients, Web browsers, and Mobile Notes clients. Typically then, the mobile design elements are a subset of the application's design elements and they make a subset of data available to the Mobile Notes client.

At this point, we've defined the mobile application; the next step is to compile it. To compile, select the Compile & Save\Design and Documents action bar button. When the application is compiled, the Notes elements listed in the Compiler document are translated into raw XML, which is then stored as a file attachment in the target database. This XML output from the compile process is what is actually synchronized to the PDA during a sync request, not the Notes design elements. Behind the scenes, the Notes client uses the Lotus XML Toolkit to convert the design elements into an XML file. The resulting XML is then parsed and any error messages or warnings appear on the Compile Results tab. The result of the compile process is a file attachment stored in the current database, which allows the file attachment (or mobile application) to reside in the NSF file structure, benefiting from Domino features such as application level security and replication.

After specifying the forms and views and compiling, click the Mobile Fields tab. On this tab, you specify the list of fields to be included in the Mobile Notes application.

Figure 6. Specifying fields on the Mobile Fields tab
Specifying fields on the Mobile Fields tab

Click the Get Mobile Field List button to retrieve the complete list of fields and field references used in your mobile application. You can then add or remove fields as required by using the Add and Remove buttons. The mobile fields feature is a powerful way to send only the field items listed to the device, reducing much unwanted data on the device. Generally, only a subset of the fields contained within a Notes document are required for the mobile application, and the mobile field list provides an efficient means for the DEE sync engine to send only the field items listed, thus reducing the amount of data sent to the device. For the sample application, all the fields in the application are specified but, as with the forms and views, this is unlikely to be the case in a production application. When the appropriate fields are added and removed, click the Finalize action bar button to complete the process. By finalizing the list of mobile fields, the Form field is appended to the list automatically.


Testing the mobile application

Once the compile process is complete and you have defined your mobile fields, it's time to create a test version of the application. You can do this easily by using a utility called AppSync. Select the AppSync action bar button in the Mobile Application Compiler document to create the device-appropriate file for testing your application locally. You can think of the output from the AppSync utility as a zipped snapshot of the mobile application based on the information provided in the Mobile Application Compiler document. The AppSync utility wraps the XML output from the compile process into a device-appropriate file type; in this example, AppSync will produce a PRC file for the Palm OS. Also, it's important to point out that the AppSync utility is used to test you mobile application locally only; when you're ready to deploy the application, you will publish it to the Administration database (as discussed later in this article).

Using the output from the AppSync utility, you can test the mobile application on a device or emulator. In this example, we'll use the Palm emulator to test the application. However, you could also use the Palm install tool to add the PRC to the install queue and us HotSync to install the application on the device. To install the mobile application on the palm emulator, simply drag-and-drop the PRC file to the Palm emulator. After the PRC file is installed, you'll notice that the mobile application now appears on the device workspace. (Note that if you are using the Palm emulator you will need to refresh the screen to see the application icon.)

Figure 7. Test application icon on the Palm
Test application icon on the Palm

To test the Mobile T&E application, tap the icon with your stylus. The screen will go blank and after a short pause, the Palm application launcher will display again. Although it will appear that nothing has happened, the Mobile T&E application has been added to the Mobile Notes desktop. Next, tap the m-Notes icon and the Mobile Notes desktop appears. Behind the scenes, the zipped snapshot of the application is being unzipped into the underlying DB2e datastore under Mobile Notes.

Figure 8. Mobile Notes desktop with Mobile T&E icon
Mobile Notes desktop with Mobile T&E icon

The Mobile Notes desktop is similar to the Notes client desktop and displays all Mobile Notes applications installed on the mobile device. The application menu function on the Palm-compatible device displays a list of the applications on the device. To launch the test T&E application, tap the Mobile T&E icon with the stylus. The application's home page appears.

Figure 9. The T&E application home page
The T&E application home page

You can now use the application to create and view documents, just as you would on a Notes client. Here is a new document being created:

Figure 10. New document being created
New document being created

And here are documents in the By Week Ending view, sorted by date:

Figure 11. By Week Ending view
By Week Ending view

Navigation in Mobile Notes is intuitive and straightforward. Tap a document with the stylus to open and edit it. For views that are too wide to fit on the screen, a triangle allows scrolling to the right to view additional columns. Documents can be checked in the left margin and deleted using the Delete button. The home icon in the upper right-hand corner of the screen takes you back to the Mobile Notes desktop.


Modifying the mobile application

When you test the mobile application, it's likely that you'll need or want to modify or enhance it. To modify the design of an existing Mobile Notes application, simply modify the design of the application database (NSF file) using Domino Designer. Be sure not to modify or delete any of the design elements that the Mobile Application Designer adds automatically as part of the compile process.

Instead of opening the Mobile Application Design database as we did when creating the mobile application for the first time, it is necessary to open the actual application database (NSF file) and go to the Mobile Compiler Docs view. The Mobile Notes compiler adds this view to the application the first time it is successfully compiled. Open the Mobile T&E document in this view. You can then edit this document as appropriate, adding or removing forms, views, or fields depending on what design elements were changed. Or if you simply modified the existing design elements using Domino Designer, you just need to recompile the mobile application to update the XML output. To re-test the mobile application, follow the same procedure as outlined above to compile the application and a new PRC file will be created in the Notes\PRC folder, overwriting the previous PRC file.

Up to this point, we have built, compiled, and tested the Mobile Notes application. The mobile application still needs to be published to a Domino Enterprise Everyplace server, deployed, and ultimately synchronized with one or more mobile devices in order for the application to work and synchronize properly for end users. This article focuses on developing the application, but we'll provide an overview of these final three steps so that you understand the complete process.


Publishing the mobile application

The next logical step is to make this application available for end users to synchronize, which is called publishing the application. When you publish a Mobile Notes application, you are simply notifying the DEE software that a new application is available to be synchronized. You accomplish this by once again using the Mobile Application Compiler document, this time focusing on the Publish tab.

Figure 12. The Publish tab
The Publish tab

The necessary information is straightforward, but let's clarify the publishing process and the data. The DEE Administration database is stored on the DEE server and contains application and user configuration information for each Mobile Notes application. Publishing a Mobile Notes application notifies the DEE server that a new mobile application is available to be synchronized by placing a pointer in the DEE Administration database to the newly compiled mobile application. Next, behind the scenes, a new Application Profile document is created in the DEE Administration database. This document contains key information about the mobile application such as the location and views from which to sync data. The publish process also copies the filter document from the target application to the DEE Administration database. This filter document is used explicitly by the DEE server software at the time of a sync request to send down only the necessary documents and data.

To review each required field on the Publish tab, under Publish Information:

  • Application Name is the name of the mobile application that will appear with the icon of the application on the Mobile Notes workspace. The only restrictions on the name is that it must be unique among all other mobile application names.
  • Publish to Server is the location of the DEE Administration database. The reason for having a separate server is to provide for placing the DEE server into a DMZ-type configuration or one that involves placing the DEE server outside any production Domino application server.
  • Views/Folders for Filter is the name of the views in which the DEE server will look in order to synchronize documents. This is generally not the names of the views within the mobile application. This feature lets you use a hidden view containing only the documents allowed to by synchronized to your device.

For the deployed database information, you need to include the database location of the mobile application, including the server name and file name. Local databases cannot be published so for the TandE example, you'll need to copy the application from the local workstation to a server. Once all this information is provided, you click the Publish action bar button within the Mobile Application Compiler document to execute the actual publishing.


Deploying the mobile application

Once the mobile application is published, it's ready to deploy. As new mobile applications are published to the DEE Administration database, they appear in the New Applications view of this database. To deploy the application, go to the New Application view, open the application's document, and complete-or if the defaults are fine, simply save-the document.

A key deployment task is the assignment of users or groups to the new mobile application. You can also define multiple device types for users of the application; for example, some users might access the application from a Palm OS device while others might use a Pocket PC or Nokia Symbian device. In addition, you can create filter documents for an application. Filter documents are similar to selective replication formulas and specify the data that will be sent to a handheld devices. Filters are especially useful for Domino applications that are accessible from several clients (Notes, browser, and Mobile Notes). Because of the storage limitations of mobile devices, it's not always feasible to synchronize all documents in the server-based copy of the application with the Mobile Notes clients. Administrators can create filters for different users and even allow users the flexibility of editing the filter on-the-fly on their handheld device.


Synchronizing the mobile application

Once the mobile application has been assigned to a user, that user can go ahead and synchronize the application. First, the user must configure the Mobile Notes client. They must specify the connection settings of the DEE server, including IP address, port number, and encryption options. To change these settings, open Mobile Notes and choose Preferences - Server Preferences from the menu.

Figure 13. Server Preferences
Server Preferences

Once you have completed the one-time Server Preferences setup, the next step is to connect to the DEE Administration database and get a list of the mobile applications available to you. The result of this initial sync request produces the application digest of available applications (as assigned to you in the DEE Administration database). To see these, choose Preferences - Applications.

Figure 14. Active applications
Active applications

You can select one or more of the applications that you want to synchronize on your PDA. After selecting the application, tap the Sync button from the Mobile Notes workspace. This request authenticates you with your Person document in the Domino Directory and sends down the design of the selected mobile application (this is the XML produced from the compile process mentioned previously).

With the design of the mobile application synchronized with your PDA, you have the option of modifying the filter settings. Choose Preferences - Synchronization to view the default filter settings.

Figure 15. Default filter settings
Default filter settings

If you want to accept the default settings, you can go ahead and synchronize the data by selecting the Sync button again. This connection produces the actual data from the NSF file. With this, the mobile application is completely synchronized with the Domino application, and all subsequent sync requests only require that you open Mobile Notes and click the Sync button.


Conclusion

In this article, you've seen how easy it is to create and install Mobile Notes applications for Palm devices and discovered the basic steps you need to take to develop and roll out a mobile application. For more information on the Domino Everyplace line of products, consult the Lotus Domino Everyplace Web page.

mailto:christopher_pepin@us.ibm.com

Resources

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into IBM collaboration and social software on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Lotus
ArticleID=84805
ArticleTitle=Creating a Mobile Notes application with Domino Everyplace Enterprise
publish-date=07012002