This chapter provides an overview of mobile product configuration and discusses:
Mobile configuration.
Solution package contents.
Functional components.
Data.
Solution distribution and installation.
Types of models.
Mobile Configurator Packaging Tool.
Mobile machine requirements.
Package maintenance.
PeopleSoft Enterprise Mobile Configurator makes offline product configuration possible for field sales personnel who must configure products without benefit of a run-time connection to the enterprise server.
Mobile components of Advanced Configurator allow a mobile user to download complete and up-to-date product and model information for later local machine configuration. When the user reconnects with the enterprise, he or she can upload the new configurations and transaction artifacts to the enterprise for storage or further processing.
Mobile Configurator components support the creation and maintenance of a browser-based application that solves an business problem requiring off-line configuration.
In this document, the collection of application pages, models, and supporting files that solve an business problem, such as product configuration or product recommendation, is referred to as a Solution. For file management by the Packaging Tool, the Solution is defined in a Solution Package file having the extension .cci. The Package contains a list of files and their storage locations.
The end product of the Packaging Tool is an installer of component files called the Solution Installer. Generated from the Solution Package, the Solution Installer is an .msi (Microsoft installer database) file containing all of the files and information that the mobile user needs to install and run the Solution on a local system installed with PeopleSoft Mobile Configurator. The .msi is the file that is distributed to the field, either by email attachment, media, or download.
Note. Model requirement: To accommodate a local, offline, run-time environment, models intended for mobile deployment must have data internal to the model. The Configurator Administration console provides a function to enable the modeler to quickly internalize model data.
From the Solution Package (.cci), the Packaging Tool creates a Microsoft installer database file (.msi) containing all of the components needed to run a Configurator application on the Mobile client:
Model files (run-time model).
Pages (<modelpage1...n>.jsp).
Images.
Directory information for the above Solution files.
Installation information for all of the above.
Model files, pages, and images are compressed into the .msi install file. Because the .msi file contains an install script, double-clicking on the file executes a Windows 2000 installation program that provides the mobile user with a ready-to-run application for configuration.
Mobile Configurator components are:
Mobile Configurator Packaging Tool—Allows a modeler or model administrator to create an install file containing all of the components required to carry on a customized PeopleSoft configuration application session on Mobile Configurator.
Mobile Configurator client—The client application from which the mobile user configures the product. Online documentation accessible from the application describes its purpose and how to use it.
Transfer Service—Allows transfer of configuration data from the Configurator Engine to other third-party ERP systems for further data processing. The Transfer Service API includes sample implementations to aid in customizing data exchange.
The Mobile Configurator is designed to manage the various bodies of data with minimal intervention. For example, the Packaging Tool acts as a central management point for model, site, and related support files. The Mobile client offers mobile users straightforward upload and download of configurations. And for modelers, an internalizing function eliminates the need for database-referenced model data.
Data specific to configuring the product is in the form of:
Domain member and constraint data.
Domain-member attribute data for display and downstream use that is not handled by the Configurator engine but is needed for configuration.
Accessing this data for configuring in a mobile environment requires that the data be local—specifically, it must be internal to the model. You can internalize data in one of two ways:
Assign domain member values manually in the Visual Modeler, OR
Use the model internalization function of the Advanced Configurator Administration Tool to automatically populate domain member values from an external database, such as the enterprise central product store. Then re-compile the model and update the Solution document with the new model version.
The internalization function lets you transfer the latest body of product data from the enterprise database to the model file itself.
Non-configuration data that is referenced in the JSPs is included in the Solution by the site developer rather than the modeler or model administrator.
Configuration data is the result of a configuration session. The mobile user saves the configuration to local storage for later upload to the enterprise. The Mobile client also gives the user the option of emailing the configuration.
Once uploaded to the enterprise, the configuration data can be routed for storage management, quoting, order entry, or other processing.
There are many ways to distribute the Solution Installer (.msi). For instance, you can:
Post the .msi file for online distribution by FTP or HTTP protocol.
Distribute it as an email attachment.
Transfer it using removable media.
The .msi file is an installation executable; double-clicking the .msi file installs the Solution on the mobile machine.
Note. A Solution Package will not install on a machine unless the Mobile Configurator has been installed.
At the heart of any PeopleSoft Configurator Solution is the model. A Solution may contain one or more component models, which are programmatic definitions of a product and its options, the relationships that describe and limit the combination of those options, and associated business data such as price and availability.
Often, business data, being changeable, is provided to the model at run time (during a configuration session) by an outside source such as an enterprise database. This is external data and delivers the most current information to the user. Sometimes a model’s data is stored within the model itself as internal data.
If you are packaging a Solution, you need to know if the model has external data that needs to be internalized before packaging or updating it.
If a product is particularly complex, a Solution may contain one or more compound models. A compound model describes the relationships between two or more component models that together describe the product. The description is expressed in XML; the compound model is the XML file resulting from its compilation by the Visual Modeler.
If a compound model(s) is the type of model employed in a Solution, then the subdirectory containing its .xml file is the root directory for the entire Solution, even if other parts of the Solution, including its component models, are located elsewhere. This is true because the compound model XML file contains the locations of its component models.
The Mobile Configurator Packaging Tool allows you to:
Create and maintain a Solution Package—a list of the files that comprise a Solution.
Create a Solution Installer for the purpose of distributing Solution Package files to a mobile sales force.
Creation and maintenance of a Solution Package entails managing the name, version, and location of the desired files, as well as adding and deleting files. While relative path information is automated for core Solution files, you have the flexibility to define and manage the relative organization of miscellaneous files within a Package.
The tool gives you these basic capabilities:
Create new Solution Packages.
Modify existing Solution Packages.
Generate Solution and model-update installers.
Inputs required by the Mobile Packaging Tool for packaging a Solution are:
Model files and the image and page files of the Solution UI.
Locations of the aforementioned files for purposes of copying and compressing them into an install package.
The tool’s output is a .cci file (a description of the Solution contents) and an .msi file (the Solution Installer).
Workflow is as follows:
A new Solution is created, or files in an existing Solution change, requiring an update to field installations. Changes can involve the model itself (such as constraints and relationships), model data (domain members and pricing), or the presentation pages (JSP and images). Any external data is internalized to the model.
The model administrator uses the Packaging Tool to describe the Solution files (.cci) and create a Solution Installer (.msi) from the description, thus replacing the previous installer with one containing the most current files.
The Solution Installer is transferred to distribution media, a designated distribution location on the enterprise server, or is simply attached to an email.
The mobile user receives the new installer by email, media, or download from the enterprise server, and installs it. While connected to the server, the mobile user can upload configurations to the enterprise server.
The mobile user double-clicks on the .msi file and the Solution application is automatically installed on the local machine.
Now disconnected from the enterprise server, the mobile user launches the updated Solution application.
Mobile configuration data flow
In order to run the Configurator Solution installed by its associated Solution Installer, the mobile machine must meet the following requirements:
The operating system is Windows 2000 or Windows XP.
Mobile Configurator must be installed.
PeopleSoft provides a separate installer for Mobile Configurator.
See PeopleSoft Enterprise CRM 8.9 Installation Guide
Solution update and maintenance requires more thoughtful care when maintaining models hosted to numerous off-site machines beyond your control and oversight.
The site or model developer can specify options in the Configurator to allow mobile users the flexibility of choosing which Solution version to use to create or edit a configuration. Such a choice allows the mobile user to modify existing configurations that have been superseded by product updates. In addition, simply opening an existing configuration for verification requires that it be restored in the UI it was created with.
See Specifying Solution Information Properties.
Designating Solution versions is a matter of specifying the version policy settings in CalicoUI.properties (for component models) and CalicoNA.properties (for compound models). You should be aware that the Mobile client gives the mobile user the choice of whether or not to use the compile version of the requested configuration.
The Packaging Tool allows you substantial flexibility in creating and updating installers that track changes throughout the life of a given Solution. To avoid version confusion and file-sharing problems, it is important to follow these guidelines:
Don't put the same files in multiple packages.
Any file that is shared between two packages has the potential for causing installation dependencies. Because the installers created by two such Packages will overlap on the shared file. Thus, a machine with both packages installed will fail to properly un-install either package. To avoid this problem, keep all shared files in one package. You can then upgrade this package as needed and send the upgrades to the field in conjunction with other packages.
Avoid putting more then one Solution in a package.
This will greatly reduce the risk of Solutions overlapping other packages.
Keep and maintain your Packages for the life of a Solution.
When packaging a Solution for the first time, keep the Package for later updates. Once a new version of the Solution is available, update the original Package file with the changes to the Solution. In this way, the new installer will update previous installations on the mobile machine.
The Solution Installer will upgrade the previous version because it contains identification codes unique to each Package and installer. The Packaging Tool manages these codes for you. Every time you save changes to a Package, the codes are updated. These codes enable the Microsoft installer application to distinguish between alternate installations of the same Solution or upgrade previous installations of the Solution.
When you create a Model Update Installer, be aware that you are creating a new product installation.
The menu command Tools, Create Model Update Installer creates a new Model Update Installer, which will appear as a separate installer (.msi) on the mobile user’s machine. By contrast, generating an installer with Tools, Create Solution Installer generates an installer that simply upgrades any previous version of that Solution on the mobile machine.
The Packaging Tool uses two templates, both of which are .msi files:
blank.msi
confirm.msi