Technical Documents

P3Expeditor System Technical Overview

Overview

The P3Expeditor system has two basic system functions:

  1. A print procurement/production database
  2. A supply-chain communication system

The Print Procurement/Production Database

This component of the system is a software program that runs on the end-users computer. The system helps users track and store information concerning print production projects that they may be managing.

The P3Expeditor system operates as an “end user” or distributed computing solution. In Enterprise (multi-user) mode, the application still operates locally on the client system(s) but accesses a shared set of data files stored in a common storage location. That “shared data folder” can be on a local area network or be hosted on the P3Software NetPlus server.

The Supply-Chain Communications System

The P3Expeditor system has tools that allow the user to generate email messages for business partners outside their firm. These messages relate to the procurement and management of the print projects listed in the user’s P3Expeditor database. In addition, other communications systems are used to maintain and license the application.

Application Operations

The P3Expeditor system’s application files are stored and operated on the end user’s local computer system. All the P3Expeditor files are stored and operate from a single file folder, with the exception of a desktop “shortcut” or “alias”. In multi-user mode shared data is also stored separately. P3Expeditor requires no registry settings to operate, that is all handled by Java.

P3Expeditor is a Java based application. This makes the P3Expeditor system truly cross-platform application, running the same executable code on both the Windows and Apple Macintosh operating systems (as well as Unix/Linux). Applications written in the Java language can run on any computer equipped with a Java Virtual Machine (JVM). The JVM takes the Java instructions from the application and converts them into instructions for whatever operating system the JVM is running within.

The core P3Expeditor Java code is compiled and contained in a single application file with the “.jar” extension. All this means that the computer running P3Expeditor must have an up to date JVM. P3Expeditor will run on computers with a JVM that conforms to the Java 1.4.1 or higher standard (we recommend using the latest available java version).

Windows based computers often need an upgrade from the old version of Java that Microsoft ships. Our standard Windows installer has a P3Expeditor installer and link to the Sun web site (www.sun.com) where Java can be obtained for free.

Macintosh OSX generally has Java 1.4.1 or better installed as part of the operating system and does not need to be updated to run P3Expeditor. However, Apple does release Java updates from time to time which should be installed.

Application Files

Windows

  • p3expeditor.jar – the main P3Expeditor application.
  • p3expeditor.ico – the application Icon file.
  • Uninst.isu – a file used by install shield to uninstall P3Expeditor.
  • .jpg files – graphics files used within the application periodically updated from the P3Server (see communications).

Macintosh OSX

  • p3expeditor.jar – the main P3Expeditor application.
  • p3expeditor.ico – the application Icon file.
  • .jpg files – graphics files used within the application periodically updated from the P3Server (see communications).

Data Files

Data files for this application are stored on the end user’s computer, except when P3Expeditor is run in Enterprise mode. All data and application and data files are expected to be in the same folder/directory with the default path:

Windows(XP, ME, 98, 2000) - "C:\Program Files\P3Software\P3Expeditor"

Windows(Vista) - See separate article on Vista installation.

Mac – "/Applications/P3Expeditor OSX Folder"

In Enterprise mode, some data files are stored in a common storage location rather than the end user’s computer. P3Expeditor creates several types of data files to store information and settings from the routine use of the system. These include:

  • All P3Expeditor versions:
  • userinfo.p3x – this file is always stored with the application and contains user identification, user settings and user licensing data. This file contains plain text data type with tags to identify various data elements.
  • suppliers – this file contains data on portfolio of suppliers that a user may use to send information to. This file contains plain text data type with tags to identify various data elements.
  • clients – this file contains data on portfolio of clients that a user may use to send information to. This data is accessed from the proposals and invoices modules. This file contains plain text data type with tags to identify various data elements.
  • Items.xml – this file contains a list of item codes that are used to classify various print jobs stored in the system. This file contains plain text data type with XML tags to identify various data elements.
  • projects.inx – maintains a list of jobs for use on the Job List and Schedules functions. This file contains plain text data type with fixed field positions. It is accessed on a random access basis for updates. (N.B. some low cost network storage devices do not access files efficiently on a random access basis. This can cause performance issues.)
  • .tpl files – these files are the text templates used by the flexi-spec system. Plain text data type.
  • .PRJ files – job Files, the file name is an 8 digit number based on the time/date of creation. This file contains plain text data type with XML tags to identify various data elements.
  • .ARC files – deleted job files.
  • Enterprise multi-user version files:
  • network.xml – Enterprise multi-user version only. This file resides in the shared resource directory and defines who may use the other data files in that directory. This file contains plain text data type with XML tagging to identify data elements.
  • .LOK files – Enterprise multi-user version only. These files are created in the shared network resource folder to prevent conflicting access to network resources.

Communications

