Implementors Handbook

Documentation for implementors of OpenVPMS

Installation Documentation

This documentation is all community contributed. Feel free to contribute your own documentation to the website so that other users can benefit. If there is no documentation for your operating system please use the windows install docs as a guide and then contribute back the documentation to the community for your operating system.  

Windows

OpenVPMS Installation (Windows)

Important Note- when installing OpenVPMS you should be logged in on an account that has administrator privileges!

Download OpenVPMS Installation Files

  • Download the latest OpenVPMS Installation files
  • Unzip the Installation Pack onto your C: drive into an OpenVPMS folder. This should create a C:\openvpms\openvpms-release-1.4 folder with the necessary files to install OpenVPMS.
  • Create a folder called C:\OpenVPMS\Installation

Open Office and JDK Installation

  • Download Open Office from openoffice.org and save in C:\OpenVPMS\Installation folder.
  • Double Click on the installation file in C:\OpenVPMS\Installation folder.
  • Unpack to the default location (Desktop)
  • Select Complete Installation
  • Select File Types Open Office will be default application for. This is your choice !
  • Remove Installation Files from Desktop.
  • Start Open Office and set options as required.

Open Office Path Configuration

  • In My Computer->Properties->Advanced->Environmental Variables double click on System Path variable and add path to OpenOffice program folder to end.
  • Click OK to save settings.

JDK Configuration

In order for other applications to be able to find the java installation we need to set an environmental variable on the system.

  • Using Windows explorer navigate the the location of the installed java installation.
  • Highlight the address bar and copy using Control-C
  • Right Click on My Computer and select Properties
  • Click on the Advanced tab and then click on Environmental Variable button
  • In the System variables section click New
  • In Variable Name type JAVA_HOME
  • In Variable value hit Control-V. This should enter the path name we copied before.
  • Click OK on all open Dialogues.

MySQL Installation

  • Download the Windows MySQL installation file from the MySQL site.
  • Select Windows Essentials (x86) and download into C:\OpenVPMS\Installation
  • Double click mysql-essential-5.0.45-win32.msi in c:\OpenVPMS\installation folder.
  • Select Typical Installation
  • Skip Sign Up
  • Select Configure MySQL Server Now
  • Select Developer Machine (Typically on server would select Server machine)
  • Select Multifunctional Database
  • Select Decision Support option (Larger installs would utilise manual connections settings. OpenVPMS application does connection pooling)
  • Select Enable TCP/IP Networking
  • Select Enable Strict Mode
  • Select Standard Character Set
  • Select Install as Windows Service
  • Select Include Bin Directory in Path
  • Enter the root password as openvpms twice
  • Select Enable root access from remote machine
  • De-select Anonymous User
  • Click Execute
  • Sometimes will fail on setting security and give option to Retry. Click Retry and should succeed.

MySQL Configuration

  • Stop the MySQL database server. My Computer->Manage->Services->MySQL. Right Click and Stop.
  • Navigate to MySQL application folder C:\Program Files\MySQL\MySQL Server 5.0
  • Save copy of my.ini file
  • Double click on my.ini file at the bottom of the file add the lines
    max_allowed_packet=16M
    innodb_file_per_table
  • save the file
  • Restart the MySQL server

MySQL GUI Tools Installation

  • Download the MYSQL GUI Tools the MySQL site
  • Select the Windows X86 option and save into C:\OpenVPMS\Installation folder.
  • Double click on mysql-gui-tools-5.0-r12-win32.msi file in C:\OpenVPMS\Installation folder.
  • Accept License
  • Select default location
  • Select Complete install
  • Create shortcut to to MYSQL Administrator on desktop

MySQL Administrator Configuration

  • Double Click MySQL Administrator icon
  • Click Elipses next to Stored Connections
  • Click New Connection Enter localhost, root, openvpms and localhost into fields.
  • Click Apply and then Close Select stored connection and enter root password (openvpms) and click OK.

Apache Tomcat Installation

  • Download Apache Tomcat and save in C:\OpenVPMS\Installation folder
  • Double click on apache-tomcat-5.5.28.exe file in C:\OpenVPMS\installation folder.
  • Select webapps in the available components
  • Select default location.
  • Set the admin password to openvpms
  • Select the default JRE location. (If you happen to have mutliple JRE locations select the one installed during the Java SDK installation - Must at least be a 1.5XXX version)
  • De-Select ReadMe and Run Apache Tomcat

Apache Tomcat Configuration

  • Run Configure Tomcat from Apache Tomcat program menu.
  • On Java tab in Java Options section add

-XX:PermSize=128m
-Xincgc

  • Set Initial Memory Pool and Maximum Memory Pool  to same value dependent on number of users.  Suggest 512M.
  • Clikc OK

IReport Installation

  • Download IReport  3.0.0 from sourceforge and save to C:\OpenVPMS\Installation folder.
  • Double click on the iReport installation file in the C:\OpenPMS\Installation folder.
  • De-select sources
  • Select default location
  • Start IReport
  • In Options -> Compatability set to compatible with jasperreports 1.3.2

Mysql Database Driver Setup

  • Download Mysql connector from Mysql  and save to C:\OpenVPMS\Installation folder
  • Copy the connector file mysql-connector-java-5.1.6-bin.jar found in the downloaded zip file to c:\OpenVPMS\openvpms-release-1.4\lib folder.
  • Copy the same connector to Tomcat shared library folder i.e C:\Program Files\Apache Software Foundation\Tomcat 5.5\shared\lib

OpenVPMS Database Setup

  • Open a command prompt.
  • Navigate to C:\OpenVPMS\openvpms-release-1.4\db
  • Start the mysql command line client and enter the following commands
    mysql -u root -p
    mysql> source createdb.sql;
    mysql> use openvpms;
    mysql> source db.sql;
    mysql> quit;
  • Navigate to C:\OpenVPMS\openvpms-release-1.4\bin
  • To load the database with data suitable for a site converting from an existing system next enter dataload base
  • To load the database with data suitable for a new site enter dataload setup

OpenVPMS Service User setup

  • In My Computer -> Manage select Local Users and Computers -> Users
  • Right click in User Pane and select New User...
  • Enter user name and password as openvpms (you may use a different password for security but remember for later Apache Tomcat step)
  • De-select change password at next login.
  • Click Create.
  • Double click new user in list and add to Administrators group.
  • Logout and login as new openvpms user.
  • Run open office and check no startup prompts.
  • Logout and login as your local administrator.

OpenVPMS Application Install

  • Copy openvpms.war file from c:\OpenVPMS\openvpms-release-1.4\webapps to Tomcat Webapps folder at C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps

Apache Tomcat Service setup

  • In My Computer ->Manage ->Services right click the Apache Tomcat service and select properties
  • On General tab select a Startup type of Automatic
  • On Logon tab enter openvpms and your openvpms user account password setup above.
  • Click on OK
  • Start the service by right clicking and selecting Start

OpenVPMS Test

 

OpenVPMS (1.2) Installation on Vista (FR)

 

Based on OpenVPMS Installation (Windows), here is the tasks list with plenty of screen shots I 've made while I installed OpenVPMS on the new computer with Vista (french version).

AttachmentSize
Install_note_1_2_on_Vista.pdf3.65 MB

Installing OpenVPMS on a Windows 7 Computer


CONTENTS

Introduction

This tutorial describes a step-by-step installation of OpenVPMS on a PC with a Windows 7 32-bit or 64-bit operating system.

When installing OpenVPMS you should be logged in on an account with Administrator privileges. Disabling UAC may also smooth the installation process.

Download OpenVPMS Installation And Other Required Files

  • Download the latest OpenVPMS Installation files.
    Unzip the Installation Pack onto your C: drive into an OpenVPMS folder. This should create a C:\openvpms\openvpms-release-1.4 folder with the necessary files to install OpenVPMS.
    Create a folder called C:\OpenVPMS\Installation
     
  • Download Open Office from openoffice.org and save in C:\OpenVPMS\Installation folder.
    Click on image to view full-size
    (Click image to view full-size)
     
  • Download the latest Java (x86 for 32-bit, x64 for 64-bit depending on your operating system) from the Oracle site and save into C:\OpenVPMS\Installation.
    Click on image to view full-size
    (Click image to view full-size)
     
  • Download the Windows MySQL installation file from the MySQL site.
    Select Windows Essentials (x86) and download into C:\OpenVPMS\Installation
    Click on image to view full-size
    (Click image to view full-size)
     
  • Download the MYSQL GUI Tools from the MySQL site.
    Select the Windows X86 option and save into C:\OpenVPMS\Installation folder.
    Click on image to view full-size
    (Click image to view full-size)
     
  • Download the MYSQL Java Connector from the MySQL site.
    Select the Windows X86 option and save into C:\OpenVPMS\Installation folder.
    Click on image to view full-size
    (Click image to view full-size)
     
  • Download Apache Tomcat from the Apache Software Foundation site.
    Select the Core | 32/64-bit Windows Service Installer option and save into C:\OpenVPMS\Installation folder.
    Click on image to view full-size
    (Click image to view full-size)
     
  • Download iReport from the Sourcforge.net site and save it to your installation folder.
    Click on image to view full-size
    (Click image to view full-size)
     

