Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The POS system is designed to run with its own database in a totally stand-alone mode. This was done so that even if the machine is totally cutoff from the network it can still operate. But it may used with a shared database, for instance if you want to run a webstore simultaneously using the same stock. You may even use the same machine to run both (ERP&eCommerce + POS) using the -both paramerer, see below.

To run OFBiz in the POS "mode" just run:

Code Block
java -jar ofbiz.jar -pos

or, at least on Windows for now
startofbizPos

Note that this uses the pos-containers.xml file instead of the ofbiz-containers.xml file and by default it doesn't load a web container (Tomcat by default), but it can be changed by adding the catalina-container block. This allows you may also run the command below which uses the both-containers.xml allowing to run the POS conccurently concurrently with Web eCommerce and Back Office.

Code Block

java -jar ofbiz.jar -both

or, at least on Windows for now
startofbizBoth

The Store for the POS needs slightly different settings than for a web store. There is an example POS Store in the demo data. One of the differences to note is that the POS Store should always have the Is Immediately Fulfilled field set to Y, whereas for an online store or other mail or phone or store it should be set to N. The POS Store should also have Manual Auth Is Capture set to Y, and typically Check Inventory and Require Inventory should be set to N.

There are many files under the specialpurpose/pos directory that you may want to customize as you set it up.

  • The receipt templates are .txt files in the config directory there.
  • The screens are configured through XUI in various files under the screens/default directory. There is a default set for 1024x768 screen (in default directory), and a 800x600 preset. To use 800x600, you must modify 3 properties in xpos.properties

...

  • : StartClass, ClientWidth and ClientHeight, but don't touch the other parameters...
  • Button events are configured in the config/buttonevents.xml file.
  • The POS is translatable, see the config directory and for more the OFBiz-POS page

You may want to change some default options following your needs.
*In the parameters.properties file

    • By default the POS use a virtual alphanum keyboard and a virtual numeric pad. If you prefer to use a real keyboard, change the ShowKeyboardInSaveSale parameter. You may even swap dynamically back and forth from the Admin Panel using "Virtual" button. But then the parameter will not persist.
    • There is a related special parameter SwipWithCard which is, for now, used only to swip card numbers in the Client Profile dialog box (
    • If you use an external system for credit cards payments, you may find convenient the PosRefNum parameter wich allows you to not enter payments references
  • In pos-containers.xml and both-containers.xml (depending if you use one or the other)
    • xui-session-id : the POS terminal identifier (used during synchronisation for instance)
    • facility-id : related to the name you set for your facility in ERP side
    • look-and-feel : see http://www.jgoodies.com/Image Added

The localisation is done dynamically using the platform default. But it needs a 1st launch to be set (it dynamically change the XUI's xpos.properties file). It also takes care of possible font issues. But for now only for Chinese (see posstyles_zh.xml).
You may override this behavior (for instance to test) using

  1. the languageSuffix parameter in the framework/guiapp/config/xui.properties file.
  2. forcing the JVM language using "-Duser.language=zh -Duser.country=CN" from the command line

There are example synchronization settings in the data/PosSyncSettings.xml file, which is just an Entity Engine seed data file that gets loaded into the database. This example is for 3 tiers: a Main Central Server (MCS), a Per-Store Server (PSS) and the Point-Of-Sale client (POS). There are example sync settings to do 4 data moves including MCS -> PSS, PSS -> POS, POS -> PSS, and PSS -> MCS. This uses the Entity Synchronization service in the Entity Engine and the XML import file for this has pretty good comments about what does what. Note that the services shown in the example are configured to use the location "entity-sync-rmi" which is a pre-defined location specified in the serviceengine.xml file. Note that to help avoid duplication of sequenced IDs in the data that is synchronized up the chain from the POS terminals a unique prefix should be setup for the Entity Engine using the sequenced-id-prefix attribute of the delegator element in the entityengine.xml file.

Note that OOTB the login/pwd are 1/1 (or 2/2 for a non manager person) and you must open the register before being able to play with the POS. To open the register click on the MGR button on the top and near the right, and then on the "Open" button on the right side of the screen near the top.

IF If you need to do some JavaPOS settings you may find this page interesting http://docs.ofbiz.org/x/0AM

If you need more informations see the OFBiz-POS page