The P3Expeditor system communicates with a public server hosted by P3Software called the P3Server. P3Expeditor generally operates independently from the P3Server and can be operated without communication services at all. The communication services, however, allow direct email communication from the application and a number of other useful services. These communications serve several purposes:

  • Obtaining and validating product licensing
  • Sending out email communications to suppliers, clients and other parties
  • Obtaining price information that suppliers have posted on the P3Server
  • Obtaining information about new product version releases
  • Obtaining new versions of the software
  • Obtaining graphics and web-links for use within the application

All communications between P3Expeditor client software and the P3Server are conducted using standard HTTP protocol. Communications sent from P3Expeditor are sent with an identifying “user agent” of “P3Expeditor/1.0”. Rather than the “Mozilla” user agent commonly used by web browsers.

Proxy Servers

P3Expeditor has built in provisions for communicating through common network Proxy Servers. The settings for this feature are displayed within the “My Settings” section of P3Expeditor. These settings include:

  • Use Proxy Settings – a simple check box.
  • Proxy Host – holds the IP address of the proxy server within the local network.
  • Host Port – Holds the port number on the proxy server that communications should be addressed to.
  • UserID – The user’s proxy server/network user name.
  • Password – The user’s proxy server/network password to authenticate outbound access privileges

Once established proxy server settings are rarely adjusted unless the user’s password changes. A set of P3Expeditor proxy server set up instructions are posted on the P3Software website.

Multi-User Networking

The P3Expeditor Enterprise and NetPlus licenses allow multiple users to share project data stored in a “shared file folder”. This folder can be on a local area network or on the P3Software NetPlus server. Each separate P3Expeditor client accesses the shared data files independently. For enterprise configurations there is no server software to operate. With Net Plus the P3Software NetPlus server hands out the files when requested.

For Enterprise configurations each client installation must be configured to access the “Shared Data Folder”. This is done through the “Enterprise” panel in the “My Settings” section of P3Expeditor. For simplicity, we advise Windows users to map a special drive letter to their storage location. On OSX it is important that the network access be turned on prior to running P3Expeditor, otherwise the user will not see his or her files. Also under OSX network servers can be found under “Volumes” rather than the area marked “network”.

When a P3Expeditor client designates a new network folder, the client will look for a “network.xml” file in that location. If none is found the client will create one and assume it is the first user in a group who will be accessing the folder. When a new network.xml file is created the user who created it is automatically added to the user list to get things started.

The network.xml file holds a list of users authorized to access the P3Expeditor data files in that folder. If a user accessing the “shared data folder” is not listed in the network.xml file, P3Expeditor will create a new user record for them with minimal rights. If the client is in the network.xml file, then they will be given privileges as defined within the file.

Network File Locking

To prevent data loss, P3Expeditor implements a file locking system for shared network resource files. These lock files are designated by the .LOK extension after their individual file names. Generally these locks are created and removed as part of P3Expeditor’s normal operations. However, there are cases where a lock may be left in place in error. The “Folders and Networking” panel of the My Settings” section of P3Expeditor contains a mechanism for viewing locks and removing them. (see help section of P3Expeditor).

User Locks

Whenever a user starts P3Expeditor in Enterprise mode, a lock is created to prevent other users from using the same username (email address is used to uniquely identify users). The lock file is created in the “shared data folder” and deleted when the user “Exits” from the program using the “Exit” function on the main application screen. It is important that users shut down the P3Expeditor using the proper “Exit” function. If a user does not use the “Exit” function to shutdown P3Expeditor they will be placed in “restricted mode” and not allowed to access job files, the next time they try to start the application.

Job Locks

Each time a .prj file is opened in read/write mode a lock is created to prevent other users from editing the file. The lock is removed when the user closes the job. As with the User Lock, if the user exits improperly or crashes the system the lock must be removed manually.

Other Locks

The projects.inx, network.xml and other files in the shared folder are also locked at various times. These locks may be manually removed if they do not automatically remove themselves due to abnormal operation.

P3Expeditor Technical Requirements

Windows

On the Windows platform any computer running Windows XP, Windows 2000 or Windows Vista can run P3Expeditor. P3Expeditor requires no Windows registry changes to run. Our installer does put an uninstall entry in the Windows registry so the application can be easily uninstalled.

Macintosh

P3Expeditor can also run on any Macintosh computer with OS 10.2 or higher.

JAVA

P3Expeditor requires the JAVA Runtime Engine, version 1.4 or higher.

Versions of JAVA have been shipped with Windows for several years. For best performance we recommend that users install the latest (free) JAVA update from www.sun.com. There is also a java checker and link to the sun download web page built into our Windows installer.

For Macintosh Computers, JAVA is distributed by Apple as part of the OS 10 operating system and updates. The current version of P3Expeditor will run on any up to date OS 10.2 or higher system.

Hard Drive Space

P3Expeditor occupies very little hard dirive space. The executable file is about 2Mb in size. 10Mb of free hard drive space is all that should be necessary for P3Expeditor and it's data files.