Start Installation

1. Install Java


Execute jdk-7-windows-xxxi586.exe (where xxx is i586 or x64) and accept all defaults.
 

2. Set Java Environment Variable


Right-Click on Computer icon on desktop, then click "Properties".

 

Click on Advanced System Settings (1), Advanced (2) and then Environment Variables (3):

Under System Variables (lower box - upper box is for User Variables), click on New, then enter JAVA_HOME and c:\Program Files\Java\jre7 in the appropriate fields and press OK

The end result should look like this:

Click OK, OK, then close the remaining window.

 

3. Open Port 3306 in your Windows Firewall


Click Start | Control Panel | System And Security:

Click on Windows Firewall:

Click on Advanced Settings, then follow images as below:








You've confirmed the new rule, so close the window (click on red x).

If you're going to access OpenVPMS from other computers on a network within the clinic, you'll also need to allow port 8080.
Repeat the steps above, this time typing in 8080 as the TCP Port to allow and name it Openvpms.
 

4. Install MySQL

Double-click on the "mysql-essential-5.1.nn-win32.msi" file you have downloaded and follow the images below:


Be patient: at this point, it may take some time for the progress bar to start moving (on one of my PCs, over three minutes), so just leave the PC to do its work:













5. Install MySQL GUI Tools


Double-click on the "mysql-gui-tools-5.0-r17-win32.msi" file you have downloaded to commence installation.
Click "Next" all the way through to complete default installation.

 

You now need to ensure all permissions are enabled (welcome to Windows7!).

 

 

6. MySQL Configuration


Open MySQL Administrator from the shortcut on the desktop: right-click and Run As Administrator.
Click on the button with the ellipsis (...) arrowed in image below:

Click on New Connection:

Change New Connection to localhost then fill in the fields (root, openvpms, localhost) as per image below and click Apply | Close:

You should now be back at the opening screen: select localhost from the drop-down box and click OK

On the left-hand pane, click Startup Variables (1), then click on the InnoDB Parameters (2) tab.
Scroll down to, and check One File Per Table (3).

Click on Advanced Networking tab (4), enable Max. packet size and set to 16 M (5), then click Apply Changes and close the window (7)..

 

7. Apache Installation

Double-click on the "apache-tomcat-6.0.nn.exe" file you have downloaded to commence installation; click Next;

Click Next;

Fill in User Name as admin and password as openvpms click Next;

Installer should find your Java installation without any intervention by you; if you have more than one, pick highest build number, then click Next

Accept default installation folder and click Install;


 

8. Configure Apache Tomcat

Click Start, right-click on Configure Tomcat and select Run As Administrator:

Click on Java tab. In Java Options, scroll down to the bottom and add the following two lines:

-XX:PermSize=128m
-Xincgc

Set Initial Memory Pool and Maximum Memory Pool to the same value, depending on the number of users; say 512.
Changes required are highlighted in yellow in image below:

Click OK and close.

9. OpenOffice Installation

Double-click on the "OOo_3.3.0_Win_x86_install-wJRE_en-GB.exe" file you have downloaded to commence installation; accept all default values;

Once installed, start OpenOffice and from the main menu select Tools | Options:

Click on Java in left column, check Use Java runtime environment and ensure most recent Java is selected;

Click on On-line Update and un-check Check for updates automatically;

Click on Internet | Browser Plug-in and check Display documents in browser;

Click OK to close options.
Start Writer from Menu. Click Tools | Options, click Internet | Browser Plug-in and check Display documents in browser, then click OK:

Close OpenOffice.

10. Configure OpenOffice Path

Right-Click on Computer icon on desktop, then click "Properties".


Click on Advanced System Settings (1), Advanced (2) and then Environment Variables (3):

Under System Variables (lower box - upper box is for User Variables), click on Path, then click Edit;

Press End, then add ;c:\Program Files\OpenOffice.Org 3\program to the path (do include the leading semi-colon):

Click OK, OK, then close the remaining window.

Test your OpenOffice path configuration.
Click Start | All Programs | Accessories | Command Prompt:

 

Type in swriter and press Enter. OpenOffice/Writer should start. Two reasons for doing this:

  1. If it does start, you've set the path correctly.
  2. OpenVPMS starts OpenOffice in the background; if OpenOffice is waiting for questions on registration and checking for updates to be answered, letter merging etc. won't work.
    Reopening OO makes sure it is not asking for you to participate in surveys etc.


If all's well, close OpenOffice.

11. Install and configure iReport

Right-Click on iReport-3.0.0-windows-installer to commence installation:

Un-check Sources:

Accept all defaults:


Check Run iReport 3.0.0 and click Finish:


Click Options (1), Compatibility (2), select JasperReports 1.3.2 (3) from drop-down box and clickOK(4).

Close iReport.

12. MySQL Database Driver Setup

Open the downloaded mysql-connector-java-5.1.16.zip:
Extract connector file mysql-connector-java-5.1.6-bin.jar to Tomcat shared library folder i.e C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib (note that this is a different folder than Tomcat 5.5):

Extract the same connector to c:\OpenVPMS\openvpms-release-1.4\lib folder:

13. OpenVPMS Database Setup

Click on Computer, navigate to C:\OpenVPMS\openvpms-release-1.4\db, press Shift+Right-Click anywhere on the open area and click on Open command window:

Type mysql -u root -p and press Enter. Enter password (openvpms).
Type source createdb.sql; (including the semi-colon) and press Enter.
Type use openvpms; (including the semi-colon) and press Enter.

Type source db.sql; (including the semi-colon) and press Enter. You'll see lots of message scroll off the screen.
Type quit; (including the semi-colon) and press Enter.

Type cd .. to move up a folder.
Type cd .\bin to move to bin folder.
Type dataload setup to load the database.

You'll see lots of screen messages. Close window when complete.

 

14. OpenVPMS Service User Setup

Copy the openvpms.war file from c:\openvpms\openvpms-release-1.4\webapps
to Tomcat Webapps folder at C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps.
 

15. OpenVPMS Application Install

Click Start | Control Panel | User Accounts and Family Safety:

Click the Add or remove user accounts link:

Click on Create a new account:

Name the new account openvpms, select Administrator and click on Create Account:

Once the account is created, click on Create a password. Type in openvpms twice, then click Create password (you may use a different password for security but remember for later Apache Tomcat step):

Close window when complete. Log off, then Log in as new openvpms user.
Start OpenOffice and check that configuration is the same as in
Step #10 above: ie uncheck On-line Updates, check Browser plug-in.
Log off and log in as your regular local administrator.

16. Apache Tomcat Service Setup

On the desktop, right-click on Computer icon and select Manage.

In Services and Applications, click on Services, right-click on Apache Tomcat 6 and select Properties. Click on General tab and change Startup type to Automatic.

Click on Log On tab, click on This account and insert openvpms as account name and openvpms as password (twice). Click OK to close.

Click on Apache Tomcat 6, then click on Restart the service.

17. OpenVPMS Application Test/Run

Open up your internet browser this address: http://localhost:8080/openvpms/app

Login to OpenVPMS using user 'admin' and password 'admin'

18. OpenVPMS Application From Other PCs on Network

First, you need to establish the IPv4 address of your server (the PC that your OpenVPMS installation resides on):
Open a Command Prompt (Start | Accessories | Command Prompt) and type ipconfig and press Enter.
Look for the line IPv4 address: in the screenshot below, it's 192.168.1.101:

To start OpenVPMS on another PC on the network, you will need to type in http://IPv4_address:8080/openvpms; in example below, http://192.168.1.101:8080/openvpms:

Click here to move on to setting up OpenVPMS for use.


Linux

install problem

Tony, I'm trying to do a fresh build, and I'm failing at the step To build the archetypes: > cd openvpms-archetypes > maven -Dmaven.test.skip jar:install Based on the error (shown below) and poking around the ibibio site, it looks like at least one of the directories that it's looking for do not exist. Where would I fix this? Thanks Lee Error text: __ __ | \/ |__ _Apache__ ___ | |\/| / _` \ V / -_) ' \ ~ intelligent projects ~ |_| |_\__,_|\_/\___|_||_| v. 1.0.2 Attempting to download spring-aop-1.2.5.jar. Error retrieving artifact from [http://www.ibiblio.org/maven/springframework/jar s/spring-aop-1.2.5.jar]: java.io.IOException: Unknown error downloading; status code was: 301 WARNING: Failed to download spring-aop-1.2.5.jar. Attempting to download aopalliance-1.0.jar. Error retrieving artifact from [http://www.ibiblio.org/maven/aopalliance/jars/ao palliance-1.0.jar]: java.io.IOException: Unknown error downloading; status code was: 301 WARNING: Failed to download aopalliance-1.0.jar. Attempting to download drools-all-jdk5-2.1.jar. Error retrieving artifact from [http://www.ibiblio.org/maven/drools/jars/drools- all-jdk5-2.1.jar]: java.io.IOException: Unknown error downloading; status code w as: 301 WARNING: Failed to download drools-all-jdk5-2.1.jar. Attempting to download janino-2.3.8.jar. Error retrieving artifact from [http://www.ibiblio.org/maven/janino/jars/janino- 2.3.8.jar]: java.io.IOException: Unknown error downloading; status code was: 301 WARNING: Failed to download janino-2.3.8.jar. Attempting to download commons-beanutils-core-1.7.0.jar. Error retrieving artifact from [http://www.ibiblio.org/maven/commons-beanutils/j ars/commons-beanutils-core-1.7.0.jar]: java.io.IOException: Unknown error downlo ading; status code was: 301 WARNING: Failed to download commons-beanutils-core-1.7.0.jar. Attempting to download oro-2.0.8.jar. Error retrieving artifact from [http://www.ibiblio.org/maven/oro/jars/oro-2.0.8. jar]: java.io.IOException: Unknown error downloading; status code was: 301 WARNING: Failed to download oro-2.0.8.jar. The build cannot continue because of the following unsatisfied dependencies: spring-aop-1.2.5.jar (try downloading from http://www.springframework.org/) aopalliance-1.0.jar (try downloading from http://www.aopalliance.org/) drools-all-jdk5-2.1.jar (try downloading from http://drools.codehaus.org/) janino-2.3.8.jar (try downloading from http://www.janino.net/) commons-beanutils-core-1.7.0.jar (try downloading from http://jakarta.apache.org /commons/jxpath/) oro-2.0.8.jar (try downloading from http://jakarta.apache.org) Total time: 9 seconds Finished at: Sun Jan 14 23:10:54 EST 2007 C:\openvpms\openvpms-archetypes>

Installing on FreeBSD...

Hi:

Just wondering if anyone has tried installing this on FreeBSD 7.0 RELEASE?

We have Tomcat5.5, Mysql 5.0.33, Sun JDK 1.5.0_13 running on a FreeBSD Machine and I can't seem to figure out how to get the database loaded.

If anyone has any experience or installation instructions, I would appreciate your help....

Regards,

Fred Schnittke

How to Setup Ubuntu Server ready to Install OpenVPMS

Install the Operating System

Install the appropriate Ubuntu Server operating system. If want a GUI you can do this with ubuntu desktop and then install all the dependencies as described. This setup has been tested on Ubuntu 9.10 but should work at least on 8.10 or more recent. If you are installing the server edition install mysql, tomcat6, LAMP stack and printer server when prompted during the installation process.

Install Required Software

From a command prompt install the following packages and their dependancies if they are not already installed:

sudo apt-get install mysql-server phpmyadmin tomcat6 tomcat6-admin libmysql-java

Make Required Configuration Changes

Increase Memory Limit of PHP

sudo nano /etc/php5/apache2/php.ini

Increase upload_max_filesize from 2M to 20M

This will allow you to import the database using phpmyadmin

Create a symbolic link for the mysql-java connector in tomcat

sudo ln -s /usr/share/java/mysql-connector* /usr/share/tomcat6/lib/

Change the ubuntu default settings in tomcat6

sudo nano /etc/init.d/tomcat6
  • Increase tomcat memory by adding the following to the JAVA_OPTS line: -Xms128M -Xms512M (This amount of memory seems to work well for me.)
  • Disable the tomcat6 java security manager by changing the following line from the default '=yes' to: TOMCAT6_SECURITY=no.  I'm no java security expert but from my reading this default setting is probably overkill and the webapp won't run with it turned on. Please correct me if there's a better way.

terminal view of /etc/init.d/tomcat6

  • Add a user to tomcat with admin and manager roles so you can access the web-manager
sudo nano /etc/tomcat6/tomcat-users.xml

tomcat-users.xml file

Restart the services:

  • Restart apache
sudo /etc/init.d/apache2 restart

 

  • Restart tomcat
sudo /etc/init.d/tomcat6 restart

 

Now we are ready to install OpenVPMS

Firstly, need to get the IP address of your server? Use the ifconfig command. 

 

 

OpenVPMS installation instructions to follow

Enable OpenVPMS Logging in Ubuntu

 Ubuntu mucks up the path for the log files to be written so by default it is trying to right them in the root directory and gets permission denied so you don't get any output. 

 

To fix it correct the path in the log4.properties file in your OpenVPMS install:

sudo nano /var/lib/tomcat6/webapps/openvpms/WEB-INF/classes/log4j.properties

Change log4j.appender.fileout.File=openvpms.log to log4j.appender.fileout.File=/var/lib/tomcat6/webapps/openvpms.log

and 

Change log4j.appender.fullout.File=openvpms-full.log to log4j.appender.fullout.File=/var/lib/tomcat6/webapps/openvpms-full.log

 

Now save your changes and restart tomcat and your log files should now be there. 

Install Openoffice headless as a service in Ubuntu

It's taken me forever to figure out to get this going so now that I've found it out here's the solution (thanks to this post: http://code.google.com/p/openmeetings/wiki/OpenOfficeConverter#Starting_OO_in_headless_with_Version_OpenOffice_3.0_++)

 

First of all install the headless openoffice from the repositories:

 

sudo apt-get install openoffice.org-headless openoffice.org-writer openoffice.org-draw

The 2 latter packages are required or you will get an error message: This url is not supported

Now you need to create a script to start it as a service:

sudo nano /etc/init.d/openoffice.sh

Paste the following code into that file:

#!/bin/bash
# openoffice.org headless server script
#
# chkconfig: 2345 80 30
# description: headless openoffice server script
# processname: openoffice
#
# Author: Vic Vijayakumar
# Modified by Federico Ch. Tomasczik
#
OOo_HOME=/usr/bin
SOFFICE_PATH=$OOo_HOME/soffice
PIDFILE=/var/run/openoffice-server.pid

set -e

case "$1" in
start)
if [ -f $PIDFILE ]; then
echo "OpenOffice headless server has already started."
sleep 5
exit
fi
echo "Starting OpenOffice headless server"
$SOFFICE_PATH -headless -nologo -nofirststartwizard -accept="socket,host=127.0.0.1,port=8100;urp" & > /dev/null 2>&1
touch $PIDFILE
;;
stop)
if [ -f $PIDFILE ]; then
echo "Stopping OpenOffice headless server."
killall -9 soffice && killall -9 soffice.bin
rm -f $PIDFILE
exit
fi
echo "Openoffice headless server is not running."
exit
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0

 Exit the nano text editor saving the file as you do. 

Now make the script executable:

sudo chmod 0755 /etc/init.d/openoffice.sh

Make it start automatically on reboot by executing this command:

sudo update-rc.d openoffice.sh defaults

Now start the service by running

sudo /etc/init.d/openoffice.sh start

Now all should be good!

Linux Install Guide

Introduction

This guide describes how to install OpenVPMS on your veterinary clinic.

The guide is intentionally brief and describes the most typical installation for OpenVPMS.  After completing the installation, you will be ready to start using OpenVPMS for your veterinary clinic.

Installation checklist

OpenVPMS will run on most standard Sun JavaEE environments with an additional component of OpenOffice (used for document generation). You will need to make sure your einvornment includes:

  • Java Development Kit
  • Java Application Server
  • Relational database with a type 4 database driver
  • OpenOffice (headless version)

We have tested the following Sun JavaEE environments

  • Apache Tomcat with mySQL
  • IBM WebSphere Application Server Community Edition with mySQL and mySQL Connector/J

Note: Sun JavaEE applications like OpenVPMS can run on many different type of operating systems like Microsoft Windows, Mac OS X, Linux and more!

If you need help installing the prerequiste software, please see the Install Guide for those products.

Download and Install OpenVPMS

To perform the installation you will need to download and unpack the OpenVPMS installation files.


Download the latest installation archive from: http://www.openvpms.org/download


After downloading, unpack the ZIP file in a directory - <openvpms_tmp>.

Install the OpenVPMS database schema

Configures the database to store data using UTF8 (to support english and double-byte characters like Chinese). By default, mysql uses latin1 instead of UTF8 to store data.  You need to add a configuration setting into your database so that the server and client does everything by UTF8.

MySQL Configuration - Linux (my.cnf) or Windows (my.ini):
[mysqld]
character-set-server=utf8
default-collation=utf8_unicode_ci

[client]
default-character-set=utf8

This populates the database with the database structure.

	Linux/Windows:
cd <openvpms_tmp>
cd db
mysql -u root -p
mysql> drop database openvpms;
mysql> source createdb.sql;
mysql> use openvpms;
mysql> source db.sql;
mysql> quit;

Note: This will create a database "openvpms" with username of "openvpms" and password of "openvpms".

Load default OpenVPMS data

This will load the database with the initial data needed for the application.   It will setup a one vet veterinary clinic in Australia.

	Linux:
cd <openvpms_tmp>
cd bin
./dataload.sh setup

Windows:
cd <openvpms_tmp>
cd bin
dataload.sh setup

Note: This will create an administrator user account with username of "admin" and password of "admin".   Retain this information for later when we first login to the system.

Configure the Java Application Server to support JasperSoft Reporting

JasperSoft needs to be configured to run in a headless mode for it to generate reports like invoices.

	Linux with IBM WebSphere Application Server Community Edition:
export GERONIMO_OPTS=-Djava.awt.headless=true

Linux with Apache Tomcat:
export CATALINA_OPTS=-Djava.awt.headless=true

Note: Suggested to put environmental settings in your shell startup so that you do not need to execute the command at each time before Java Application Server startup.

Start the OpenOffice daemon

OpenVPMS uses OpenOffice for form generation.   As a result, we have to run OpenOffice in a headless mode so that when we generate form slike vaccinations certificates.

	Linux:
soffice.bin -headless -nofirststartwizard -accept="socket,port=8100;urp;" &

Note for Linux: It may help that you add soffice.bin in your path and make the OpenOffice daemon a startup service.

Start the OpenVPMS Document Import daemon

OpenVPMS has the ability to automatically import customer and patient records and patient investigations into the system.   This daemon uses the automatic scheduling utility ("at" in Microsoft Windows or "cron" in Linux) provided by the operating system.

	Linux/Windows:
mkdir <openvpms-tmp>/docimport <openvpms-tmp>/docarchive

Within your automatic scheduling utility, set the OpenVPMS document import daemon to run.

	Linux:
echo "cd <openvpms-tmp>/bin/" > /etc/cron.hourly/openvpms-docimport.sh
echo "./docload.sh --byid --source <openvpms-tmp>/docimport --dest <openvpms-tmp>/docarchive --verbose" >> /etc/cron.hourly/openvpms-docimport.sh
chmod 755 /etc/cron.hourly/openvpms-docimport.sh

Install the Database type 4 driver

A database type 4 driver is used to connect the Java Application Server to the database.  

Download and copy the mySQL connector/j jar file to <java_home>/jre/lib/ext.   This will allow you to skip manually modifying your Java classpath.

Start the Java Application Server daemon

Follow the startup instructions in your Java Application Server.

Install the OpenVPMS Sun JavaEE Web Application Archive (WAR)

Follow the instructions in your Java Application Server to install WARs.

Start the OpenVPMS Sun JavaEE application

Follow the instructions in your Java Application Server to start WARs.

Configure the OpenVPMS

You're almost done.   You'll need to setup Scheduling and Work List and once you're done, you'll have a fully working veterinary practice management software system.

Logging in for the first time

By default, the application would be available at http://localhost:8080/openvpms/.   Use the username of "admin" and password of "admin" to first login to the system. 

Setting up Scheduling

Navigate to "Administration" -> "Organization". Modify the "Main Appointment Schedule" and "Main Surgery Schedule" with start and end hours.  Create a new "Schedule View" called "Schedule View". Add the "Main Appointment Schedule" and "Main Surgery Schedule".  Click "Ok".  Navigate back to "Administration" -> "Organization" and find "Main Clinic".  Edit the "Main Clinic" and in the "Scheduling Views", add the "Schedule View" you just created.   Save, logout and then re-login and you should be able to navigate to "Scheduling" and be able to add, modify and remove appointments.

Setting up Work List

Navigate to "Administration" -> "Organization". Create a new "Work List View" called "Work List View". Add the "Main Hospital List" and "Main WaitingList".  Click "Ok".  Navigate back to "Administration" -> "Organization" and find "Main Clinic".  Edit the "Main Clinic" and in the "Work List Views", add the "Work List View" you just created.   Save, logout and then re-login and you should be able to navigate to "Work List" and be able to add, modify and remove customers/clients on and off lists.

 

Note: Stock/Inventory Management module is not enabled by default.

Congratuations!

Your veterinary practice management software is now installed!  

From this point, here are some other things you might need to customize before "production" use. 

  • Load customers
  • Load patients
  • Load products
  • Documents templates
  • And more!

 

 

 

 

Mac (OSX)

Tweaks and customisation

[Installation] Configuration

I have succesfully installed OpenVPMS and have it up and running on my laptop and was wanting some advice on what I need to do to setup my specific practice, product and tax details ?

Automatic Document Importing into OpenVPMS

Introduction

OpenVPMS version 1.3 or greater provides a document importer utility which can be used to setup automatic importing of documents into OpenVPMS.

This document describes how to configure this utility.

Background

In OpenVPMS users can add a range of documents to customers, patients and visits. 

These documents are added manually through the user interface and the attached content is added by browsing to a specific file and uploading it to the document entry.  This process is typically used for the following document types

  • Customer Attachments and Images
  • Patient Attachments and Images
  • Patient Investigations

In many cases it is desirable to have the content added automatically rather than manually.  This is especially true of investigation results which can be electronically downloaded as a file in various formats.  It is also true for automated scanning systems where users wish to have scanned files directly imported into the customer or patient file.

To facilitate an automatic system the document umporter utility needs to be able to identify to what document entry the file belongs to. We decided the best way to accomplish this was to utilise the unique ID assigned to any document entry when you added it into OpenVPMS.  If the file to be imported has a file name made up of this ID and any extension i.e  123456.html  then the importer utility can find a unique document entry and attach the content to the entry. Heres an example of a Investigation entry in a patients Medical Records.

In this case the unique identifier is 2917.

In order for the document importer utility to attach the subsequent electronic result/report to this investigation entry this unique identifier needs to be first communicated to the provider (i.e. via a request form) and the provider needs to subsequently provide some electronic download facility to save the results into a file with the file name set to this number and with any prefix i.e  2917.pdf, 2917.html. 2917.tif etc.   Heres an example of the completed upload.

 

 Also notice that the status on the document has been changed from In Progress to Completed.  This will allow subsequent workflow functions in OpenVPMS to check from pending or arrived document imports.

Setting Up Automatic Document Importing (Windows)

Import Folders

The document importer utility requires two folders to operate.  The first folder is used as the source of files to be imported.  The second folder is used to archive files that have been succesfully imported.  These folders can be located anywhere on the network as long as they are accesible by the utility.   For this example I have created the following folder structure under the OpenVPMS folder.  You are free to put the folder anywhere on your server or network.

Scheduled Task

In order to have the document import utility regularly check the import folder for new files to process you need to setup a scheduled task to run the utility with the correct parameters.  You can set the utility to run as often as you like.  The frequency depends on how often the files will be downloaded into the folder so may depend on the schedules setup in your other download applications (i.e Eclinic).  The example here runs the utility every 10 minutes.

The document import utility is located in the OpenVPMS release under the bin folder. In this example the comand line used for the utility is :

For version 1.3

F:\OpenVPMS\openvpms-release-1.3\bin\docload.bat --byid --source f:\openvpms\import\in --dest f:\openvpms\import\archive --verbose

For version 1.4

In version 1.4 we have added support for multiple document versions to cater for circumstance where you receive multiple reports for the same investigation id. We also added regular expression support so you can tailor the file name patterns used to extract the id from the filename.  The one shown allows up to 1 or 2 letters followed by the investigation id and then any non numeric delimiter followed by any number of other characters.

F:\OpenVPMS\openvpms-release-1.4\bin\docload.bat --byid --source f:\openvpms\import\in --dest f:\openvpms\import\archive --verbose -o --regexp "^[a-zA-Z]{0,2}(\d+).*"

This is the command that needs to be entered into the scheduled  task Run field as shown here:

You will also notice the Start in: and Run as: are setup appropriately.  It is important that the Start In. field is set to the correct location.  The user selected to run the command must be able to access the folders setup previously.

 

Here you will notice I have set the import utility to start Daily at 8:00Am and to run every 10 minutes till 10:00Pm.  You can set the recurring schedule by clicking the Advanced button.

Testing

You can test the scheduled task by creating a dummy document entry in OpenVPMs and placing a file into the In folder with the correct unique name and then running the Scheduled task by right clicking on it and selecting Run.

If the task is setup correctly the file should now be attached to the document entry you created and the file should be moved from the In folder to the Archive folder.

If the import failed the file will remain in the In folder and you can check the import log which will be located in the file

f:\OpenVPMS\openvpms-release-1.4\bin\docload.log

This file will contain log entries similar to the following.

23 Mar 2009 10:38:57,505  INFO DocumentLoader,138 - Starting load at: Mon Mar 23 10:38:57 EST 2009
23 Mar 2009 10:38:57,536  INFO DocumentLoader,198 - Ending load at: Mon Mar 23 10:38:57 EST 2009
23 Mar 2009 10:38:57,536  INFO DocumentLoader,203 - Loaded: 0
23 Mar 2009 10:38:57,536  INFO DocumentLoader,204 - Errors: 0
23 Mar 2009 10:38:57,536  INFO DocumentLoader,205 - Total:  0
23 Mar 2009 10:38:57,536  INFO DocumentLoader,206 - Processed 0 files in 0.00 seconds (0.00 files/sec)
23 Mar 2009 10:53:45,070  INFO DocumentLoader,138 - Starting load at: Mon Mar 23 10:53:45 EST 2009
23 Mar 2009 10:53:45,070  INFO DocumentLoader,198 - Ending load at: Mon Mar 23 10:53:45 EST 2009
23 Mar 2009 10:53:45,070  INFO DocumentLoader,203 - Loaded: 2
23 Mar 2009 10:53:45,070  INFO DocumentLoader,204 - Errors: 0
23 Mar 2009 10:53:45,070  INFO DocumentLoader,205 - Total:  2
23 Mar 2009 10:53:45,086  INFO DocumentLoader,206 - Processed 2 files in 1.00 seconds (2.00 files/sec)

If the log file does not contain entries for the date and time you ran the scheduled task you will need to check the setup of the scheduled task itself as it may not be correctly configured.

Notes

Import Folders

In the above examples the import folder have been setup in the OpenVPMS folder.  This may not be convenient in many cases as you may want to use a central folder in a location that is accessible to specific or all users. This is particularly the case if you want users to be able to monitor these folders as well but it also would allow them to drop scanned documents/images into these folders for import.

You just need to change the paths in the above command to suit your specific location. i.e.

F:\OpenVPMS\openvpms-release-1.4\bin\docload.bat --byid --source s:\documents\import\in --dest s:\documents\import\archive --verbose -o --regexp "^[a-zA-Z]{0,2}(\d+).*"

If you use a mapped drive please be sure that this drive is mapped for the user that will run the scheduled task.

Upgrading

If upgrading OpenVPMS the location of the docload batch file will change.  In order to simplify upgrades by not having to edit the scheduled task I suggest you do the following:

  1. Create a link to the current openvpms reease folder called current.    Windows 2008 and 7 can do this using the new mklink /d commmand.  Creating a shortcut does not work.
  2. Update the command above to use this shortcut i.e

 F:\OpenVPMS\current\bin\docload.bat --byid --source f:\openvpms\import\in --dest f:\openvpms\import\archive --verbose -o --regexp "^[a-zA-Z]{0,2}(\d+).*" 

When the version change all you need to do is redirect the shortcut to the location of the current OpenVPMS version.

Setting up Automatic Document Importing on Ubuntu

Firstly you will need to create a directory for importing and archiving the documents. I did it in my dropbox so I can add files to be imported from any machine I use. 

Make a directory called Imports with 2 subfolders called In and Archives

mkdir Imports

cd Imports

mkdir In Archives

Now determine where you left the extracted openvpms package files on your machine (we will refer to this as <openvpms>). The base of your home directory is probably a good spot. Make sure:

  1. You have the mysql jdbc driver in <openvpms>/lib folder
  2. The scripts in your <openvpms>/bin are executable (sudo chmod +x /path/to/<openvpms>/bin/*)

Check that everything is working by changing to the <openvpms>/bin directory (cd <openvpms>/bin) and then invoking the script with the command (changing the paths where appropriate):

 

./docload.sh --byid --source Path/to/Imports/In --dest Path/to/Imports/Archive --verbose
If that works OK you can now add a cron task to run it automatically:
sudo crontab -e
add the following line to your crontab file (changing the directories to their correct location):
For version 1.3:
0 * * * * cd Path/to/<openvpms>/bin && ./docload.sh --byid --source Path/to/Imports/In --dest Path/to/Imports/Archive --verbose
For version 1.4:
	0 * * * * cd Path/to/<openvpms>/bin && ./docload.sh --byid --source Path/to/Imports/In --dest Path/to/Imports/Archive --verbose -o --regexp "^[a-zA-Z]{0,2}(\d+).*"
	

The folder will now be checked every hour for new files.

Adding gzip compression to tomcat to improve speed.

Gzipping can result in a significant speed improvement in downloading of files from the tomcat server and is easily enabled in tomcat. When the client (browser) makes a http request it tells the server if it has the ability to deflate. If so the server can gzip files such as xml, css and javascript before they are sent to the client. Significant speed increases are seen in the OpenVPMS web application especially when served from a remote server.

To enable this feature edit the connector in tomcat's server.xml file and add the compression settings as below:

Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="xxxx" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" useBodyEncodingForURI="true"
compressableMimeType="text/html,text/xml,text/css,text/javascript,text/plain" compression="on"
compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata" />

If you are using firefox you can use the Yslow plugin to check if gzipping is enabled or not. Yslow can also be used to tell you the speed prior to and following enabling compression.

Auto-capitalisation

Since version 1.4, I have been getting frustrated with this function taking capitals out of acronym like FIV (changing it to Fiv) when editing product names or adding few products or fees. Can it be turned off in some areas (it doesn't exist when writing client histories for example).
Glen
Greenvale

Local test or demo system setup

Hi,

I have an existing OpenVPMS site that would like to run a test or demo system alongside the live one for testing of templates and for new staff to practice on.

What are the steps required to restore a copy of the real data (with customers and all in it) to another new database on that same server?

What would then be the web address of the new site.

Finally, how can the background colour of the demo system be changed to clearly differentiate it from the live system?

 

thanks very much

Marty Oliver, The Soho Box

www.thesohobox.com.au

Melbourne, Australia

 

reminders

Hi,
What is the best wasy to set up the reminders for applicable products? We have not made use of this function yet.

Thanks
Tamara

Reminder Setup

Hi,

We are just setting up a new range of reminders and it's been ages since I've worked in this area so I'm a bit rusty. A couple of questions

Cancel Interval: If this is set a for example 2 years. What happens after two years?

Senstivity Interval: Is this to do with the reminder bells appearing? Can someone give me a refresher here?

Sandra.

Configuring Your New Installation

Setting Up openVPMS: Configuration: Your First Steps.

Home Page


CONTENTS

1. Adding Towns and States (all of Australia)


In Explorer, navigate to the openvpms-release-1.n\bin folder, open Command Prompt (Shift-Right-Click and select Open Command Prompt Here) and run the following command:

dataload.bat ../import/data/postcodes.xml
Open Command Prompt and enter command

You will see a series of processing messages.......
Processing

.... and be returned to the Command Prompt when the dataload has completed.
Completed

Make sure you haven't added any states or suburbs first as this may cause duplicate errors and the load would fail.

Close the Command Prompt window when you're done.

2. Adding Your Clinic Details


In openVPMS, click Administration (1) | Organisation (2) | Find (3) and select Practice (openvpms practice)(4).
click Administration|Organisation|Find and select Practice

Click Edit, delete "openvpms practice" and type in your clinic's name (6), click Contacts (7) | Add (8) and enter your clinic's address (9). Press Apply (10).

Click on Phone Number (11), enter your clinic area code and number (12), and click Apply (13).

Click on Taxes (14), select Gst in left column and click on arrow to move into "Selected" column (15). Click Ok (16) to save changes and complete this section.

Click Administration | Organisation | Main.


In the same manner as decribed above, set up location and phone number.


Click on Practice | Add | Click on Binoculars | double-click on your hospital name.

Select your default printer from a drop-down box (this should be a printer installed to the server on which openVPMS resides either as a local or network printer).

If you're going to send email from openVPMS, you'll need to place the address of your ISP's smtp mail server here (as shown above). Look in the configuration of your email client (Outlook, Thunderbird, etc) for "outgoing mail server" for the server address.
Click Ok to save changes and complete this section.

If your outgoing mail server requires a username and password, you'll need to add these to your applicationContext.xml file: this will be found in the c:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\openvpms\WEB-INF folder.

Right-click and edit this file in Notepad or your favourite text editor. Search for mail sender.


Add the username and password lines as shown below, inserting your own values for "someuser" and "somepassword".


Save and close the file. Stop and restart Tomcat to apply changes.

3. Setting Up Scheduling


Click on Administration (1) | Organisation (2) | Select (3) | All (4) | Find (5).
Double-click on Main Appointment Schedule (6).

Click on Edit.

Fill in start and end times in 24 hour format (eg 0900), select slot size, and click OK.

Once again, click on Administration | Organisation | Select | All | Find .
Double-click on Main Surgery Schedule.

Fill in start and end times in 24 hour format (eg 0900), select slot size, and click OK.

Create a new Schedule View called Schedule View.
Click on Administration | Organisation | Select | Schedule View | Find .
You'll see No results to display.
Click on New.

A new window pops up.
Type in Schedule View (1).
Click Add (2) | Binoculars {Search}.
Double-click on Main Appointment Schedule (4).
Window will close. Press OK (5).

Click Edit (1) | Add (2) | Binoculars {Search} (3).
Double-click on Main Surgery Schedule (4).
Window will close. Press OK (5).

Click on Administration | Organisation | Select | All | Find .
Double-click on Practice Location (Main Clinic).

Click Edit. A new window pops up.
Click Edit (1) | Add (2) | Binoculars {Search} (3).
Double-click on Schedule View (4).
Window will close. Press OK (5).

Log out, then log in again.
Click on Workflow | Scheduling and you should be able to add, modify and remove appointments.

4. Setting Up Work List


Click on Administration | Organisation (1).
Click on New (2).
Click on Work List View (3).

Click New (1). A new window pops up.
Type in Work List View (2), click Add (3) | Binoculars {Search} (4).
Double-click on Main Waiting List (5).
Window will close. Press Apply (6).
ov_config_26
Repeat the steps above, this time double-clicking on Main Hospital List, then click OK.

Your resultant screen should look like this:
ov_config_27
Click on Administration | Organisation | Select | All | Find .
Double-click on Practice Location (Main Clinic).

Click Edit. A new window pops up.
Click Work List Views (2) | Add (3) | Binoculars {Search} (4).
Double-click on Work List View (5).
Window will close. Press OK (6).

Log out, then log in again.
Click on Workflow | Work Lists and you should be able to add, modify and remove clients on and off lists.
ov_config_30 was 18

Home Page



Compiled 10 August 2011 by Yuri Sos from many forum posts

Creating a Demo/Training Version of openVPMS on a Windows 7 Computer

CONTENTS

Introduction

This tutorial describes step-by-step preparation of an alternate demo version of openVPMS for training purposes, allowing you to run the system without compromising your main installation.

You should be logged into the PC where openVPMS resides using an account with Administrator privileges.

1. Turn Off User Account Control (UAC)


UAC is on by default on Windows 7 machines. Ostensibly to stop malware changing your system files, it gets in the way of doing ANY changes within the Program files folder and its sub-folders. Disabling UAC will not make you computer instantly vulnerable and, in the vast majority of cases, provides no more protection than a decent firewall and anti-virus sofware. If you leave UAC enabled, you will need to deal with messages such as this - even if you ARE the Administrator:
error messages interfere with editing and saving files
Ok, let's start. Click Start | Control Panel | User Accounts and Family Safety | User Accounts | Change User Account Control Settings. Drag the slider all the way down to the bottom.
the slider all the way down to the bottom
Click OK, OK. A restart message will appear.
the computer will display a restart message

Restart the computer.

2. Create Demo Database


I assume you know how to, and have performed a recent backup of your openVPMS system using MySQL Administrator.
Start MySQL Administrator and select Restore from the menu option at left.
open mysql and select restore

 

 
Click Open Backup File (1), select your file (2), and click Open (3):
open backup file

 

 
Click on Another schema and type in openvpms-demo (4), check Create database.. (5), select File Charset of latin1 (6) and click Start Restore (7):
restore to another schema

 

Once the operation is complete, click Close and exit MySQL Administrator.
once restore completed click close and exit mysql

 

 

3. Prepare openvpms-demo


Open Computer, browse to C:\Program Files\Apache Software Foundation\Tomcat n.n\webapps (n.n is your version number). Click on openvpms folder and press Ctrl-C then Ctrl-V. You may see an Administrator message. Click Continue.
you need to provide administrator permission to copy folder
Right-click on openvpms - copy, select Rename and rename folder to openvpms-demo:
rename the copied folder
In Explorer, browse to browse to C:\Program Files\Apache Software Foundation\Tomcat n.n\webapps\openvpms-demo\WEB-INF folder (1), right-click on web.xml (2) and select Edit (3).
move to WEB_INF folder and right-click to edit web.xml
The file will open in Notepad.exe. Near the top of the file (lines 10-13) you will see this block of text:

<context-param>
<param-name>webAppRootKey</param-name>
<param-value>openvpms</param-value>
</context-param>

look for line param-value openvpms
Change the openvpms in the highlighted line to read openvpms-demo, thus:

<param-value>openvpms-demo</param-value>

replace openvpms with openvpms-demo
Save and close the file.

 

Still in Explorer, browse to the classes folder. Right-click on hibernate.properties and select Open:
open hibernate.properties
Click on Select a program..... and press OK:
select notepad unselect alway use this program
Select Notepad, un-check Always use ..... and click OK:
select notepad unselect alway use this program
Look for the line hibernate.connection.url=jdbc:mysql://localhost:3306/openvpms
look for this line

and change to

hibernate.connection.url=jdbc:mysql://localhost:3306/openvpms-demo
replace with this line
Save and close the file.

4. Set Schema Privileges in MySQL Administrator


Start MySQL Administrator, log in and click on User Administration (1). Click on Schema Privileges tab (2), click on openvpms (3) and click on openvpms-demo (4):
open user account openvpms
Click on double left arrows (5), then click on Apply Changes (6):
move all privileges into left-hand window
Close MySQL Administrator.
 

 

5. Change Background Colour To Orange

You'll want to change the background colour to orange so that you and your staff will know whether you're working in the real thing (green) or the demo/training version (orange).

Browse to C:\Program Files\Apache Software Foundation\Tomcat n.n\webapps\openvpms-demo\WEB-INF\classes\org\openvpms\web\resource\style folder. Right-click ob default.stylesheet and select Edit.
open default.stylesheet in text editor
Select Notepad, un-check Always use .... and click OK:
you can use the default notepad.exe
Press Ctrl-H (or Edit | Replace) and change 339933 to FF9900, selecting Replace All.
change 339933 to FF9900
Save and close the file.

6. Restart and Test

Restart your computer.

Open Firefox and type in http://localhost:8080/openvpms-demo/app. Log in as admin/admin and you should have openVPMS in orange ready for you to use for training.
once you log in you should see orange background

To start OpenVPMS-demo on another PC on the network, you will need to type in http://IPv4_address:8080/openvpms-demo; in example below, http://192.168.1.101:8080/openvpms-demo:
log in on remote computer should show orange background

Hope this helps.



Created 20 July 2011 (Author: Yuri Sos)

Upgrade Documentation

Follow the instructions to upgrade your installation.

Updating OpenVPMS to 1.2-Beta-1

This page outlines the required steps to upgrade a 1.1 release OpenVPMS installation to release 1.2-Beta-1.

Step Description 
Download OpenVPMS Installation Files 
  • Download the latest OpenVPMS Installation files from here.
  • Unzip the Installation Pack onto your OpenVPMS server; This should create a openvpms-release-1.2-Beta-1 folder with the necessary files to install or update OpenVPMS.
Stop Tomcat Service 
  • Stop Tomcat
OpenVPMS Database Upgrade
  • Open a command prompt.
  • Navigate to openvpms-release-1.2-Beta-1\update\db folder
  • Start the mysql command line client and enter the following commands 
    mysql -u root -p
    mysql> use openvpms;
    mysql> source migrate-1.1-to-1.2.sql ;
    mysql> quit;
    
Download and install the Mysql JDBC driver  This release does not package  the Mysql database JDBC driver that is required by OpenVPMS to talk to a Mysql database installation.  This is due to license restrictions on the Mysql connector. 

Using your current OpenVPMS-1.1 installation you can copy the necessary files from this installation to the  new 1.2 installation and Tomcat using these instructions:
  • In the openvpms-release-1.1\lib folder find the file mysql-connector-java-5.1.5-bin.jar  to openvpms-release=1.2-Beta-1\lib folder.
  • Copy the same file to your tomcat installations shared\lib  folder.
Reload the Archetypes 
  • Navigate to C:\openvpms-release-1.2-beta-1\bin
  • Run the archetype load utility  by typing archload
Update the OpenVPMS web application 
  • Navigate to the Apache Tomcat webapps folder
  • Delete the existing  openvpms.war file
  • Delete the existing openvpms folder
  • Copy the  openvpms.war  file from the openvpms-release-1.2-Beta-1\webapps  folder to the Tomcat webapps folder.
Start Tomcat 
  • Restart Tomcat

 

Updating OpenVPMS to version 1.1

This page outlines the required steps to upgrade a 1.0 release OpenVPMS installation to release 1.1.

Step Description
Download OpenVPMS Installation Files
  • Download the latest OpenVPMS Installation files from here.
  • Unzip the Installation Pack onto your OpenVPMS server; This should create a openvpms-release-1.1 folder with the necessary files to install or update OpenVPMS.
Stop Tomcat Service
  • Stop Tomcat
OpenVPMS Database Upgrade
  • Open a command prompt.
  • Navigate to openvpms-release-1.1\update\db folder
  • Start the mysql command line client and enter the following commands
    mysql -u root -p
    mysql> use openvpms;
    mysql> source migrate-1.0-to-1.1.sql ;
    mysql> quit;
    
Reload the Archetypes
  • Navigate to C:\openvpms-release-1.1\bin
  • Run the archetype load utility  by typing archload
Update the OpenVPMS web application
  • Navigate to the Apache Tomcat webapps folder
  • Delete the existing  openvpms.war file
  • Delete the existing openvpms folder
  • Copy the  openvpms.war  file from the openvpms-release-1.1\webapps  folder to the Tomcat webapps folder.
Start Tomcat
  • Restart Tomcat

 

Upgrading to OpenVPMS version 1.3

This page outlines the required steps to upgrade a 1.2 release OpenVPMS installation to release 1.3.

Step Description 
Download OpenVPMS Installation Files 
  • Download the latest OpenVPMS Installation files from here.
  • Unzip the Installation Pack onto your OpenVPMS server; This should create a openvpms-release-1.3 folder with the necessary files to install or update OpenVPMS.
Stop Tomcat Service 
  • Stop Tomcat
Database Backup The 1.2 to 1.3 database upgrade process is quite extensive so we strongly suggest performing a MySQL database backup prior to attempting the upgrade.  Use the MySQl administrative tool or phpmyadmin under Linux to create a backup.
OpenVPMS Database Upgrade Depening on the size of your OpenVPMS database the upgrade process can take some time so we suggest you give yourself plenty of time for the process to complete.
  • Open a command prompt.
  • Navigate to openvpms-release-1.3\update\db folder
  • Start the mysql command line client and enter the following commands 
    mysql -u root -p
    mysql> use openvpms;
    mysql> source migrate-1.2-to-1.3.sql ;
    mysql> quit;
    
Download and install the Mysql JDBC driver  This release does not package  the Mysql database JDBC driver that is required by OpenVPMS to talk to a Mysql database installation.  This is due to license restrictions on the Mysql connector. 



Using your current OpenVPMS-1.2 installation you can copy the necessary files from this installation to the  new 1.2 installation and Tomcat using these instructions:
  • In the openvpms-release-1.2\lib folder find the file mysql-connector-java-5.1.5-bin.jar and copy to openvpms-release-1.3\lib folder.
  • This file should already be in the Tomcat shared\lib  folder from the 1.2 upgrade.
Reload the Archetypes 
  • Navigate to C:\openvpms-release-1.3\bin
  • Run the archetype load utility  by typing archload
Update the OpenVPMS web application 
  • Navigate to the Apache Tomcat webapps folder
  • Delete the existing  openvpms.war file
  • Delete the existing openvpms folder
  • Copy the  openvpms.war  file from the openvpms-release-1.3\webapps  folder to the Tomcat webapps folder.
Start Tomcat 
  • Restart Tomcat
Software Configuration

Version 1.3 consists of some significant software changes, specifically the new enhanced scheduler.

You will need to do some significant configuration steps in order to get the Scheduling and Worklist workspaces operational.  This includes:

  • Adding new Scheduling and Worklist views in Administration ->Organisation and associating them with practice locations.
  • Adding existing schedules and worklists to the views and setting their display order.

This version also includes automatic post code lookups using a new suburb lookup. We suggest you:

  • Check you have a default state selected in Administration -> Lookups
  • Check the suburbs and postcodes created from your existing data during the data migration process.  You may find many duplicated suburbs due to there being different suburb name postcode combinations in the original data.  You may need to inactivate some of these suburbs to clean up your suburb list during data entry.

  If you have any questions on these ad other software changes please post them on the forum.

 

Upgrading to OpenVPMS version 1.4

This page outlines the required steps to upgrade a 1.3 release OpenVPMS installation to release 1.4.

Step Description 
Download OpenVPMS Installation Files 
  • Download the latest OpenVPMS Installation files from here.
  • Unzip the Installation Pack onto your OpenVPMS server; This should create a openvpms-release-1.4 folder with the necessary files to install or update OpenVPMS.
Stop Tomcat Service 
  • Stop Tomcat
Database Backup The 1.3 to 1.4 database upgrade process is quite extensive so we strongly suggest performing a MySQL database backup prior to attempting the upgrade.  Use the MySQl administrative tool or phpmyadmin under Linux to create a backup.
OpenVPMS Database Upgrade Depending on the size of your OpenVPMS database the upgrade process can take some time so we suggest you give yourself plenty of time for the process to complete.
  • Open a command prompt.
  • Navigate to openvpms-release-1.4\update\db folder
  • Start the mysql command line client and enter the following commands 
    mysql -u root -p
    mysql> use openvpms;
    mysql> source migrate-1.3-to-1.4.sql ;
    mysql> quit;
    
Download and install the Mysql JDBC driver  This release does not package  the Mysql database JDBC driver that is required by OpenVPMS to talk to a Mysql database installation.  This is due to license restrictions on the Mysql connector. 



Using your current OpenVPMS-1.3 installation you can copy the necessary files from this installation to the  new 1.3installation and Tomcat using these instructions:
  • In the openvpms-release-1.3\lib folder find the file mysql-connector-java-5.1.5-bin.jar and copy to openvpms-release-1.4\lib folder.
  • This file should already be in the Tomcat shared\lib  folder from the 1.3 upgrade.
Reload the Archetypes 
  • Navigate to C:\openvpms-release-1.4\bin
  • Run the archetype load utility  by typing archload
Update the OpenVPMS web application 
  • Navigate to the Apache Tomcat webapps folder
  • Delete the existing  openvpms.war file
  • Delete the existing openvpms folder
  • Copy the  openvpms.war  file from the openvpms-release-1.4\webapps  folder to the Tomcat webapps folder.
Start Tomcat 
  • Restart Tomcat

 

1.5 Release Implementation Guide

This guide provides a valuable resource for implementers who want to understand some of the key software changes that have been incorporated in the 1.5 release. It does not detail all of the new features and improvements in the 1.5 Release but specifically details those new features and improvements that will require specific setup steps to be performed post the 1.5 upgrade.

In some instances the notes relate to significant changes in look and feel that may require additional user training.

The documentation is structured as a page per significant feature or improvement.

Customer Alerts

The customer notes area in OpenVPMS has been modified to split notes into notes and alerts.  This was done to allow more detailed display of customer alert information in the customer summary section as well as to make customer alerts work the same way as patient alerts.  These changes are detailed in the following JIRA request  and you can see an example of the new customer summary display in this screenshot.

Customer Alerts Screenshot

 

The previous Alert button has been replaced with specific coloured and prioritised buttons which can can clicked to get more detailed information.  These alerts are also displayed while creating and editing appointments.

During the upgrade to 1.5 the database update script finds all the Customer Note Category lookups that are associated with Customer Notes that have the Alert flag ticked and then creates new Customer Alert lookups for these.  The lookups have their Priority field set to High and their Colour set to Red.  It then migrates all the existing Customer Notes that have alerts to be Customer Alerts and deletes them from the Notes.

In order to setup the colours and priorities of these new Customer Alert Type lookups you need to go into Administration -> Lookups and edit the newly created lookups to your desired settings. 

Customer Alert Type editing

You are of course free to add additional Customer Alert Types.

From a user perspective they will need to told that they need to now make a decision in Customer -> Notes & Alerts which they will create.  Only alerts will be displayed in the customer summary and new appointment screens.

Patient Alerts

In conjunction with the Customer Alert changes noted previously, release 1.5 has made some changes to the existing Patient Alerts feature.

Patient Alerts

The previous Alert button has been replaced with specific coloured and prioritised buttons which can can clicked to get more detailed information.  These alerts are also displayed while creating and editing appointments.

From a implementation perspective the only required task is to modify the existing Patient Alert Types to set their colour and priority. Again this is done in Administration -> Lookups as was the case with Customer Alert Types.

From a users perspective little changes except they do not need to click the Alerts button anymore.

Default View Highlight

You can set the default highlight for specific Schedule and Work List views as per Jira Entry.

To setup the default highlight edit the Schedule or Work List view from Administration -> Organisation as shown in this screen shot.

Templates

There are a number of template changes that effect general printing and the behaviour of printing.

Print Copies

Wherever you see an interactive print dialog in OpenVPMS you will now notice a Copies selector.

You can set the default copies for any specific template in the Administration -> templates workspace using the new Copies field.

If the Template Printer is setup to be interactive you will get a chance to modify this at the time of printing.  If not then this will be the number of copies that will be printed automatically.

Preferred Print Mode

A new template option now allows you to control how printing certain templates behave during checkout and also  when documents are created during invoicing certain products.

 

The new Preferred Print Mode field allows control over whether documents are printed immedaitely when created during charging, are printed at check-out or only printed manually.

The following outlines the behaviour of the three options.   

Immediate. The document will be printed immedaitely when invoice is saved. If the template is set to interactive then it will prompt with the standard printer dialog which you can Skip if required. If you Skip  the document will then be presented at check-out.

Checkout. The document will be presented at Check-out using the standard check-out printing dialog and will be automatically ticked. This is the default settings as this is the behaviour for all previous releases.

Manual. The document will not be printed immediately and will be presented at Check-out by unticked.  Typcailly for forms that the user wishes to manually print or only occassionally print at check-out.

Interactive Reminders

Reminder Types and Product Reminder Links can now be set to display a new reminder dialog when reminders are generated through charging.

The Reminder Type Interactive flag is used as the default for any new Product Reminder interactive settings.  That is if you link a reminder to a product the setting for Interactive for the link will be determined by the setting in the Reminder Type.  This will not effect existing links just any new links created.

In the product you can nominate whether you want a specific reminder to be interactive or not overriding the original setting in the reminder type.

The default setting in non interactive so, from an implementers perspective, you will only need to modify those products that have reminder type links that you want to change to be interactive.

When set to interactive the users will get a new reminder dialog appear when they select the product with the default due date set to the interval defined for the product.  They can accept or override this date.

Medical Records Improvements

By far the most significant User Interface and operational changes is Medical Records editing.  These changes will be evident in the Patient ->Medical Records and the Check-In and Consult workflows. The changes are described in detail in the Direct Editing and Streamline Visits Item JIRA's.

This screen shot shows you the Consult workflow initial Edit Medical Records dialog.  You will note the screen is actually the summary medical records screen and you can do all the normal filtering, scrolling and reviewing functions on this screen as you would do in the Patients - >Medical Records summary page.

If you want to add a new entry just click on the New button and the following New Medical Record dialog will appear with the default entry being a Note.

When you want to edit a specific medical record entry there is now no longer a need to select the appropriate visit, click Edit and then select the visit item to edit from the table (i.e note, investigation etc).  Just double click on the entry on the summary screen and a edit dialog will appear as is shown below for a note.

 

All of these changes are designed to streamline editing Medical Records and to circumvent the locking issues when check-out and medical records editing happened simultaneously.

Charging Improvements

Although there are no new charging configuration options there has been a number of significant improvements to charging.  These are primarily designed to streamline the charging and are outlined in this JIRA.

On entering the new invoice you will first notice that a new invoice entry has automatically been added and is ready to enter the patient or product.  

You will note the additional buttons at the bottom of the invoice dialog.  These allow you to save the invoice and simultaneously set the invoice to the desired status, Completed or In progress.  The Ok button is still available allowing you save as normal leaving the status unchanged.

Next and Previous buttons and keyboard shortcuts have been added to allow you to easily move between invoice entries.

The Add button is disabled when you have a invoice entry that has not been completed (No Patient and/or Product selected). 

Previously if you tried to Save the invoice and there was a entry without a Patient and/or Product you would get a validation error and have to enter the information or delete the entry.  These entries are now automatically removed.

Macro Improvements

A popup Macro selector has been implemented as per this JIRA.

Also Macros can be used in Letter input fields as per this JIRA.

The Macro screen can be displayed in any text box field using the Alt-M keyboard shortcut.

Workspace Improvements

A number of workspaces in OpenVPMS have been changed to streamline bulk editing and viewing.  These changes are detailed in this JIRA.

The workspaces that have changed are:

  • Products -> Information
  • Administration -> Organisation
  • Administration -> Types
  • Administration -> Lookups
  • Administration -> Templates
  • Administration -> Users
  • Administration -> Roles

The idea is to allow the user to create a list then work from that list to edit the individual items. This is contrary to the current situation where selection of a product etc is done through the SELECT button. This means that the list dissapears after a selection is made and needs to be re created to make another selection. Here is an example using the Product -> Information workspace.

Double clicking on any table entry will automatically take you to a standard edit dialog for that entry as shown below.

You will note there are two(2) new buttons on the bottom of the dialog, Next and Previous. These allow you to move backwards and forwards through the previous filtered list making performing mass editing or viewing of details significantly easier.

Selection Ok or Cancel on the edit dialog will return you to the filtered list either saving or cancelling any changes made on that record respectively.

Should you edit something and not Apply the change before using the Next or Previous buttons the following dialog will appear giving you the option to Save, Revert or Cancel. 

Stock Control Improvements

Stock control has been improved by allowing stock reordering preferences to be setup against specific products and stock locations as per this JIRA.

This in conjunction with a new Stock Reorder report can be used to generate a report of products that need reordering.  This new report can be found in the Shared Resources area here.

Electronic Ordering and Deliveries

The OpenVPMS components of first release of the ESCI (Electronic Supply Chain Interface) project are included in version 1.5.  In summary this includes the ability to send Orders electronically, receive electronic confirmation from the supplier that the Order was received, and receive electronic Delivery/Invoice information from the supplier.

In order to take advantage of these new features your  current supplier needs to implement a set of standard ESCI services.  Many Australian suppliers are in the process of developing these based on documentation and tools the ESCI project has already provided.  When implementing these services you will work closely with your supplier to configure OpenVPMS for these electronic services.

From a practice and a user perspective the process is quite straight forward.

When you create an order and the supplier for the order is configured to send electronically, when the order is Finalised it will automatically sent to the supplier electronically.

If this is successful then a dialog will be displayed otherwise if connection cannot be made or there is an error in the order an error message will be displayed and the Order will remain In Progress

You would have noticed in the Order screen shot above a new button Check Inbox.  This button is available in both the Supplier ->Orders and Supplier -> Deliveries workspaces. This button will check all suppliers which are configured for electronic communications in your system and look for electronic Order Responses or Deliveries.  It will process any found and generate messages in the Workflow -> Messages workspace as shown below.

When the supplier has processed the Order you will receive an Order Accepted or Order Rejected  message and it will be linked to the details of the Order it relates to as shown above.  The status of the Order in the Supplier -> Orders workspace will be modified accordingly.

The Order Invoiced message tells you you have received an Delivery notification. The details of the delivery are attached.  Deliveries can be for one or more full or partial orders or not associated with a order at all.

You will find the received electronic Delivery in the Suppliers -> Deliveries workspace marked as In progress.  You can then confirm this against the actual physical delivery and modify and Finalise as appropriate.  On finalising stock and any price updates will occur.

From an OpenVPMS implementation perspective in order for OpenVPMS and the supplier to successfully interact electronically any Product Supplier information needs to include enough information for the supplier and OpenVPMS to understand which product is being ordered and correctly ascertain the number being ordered or delivered.  In order to do this it is imperative that each product supplier has key supplier reorder information and the correct package description and units. 

From an ordering perspective this provides the supplier with a product code they can recognise and the type of package and size you are after.

From an delivery perspective it allows OpenVPMS to ascertain the product being delivered and how to update the stock levels correctly for the number of selling units delivered.   this is especially important if the Delivery is not associated with an electronic Order. i.e. a phone order where you are receiving an electronic delivery notification.

We suggest you work closely with your supplier(s) to implement these new features.

Patient Age Improvements

In the previous version the format of the patient age display in the Patient summary panel and the Patient Information screen was hard coded into the application.  This release allows you to customise this to suit your practice needs. 

Also the patient age at the time of each visit displayed in the Medical Record summary tab is now shown next to the visit details.

In order to customise the display you need to create a Duration Formats lookup in Administration -> Lookups and associate one or more Duration Format lookups to it as shown is this screen shot.

Each Duration Format shown in the list tells OpenVPMS whether to show years, months, weeks or days for any age up to and including the interval and units selected.  It doesn't matter in what order you add the formats as OpenVPMS will order by ascending interval and select the first interval it finds that is greater than or equal to the patients age. 

In the above example this means patients aged up to 3 months old will display in weeks and days, patients greater than 3 months old and up to 1 year old will display in months and weeks, patients greater than 1 year old and up to 3 years old will display in years and months, and patients greater than 3 years old will display in years only.

Although typically you wouldn't create more than one Duration Formats lookup you can and then you can select which one to utilise by associating with the Practice in Administration -> Organisation as shown in this screen shot.

Once a duration formats lookup is associated with the practice that format will be used to display patient ages.  If no Format is specified in the Practice (the default) then the internal default patient age formatting is used (as per version 1.4 and prior).

SMS Features

This release includes the ability to generate SMS messages from the Customer summary panel and when viewing Contacts in the Customer Information workspace as shown below.

The Send SMS button will only appear if the SMS configuration has been completed as described below and the Customer has one or more phone contacts that have the Allow SMS flag ticked.

When the Send SMS button is clicked a dialog is dsiplayed allowing you to enter an SMS message and also, if there are more than one phone contacts that can SMS, allow syou to select the contact to use from a drop down list.

Please note the SMS mesage field displasy the number of charaters remaining in the message up to the limit of 160.  You are free to utilise macros in the message field.  Also implemented are some new macro tags which will allow you to automatically display customer and patient details.  For example the following macro

 concat('This is a test message to ', openvpms:get($customer,'name'), ' about their pet ', openvpms:get($patient,'name')) 

will display

 This is a message to Abbotsford, Dan and Debra about their pet Maple.

You can use this feature to create many standard message macros suitable for your own practice.

SMS Configuration

OpenVPMS uses email to send SMS's so the selection of SMS provider is restricted to those providers that provide an Email to SMS gateway service.  Fortunately most providers do provide this service so your choice is large allowing to shop on service and price rather than being restricted to one or only a few SMS providers.

In this release we have provided three(3) different SMS configuration options.  Two(2) of these are for popular SMS providers, SMMSGlobal and Clickatell.  The third configuration option is Generic and can be used for nearly any other SMS provider.

You will need to sign up with an SMS provider and setup your account and specific preferences with them before configuring OpenVPMS.  Each provider will have their own specific setup requirements.

To add a SMS configuration firstly goto Administration -> Organisation and click New and select the appropriate SMS configuration option from the list.

SMS Global

The SMS Global configuration screen is shown below.

Country Prefix:  This will be added to the front of the number to internationalise it.

Area Prefix: This will be removed from the front f the number to internationalise it.

From: Must match the sending email address settings when you setup email preferences in your SMS Global account. You can restrict which email address can initiate sending SMS's in the SMS Global account preferences on the SMS Global web site.  Within these settinsg you can also stipulate if any SMS replies are sent to the sending or another email address.

Clickatell

Clickatell has a more detailed configuration and is generally more secure as users need to know a few more details in order to send SMS's through their account.

User Id:  Your Clickatell account user id.

Password: Your Clickatell account password.

API Id: Provide when you create account.

From:  The from addres Clickatell require.

Reply To:  The address any SMS responses are sent to.

Generic

The setup of the generic SMS configuration is beyond the scope of ths document.  We suggest you utilise the Implementers forums to request any information about setting up the Generic SMS configuration for your SMS provider.

Note:  In each of the configuration screens you have a test section which allows you to test the setup by entering a telephone number and message to send and clicking Send SMS.  We suggest you use this to test both the SMS configuration and succesful receipt of email responses.

Practice Setup

Once you have created your specific SMS configuration you need to link it to the Practice as per this screen shot.