EdocWriter User Guide

Version 2.4

03/05/2005



Introduction

Purpose of EdocWriter

Thank you for selecting EdocWriter for your patient discharge documentation requirements.

The primary purpose of EdocWriter is to provide health organizations the ability to implement a system to provide meaningful instructions and reiterate important facts that patients must keep in mind when they leave the health facility. Such capabilities include the ability to create prescriptions, provide doctor notes to outside organizations, or direct the patient to specific referral doctors.

A secondary purpose is to allow health organizations to deploy and customize the system to meet the requirements of diverse users. This system has evolved from a desktop focus to an enterprise focus. Specifically the product was designed to:

  • be deployed on local area networks, wide area networks, intranets, or internets
  • be able to communicate with external computer systems using the Health Level Seven standard
  • be able to assure patient confidentiality when communicating with external health organizations to which patients were referred
  • be able to incorporate the richness of presentation available in Internet browers
  • be able to support the integration of personal computer devices
  • insure data integrity through centralized control
  • utilize the increasingly popular XML (Extended Markup Language) standard.

The product is designed to be easily implemented using default settings, and with more effort to customize every facet of the system. EdocWriter can be installed by a computer novice on a local workstation if no significant customization is undertaken. Custom or standard, once configured the product is designed to be deployed easily and rapidly to additional workstations.

Computer System Requirements and Architecture

Any new Windows computer can run EdocWriter. At a minimum you should have Windows 95 and 32mb of Ram memory. Most clients will deploy the system on a local area network, some on a wide area network, and others may choose to implement parts of the system on either a internet or intranet. Deployment on networks is more reliable but also more complex.

The remainder of this section is somewhat technical, so you may want to skip it unless you have a good understanding of computer technology.

Technical Section - requires some technical knowledge

Computer technology used to develop EdocWriter

EdocWriter was developed using MicroSoft's Visual C++ MFC facility. Third party (non-MicroSoft) vendor tools were used for the fax server, html rendering and editing, and the more complex window graphic user interface controls. The Open Database Connectivity standard (ODBC) is used for the database communications, and the product is delivered with an ACCESS database. We will provide the Structured Query Language instructions to populate an ODBC compliant database other than ACCESS if requested to do so.

EdocWriter utilizes the Extended Markup Language (XML) both internally and externally. The instruction text, the HL7 derived input, the saved patient data, as well as the text fed to the html renderer are in XML. Internally, the system has a XML based engine that translates user selections into XML instructions. These instructions are saved under each patients name, and provide the basis of recreating a patient encounter.

An external program can communicate with EdocWriter by creating the appropriate XML commands and sending them to EdocWriter via a file that EdocWriter polls, or, in a future release, through a TCP/IP socket. This would allow hand held devices to communicate with the system remotely.

If deployed on an intranet or the internet, EdocWriter utilizes the File Transfer Protocol (FTP). The system is shipped with an ODBC driver for the mySql relational database to use as the inter/intranet database.

Email support is integrated within the application, so the program does not depend on MicroSoft's MAPI facility. Email communication is via a internet socket connected to the standard port 25. The database maintains the record of current email addresses and other email configuration parameters.

A program is provided to act as a Health Level Seven (HL7) server. If EdocWriter is to be integrated into a HL7 environment, a single instance of the HL7 interface program should be created and running constantly. This program then forwards the patient information to a common pending patient location for the workstations.

Superior Network Performance

EdocWriter should be installed entirely on a file server where it is accessed by individual workstations. Because the program loads all the table data on startup, the only time a user should notice any degradation in performance is when the system is first started on the workstation, and possibly when printing documents if the printer is slow.

Once loaded EdocWriter will use little network bandwidth. The only communications over the network will be the retrieval of instruction text and the writing of two small text files. The retrieved instruction text is cached, so the same information is not read twice.

Installation

The installation program will display a legal document indicating that the product is copyrighted, then ask for your name, and which directory to install to.

During installation, EdocWriter may notify you that it wants to install MicroSoft Data Access Components or Adobe's Acrobat Reader. These products are necessary for EdocWriter to communicate with the database and to print out this guide. However if you know you already have them installed, you may not want to reinstall. Reinstallation should not cause a problem.

If you want to use automatic updating from the internet, you will need MicroSoft's Internet Explorer 4.5 or above installed.

Be sure to set the security rights to the directory to allow both read and writer privleges over the install directory and sub directories.

Installing on Additional Workstations

If you have installed EdocWriter on a file server, it is necessary only to create a short-cut on the workstation desktop pointing to the EdocWriter file called "edocwriter.exe" on the file server and set the start in directory to the EdocWriter directory. EdocWriter will then configure the workstation the first time this short cut is started (i.e. clicked).

EdocWriter does this by initiating an install program that will set up the workstation. It will be necessary to restart the workstation after this install program completes.

Setting and Resetting the Workstation Site and Printers

The first time you start EdocWriter on each workstation, you will be asked to select the workstation site and set the printers that are going to be used.

You can reset the site information after installation by choosing the Reset Site and Printers option in the Modify Workstation Settings option on the Menu Bar.

Typically there will only be one site initially, but there can be many. Each site has their own customized user list and certain specific information for output documents like the site title. These settings are specific to each user log in name. When this initial dialog appears:

The system can be set to not allow the user to reset the workstation printers by disabling this feature in the Menu Button Structure XML configuration file.

  • click on the appropriate site. Click on OK
  • The following two steps will be repeated for each type of output document
  • A dialog window will be displayed indicating a printer has not been defined for a document type. Click OK. A printer dialog will be displayed.
  • Click on the printer for the document. click OK.

The program must be terminated and restarted after initially selecting the site and printers, or resetting them.


Getting Started

Starting the program

At this point EdocWriter should be installed. You should be able to start the program from the desktop if you:

  • click on Start
  • click on Programs
  • click on the EdocWriter menu group
  • click on EdocWriter


Start the program if you have not already.

After You Start The program

The main window will be shown. It has buttons on the top right, a Instruction Categories List on the top left, a Physician User List on the bottom right, and a Selected Items List (none so far) on the bottom left.

edocmenu.jpg

Example: Create and Print A Simple Patient Instruction

At a minimum you need a patient name, doctor's name, and an instruction. The most simple discharge document would require the following steps:

Example: Create and Print A Simple Patient Instruction Using the HL7 Interface

If your facility has the Health Level 7 interface enabled, to create a minimal patient discharge document would require the following steps:

Example: Create and Print A Simple Patient Instruction with HL7 Interface and overrides enabled

  • click on the Pending Patient Button. An admitted patients list will be displayed.
  • double click on the appropriate patient name. The patient name will be added to the lower right list box. The cursor will move to the patient instruction list.
  • double click on the appropriate patient instruction (note the patient instruction will be added to the lower left box.)
  • click on the Print Button or push Function Key F5.

To avoid having to reach for the mouse, use the
Function Keys, the tab, or up/down keys on the keyboard.

The Initial (Main) EdocWriter Menu

Okay, so we can produce a simple instruction. What is the rest of this stuff on the main menu? Although this initial menu is pretty self-explanatory, here is an overview:

The Menu Bar

On the top is the typical Windows Menu Bar with File, Search, Search Next, and Minimize options.

Here is a short description of each

You can invoke these functions without the use of the mouse by pushing the ALT key and character that is underlined at the same time (e.g. the File function would be ALT+F).

Menu Buttons

In the upper right are a number of buttons. The user can set which buttons are to be displayed. Here are the buttons available:

  • Start a new Patient Button clears all existing client information entered and requests a patient name (and other information if required).
  • Select An Existing Patient Button brings in all the information generated during a prior session for a particular patient on a specific day.
  • Pending Patient Button used to select from the list of admitted patients sent from the HL7 interface.
  • Show PI Instructions Category/Show Diagnosis Button changes whether the Patient Instruction Category List or the Diagnosis Tree List is displayed.
  • Print Button prints the patient discharge document that includes patient instructions associated with diagnoses, doctors notes, prescriptions or follow-up notes.
  • Edit Button allows for editing a patient discharge document prior to being printed.
  • Language Button changes instruction language.
  • Font Size Button (not shown) changes the font size of patient instruction.
  • PICombo Switch Button (not shown) changes the upper left list between showing patient instructions in a combo list box and a display of patient instruction categories. This is an alternative to setting the workstation default option for this via the menu bar . For more information see this section about using a combo list box..
  • Doctors Directory Button displays information on doctors and allows a physician to be added to the user list temporarily.
  • Doctors Note Button creates doctor notes.
  • Follow-Up Button creates a note requesting the patient to follow up with outside treatment.
  • Medicine Instruction Button inserts medicine instructions.
  • Prescription Button creates prescriptions and inserts appropriate medicine use instructions.
  • The Physician Note Button is a short cut to the follow-up note allowing the physician to enter text into the discharge document.

Patient Instructions or Diagnoses List

There are a lot of options available here. Directions on options will be given in greater detail later, but a summary will be provided here because this part of the screen is so visible. In the upper left is a box that alternates between showing either Patient Instruction lists or Diagnoses lists. By default a Patient Instruction Category list is displayed here. If your organization wants to attach and print a diagnosis on the discharge instruction, there a number of options:

There are additional options here that dramatically affect what the user sees:

If the Patient Instruction Categories are shown and the user double clicks on one of the Patient Instruction Categories, a Patient Instruction List for that category will be displayed. Once a patient instruction has been selected from this list, the appropriate instruction is added to the list of instructions and notes to be printed on the discharge instruction.

Physician User List

In the lower right is a Physician User List. Individuals can be selected and identified as the physician of record on the instructions.

Immediately after entering a patient name, the program will place the user in the Physician User List. The name of the doctor selected for the prior patient instruction is selected by default. A simple ENTER key stroke will select that doctor. EdocWriter can be set to automatically add the name of last physician, bypassing this step.

Alternatively, a doctor can be selected by double-clicking on an individual entry with the mouse or by using the down arrow key to highlight the desired name, followed by an ENTER key. You can also type in the first character of the name to scroll as well.

There are a number of options available that will addressed later.

Assistant and Additional Care Provider List

If an organization utilizes physician assistants or would like to add individuals other than the physician, the user can set the system to ask for this individual after the physician is selected. The Physician Assistant/Physician Users list Button will be displayed if this option is chosen. Immediately after the physician user is selected, the list of physicians is replaced by a list of assistants/additional care providers. More than one health care provider can be added to the discharge document. EdocWriter can be set to allow for none, one, or more than one additional care providers. If the more than oneoption is selected, the system will not move to the patient instruction list box automatically after a selection is made.

Customizing the Initial (Main) Menu

EdocWriter is designed to encourage changing the initial menu to match your preferences and business requirements. For instance, by default the patient instructions were selected first by selecting the patient instruction category, and then selecting from a list of patient instructions. You could set the program to display the diagnoses first.

Display Diagnoses initially instead of the Patient Instructions

Display Patient Instructions automatically after a Diagnosis is selected

Instead of clicking on the third button, Show PI Instructions Category/Show Diagnosis Button, the user can set the list to appear right after the diagnosis selection. To change:

Select a Patient Instruction or Diagnosis by typing in the first characters of the name

Do not like to use the mouse? This will present what MicroSoft refers to as a combination edit and list boxes. Instead of scrolling to the desired item, the user can type in the first few characters, and the list will automatically scroll to the desired place (it should be noted that even in a plain list box, entering the first character will cause the list to scroll to that part of the list). To change:

The user can also create a menu buttons to allow the user to switch between the list types.

An example of the display using a patient instruction combo list box:

edocmenu3.jpg

Select physician assistants to be included on printed documents

The printed discharge document must provide the name of the physician. The physician assistant can also be listed. If this option is set, a list of physician assistants will be presented immediately after the physician has been selected. Some clients may wish to include more than one care provider or assistant. There are three options available, to not allow for any, to allow for just one care provider (in addition to the physician), and to allow an unlimited number.

To set the system for a single additional care provider/assistant:

The care provider information can be then inserted into the discharge document where desired in the Patient Instruction Header Template.

Allow Many Assistants to be included on discharge instructions

To set the system for multiple care providers/assistants:

The care provider information can be then inserted into the discharge document where desired in the Patient Instruction Header Template.

Modifying, Deleting, Printing, and Saving a selected item

The Selected Items list allows the user to make changes to the selected items.

Double Click to edit instructions from the Selected Items List

The user can edit items from this list by:

  • double clicking on the item to be edited. The instruction will be displayed in an editor.
  • change the text as desired.
  • enter an ESC keystroke or click on the window exit to terminate. Any changes made will be saved. Reselect the item if you decide to not save the changes.

Using the Delete Key to delete instructions from the Selected Items List

As the user selects instructions to add to the patient's discharge document, they are listed in the box in lower right corner of the main window - the Selected Items List.

The user can delete items from this list by:

  • click on the item to be deleted.
  • push the delete key on the keyboard.

Right Click to delete, edit, print, or save from the Selected Items List

Selected items can be modified by a right click on the item in the Selected Items list. A dialog box will be displayed.

sel_item_dlg.jpg

A click on an option will:

  • Print the item. If the selection is a patient instruction the entire discharge instruction will be printed.
  • Delete the item. This is the same as using the Del key.
  • Edit the item. This is the same as a double click
  • Save the item as a package. The user will be asked to enter a label to be displayed to the user. The default label is the current label. The user will also be asked to give the macro a name. This would allow the user to create their custom patient instructions.

Changing the user physician name

Changing the selected physician
  • double-click on a new doctor name in the Physician Users list.

Common Modifications

EdocWriter is designed to be customized. The more common types of modifications are presented in this section.

Modifying a prior Patient Discharge Instruction

  • click on the Select an Existing Patient Button. A patient list will be displayed.
  • click on the desired Patient. The patient will be added to the Selected Items List.

When first invoked, this presents a list of patients processed through EdocWriter for the current day.

Adding a user name to the initial main menu

There are two ways to add a physician not on the Current Physician Users list.

For the remainder of the EdocWriter session
  • If the physician's name appears in the Doctors Directory, click on the Doctors Directory Button, and then double-click on the desired name. The name will be added to the end of the Physician User Listfor the remainder of the EdocWriter session.

By default
  • Start and then click on the "Care Provider" button in the EdocWriter Modify program..
  • select Existing or New
  • check the On Physician Menu List or the On Assistant Menu List check box.

Adding a Referral Care Provider

Adding a referral doctor or organization is the same as adding a user. If an organization is being added, enter the name you would like the organization to be identified by in the last name parameter, and leave the first name blank. Because the lists the referral care providers are selected from and the tokens used in the discharge instructions use the last name parameter, the user and patient will see a organization name or a physicians last name.

To add a referral doctor or organization then requires only to:

  • Start and then click on the "Care Provider" button in the EdocWriter Modify program..
  • select Existing or New
  • select New
  • enter the appropriate data.

Printing Prescriptions and Medicine Instructions

Description of the prescription dialog window

When you click on the Prescriptions button from the main window, you will see a dialog window presented like the one shown here: edoc_rx_add.jpg

Here is a list of the elements in the dialog window

edoc_rx_subs.jpg

Creating a Prescription

  • click on the Prescriptions button from the main window.
  • double click on the medicine you want. The cursor will skip to the Rx box. If you do not see the medicine you want, you can add it by using the Add a New Medicine button to the right in the System Table Modification group.
  • press the down arrow key or click or enter the first characters of the prescription you want.
  • select or edit any values in the Rx, Disp, and Sig combo list boxes by clicking in the list boxes or entering the values desired in the edit box. The values entered will be remembered and made available the next time.
  • Prescriptions can require the user to input specific prescription information - for instance a specific quantity. Such information is denoted by two or more underlines ("__"). These lines should be replaced with values. EdocWriter will not allow the user to exit the dialog successfully unless such fields are filled with information.
  • click on the OK button.

Additional output documents and capabilities

Printing a Work slip or Doctor's Note

A work slip or Doctors Note is a note on behalf of a patient for an outside organization. It can be printed on a specific type of printer to allow for small forms. To create such a note:

  • click on the Doctors Note Button
  • click on the desired Doctors Note. The instruction may request information from the user. The note will be added to the Selected Items list.

Printing a Referral Note or Follow-Up Note

This type of note inserts instructions into the discharge document indicating the need for further medical attention.

  • click on the Follow Up Note Button
  • click on the desired Note. The instruction may request information from the user. The note will be added to the Selected Items list.

Inserting a physicians note into the discharge document

A physician note can be included in the discharge instruction to add instructions specific to the patient

  • click on the Physician Note Note Button. A word processor type of dialog window will be displayed.
  • after the text is entered, click on the OK button or hit the escape key.

Faxing a copy of the discharge document to a referral doctor

A copy of the discharge document containing the referral follow-up text can be sent to the referral doctor can automatically or on an exception basis.

  • One time basis: click on File in on the Menu Bar at the top of the menu, then select Fax Current Discharge Document. EdocWriter will request the fax printer to use the first time each session. You will need to enter the fax number.

    Automatically where patient confidentiality is assured
  • The fax server must be installed and enabled
  • Create a new template containing only appropriate text to be sent
  • Map the new template to the template being provided to the patient
  • When selected, the template to be sent will be added to the Selected Items List. If not deleted, it will be sent when the discharge instruction is sent to the fax number that exists for the referral doctor exists in the Doctors Directory

    Automatically where patient confidentiality is not assured
  • The fax server must be installed and enabled
  • One a one time basis, use the Sqlloader to set all template map parameter values to equal their own key value.
  • When selected, the template to be sent will be added to the Selected Items List. If not deleted, it will be sent when the discharge instruction is sent to the fax number that exists for the referral doctor exists in the Doctors Directory

Including medicine instructions

If there is an instruction for a medicine, the system will print it in the discharge document. The medicine instruction is included by default with the prescription. check box.

Alternatively, medicine instructions can be printed without a prescription form being generated through the Medicine Instruction Button on the initial main menu.

Resetting the Workstation Site or Printers

To reset the printers

  • From the main EdocWriter window, click on File menu option, then click on Workstation submenu option.
  • click on reset printers ... A dialog window will be displayed.
  • click on the appropriate site. Click on OK
  • The following two steps will be repeated for each type of output document
  • A dialog window will be displayed indicating a printer has not been defined for a document type. Click OK. A printer dialog will be displayed.
  • Click on the printer for the document. click OK.

Using the keyboard to navigate around the menu

The Enter Key

Every button, dialog and list should have a default value. Hitting enter will automatically select the default value. For lists, the default value is highlighted, for buttons the default value will have a rectangle of dots (hard to explain, but it is obvious when you see it). For instance, when first started, an Enter invokes the New Patient Button. After the first name is entered, an Enter key will move to the last name, and after that an Enter will move to the Physician Users list, and so on.

The Tab Key

The tab key will generally move you to the next button or list.

The Up and Down Arrow Keys

These keys can be used both to navigate about the main menu and about the list and combo list boxes. Using the arrow keys will move the "focus" (be highlighted) either up or down. Hitting the Down arrow key in a combo list box will cause the first element to gain focus, thereby allowing use of the Page Up and Page Down keys

The Page Up and Page Down Key

These keys will cause lists and combo lists to rapidly scroll up and down. The lists must have "focus" (be highlighted)

Keyboard Function Keys

The function keys at the top of the keyboard will immediately invoke movement to specific buttons and lists. The default mapping of the keys to the buttons or lists is -

  • F1 HELP
  • F2 START A NEW PATIENT BUTTON
  • F3 SHOW DIAGNOSES/PATIENT INSTRUCTIONS BUTTON
  • F4 PRINT INSTRUCTION BUTTON
  • F5 EDIT INSTRUCTION BUTTON
  • F6 DOCTORS DIRECTORY BUTTON
  • F7 DOCTORS NOTES BUTTON
  • F8 FOLLOW-UP NOTES BUTTON
  • F9 PRESCRIPTIONS BUTTON
  • F10 PHYSICIAN NOTE BUTTON
  • F11 DOCTORS LIST
  • F12 PATIENT INSTRUCTION/DIAGNOSIS LIST

The functions keys are mapped in a clockwise direction beginning with the upper right corner button.

The user can change what buttons are displayed, the order, and the mapping of the function keys by modifying the Button Structure XML file .


Instruction Packages

Packages: Saving and recalling sets of instructions

A package is a set of instructions that have been saved to be recalled at a later time. The reasons for doing this is to save time and increase quality of care. Here are some specific reasons:

  • to minimize errors you create a set of instructions and prescriptions that have been tailored for a specific situation.
  • each physician may have their own library of specific instructions that have been customized for them.
  • your organization see patients more than once. You want to create a set of prescriptions that they will receive each time they see you.

The default library is can be can be set to be unique for each user or based upon some other value.

Saving Instructions to create a Package

How to create a package
  • The standard Windows Drag and Drop facility is used to create new packages. Hopefully you are familiar with this, but if you are not, the instructions and a couple of tries should be sufficient to do it ... Select the instructions as you normally would. All the items should be shown in the Selected Items List.
  • Drag the instructions by clicking on the first item, and then while simultaneously holding down the shift key, click on the last item to be saved. As you hold down the shift key you can keep the mouse clicked on the highlighted items. Drag them to the Instruction Packages button. A File Dialog will be displayed. You can release the shift key and mouse button.
  • Click on the directories shown until you find the one you want. New directories can be created, but this must be done outside of the program using the standard Windows Explorer or My Computer tools.
  • Enter the name you want to associate with the saved instructions, and click on Save.

Retrieving saved instructions in a Package

How to retrieve an Instruction Package
  • Click on the Instruction Package button. A File Dialog will be displayed.
  • Click on the directories shown until you find the name of the package that you want.
  • Double click on the desired package. The package will be added to the Selected Items List.


The HL7 EdocWriter Interface Program

What is HL7?

The HL7 Interface is used in the health care industry to transmit information between computer programs. This common standard allows an organization to integrate products from a variety of vendors. Patient information is often available from your patient admission system. EdocWriter can access this information to save you the time of entering patient name and account information.

Starting the HL7 EdocWriter Interface Program

The HL7 EdocWriter Interface Program acts as a HL7 server receiving notification of admission information from the computer software processing patient admissions. When it recieves this information, the HL7 EdocWriter Interface Program creates an XML command file containing the patient information and sends it to the Pending Patient Directory.

To start the HL7 EdocWriter Interface Program
  • From the Windows Desktop click on start
  • click on programs
  • click on EdocWriter
  • click on HL7 EdocWriter Interface

Description of Program User Interface

Once the program has started, you should see a dialog appear like the one shown below:

edochl7.jpg

A list of the various controls follows:

  • In the upper right is a Display group. These radio buttons are used to set the type of information that will be displayed in the list box to the left. There are these choices:
    • display the raw input data
    • display how the segments are created from the input data
    • display the xml to be sent
    • display the parsed xml read from the configuration file
  • Below this group is the Errors group. This will show the cumulative errors encountered on the HL7 port and writing to the Pending Patient Directory.
  • At the lower left is the Control group. The Start will open the HL7 port, the Stop will close the HL7 port if it is not actively reading, and the Exit will terminate the HL7 port if it is actively reading and exit the program.

Setting up the HL7 EdocWriter Interface Program

The TCP/IP socket port is used to communicate between the program and the client's HL7 facility (some other computer system). The port number will likely have to be changed to whatever arbitrary number the HL7 facility wants to use. At a minimum, this facility should send a packet consisting of a HL7 start character, MSH message, a PID message, and a HL7 end message character.

The Edocwriter HL7 interface will send back to this facility a packet consisting of a HL7 start character, MSH message, a MSA message, and a HL7 end message character.

In a perfect world all that is necessary to get the interface running is to start the program and wait for the data to be sent.

Hl7 XML Configuration File

The Edocwriter HL7 interface reads a file called edochl7.xml containing configuration instructions. The file can define the following:

  • the port number to read the data from.
  • defines the return MSA segment.
  • defines the return MSH segment.
  • defines the output XML.
  • specifies the output directory.
  • a switch to be used if EBCDIC is received for the segment field delimiter.
  • defines how multi-site implementations are to be handled.
  • Both segments and the output XML is defined by the use of a constant or a variable pointing to another element. A variable can be recognized by the use of the & character followed by a segment field identifier. For instance:

    <F3><VARIABLE>MSH.9</VARIABLE></F3>

    means retrieve the value found in the 9th field of the MSH segment. The first field is the segment name field, and it is defined as position 1. This differs from the HL7 documentation where the MSH segment actually starts with position 0. Some segment fields contain more than one value. The HL7 name for the name (XPN) and address (XAD) fields are currently defined.

    An example of the file follows:

    <HL7-SERVER>
    <PORT>3000</PORT>
    <!-- FIELD INDEX MSA STARTS WITH 1 HERE - HL7 DOC STARTS WITH 0. SO MSA 1 IS MSA 0 IN THE HL7 SPEC -->
    <MSA-OUTPUT>
    <F1>MSA</F1>
    <F2>AA</F2>
    <F3><VARIABLE>MSH.9</VARIABLE></F3>
    <F4>NO ERROR</F4>
    </MSA-OUTPUT>
    <!-- FIELD INDEX MSH STARTS WITH 1 HERE - HL7 DOC STARTS WITH 0 SO MSH.1 IS MSH FIELD 0 IN THE HL7 SPEC -->
    <MSH-OUTPUT>
    <F1>MSH</F1>
    <F2><VARIABLE>MSH.2</VARIABLE></F2>
    <F3><VARIABLE>MSH.3</VARIABLE></F3>
    <F4><VARIABLE>MSH.6</VARIABLE></F4>
    <F5><VARIABLE>MSH.7</VARIABLE></F5> <F6><VARIABLE>MSH.4</VARIABLE></F6>
    <F7><VARIABLE>MSH.5</VARIABLE></F7>
    <F8><VARIABLE>MSH.8</VARIABLE></F8>
    <F10><VARIABLE>MSH.10</VARIABLE></F10>
    <F11><VARIABLE>MSH.11</VARIABLE></F11>
    </MSH-OUTPUT> <XML-OUTPUT>
    <PATIENT-LASTNAME><VARIABLE>XPN.1</VARIABLE></PATIENT-LASTNAME>
    <PATIENT-FIRSTNAME><VARIABLE>XPN.2</VARIABLE></PATIENT-FIRSTNAME>
    <PATIENT-MIDDLENAME><VARIABLE>XPN.3</VARIABLE></PATIENT-MIDDLENAME>
    <PATIENT-ADDRESSLINE1><VARIABLE>XAD.1</VARIABLE></PATIENT-ADDRESSLINE1>
    <PATIENT-CITY><VARIABLE>XAD.3</VARIABLE></PATIENT-CITY>
    <PATIENT-STATE><VARIABLE>XAD.4</VARIABLE></PATIENT-STATE> <PATIENT-ZIPCODE><VARIABLE>XAD.5</VARIABLE></PATIENT-ZIPCODE>
    </XML-OUTPUT>
    <SITE>
    <DIRECTORY>
    PendingPatient </DIRECTORY>
    </SITE>
    <!-- this sets the delimiter for ebcdic <FIELD_DELIMITER_DECIMAL_VALUE>
    -1 </FIELD_DELIMITER_DECIMAL_VALUE>
    -->
    <!-- this sets the up multi-site identifier <SITE-ID-FIELD>
    3 </SITE-ID-FIELD>
    <SITE-ID-SEGMENT>
    MSH </SITE-ID-SEGMENT>
    -->
    <!-- this sets the directories for multi-site <SITE>
    <DIRECTORY>
    PendingSiteOne </DIRECTORY>
    <SITE-ID-VALUE>
    SJC </SITE-ID-VALUE>
    </SITE>
    <SITE>
    <DIRECTORY>
    PendingSiteTwo </DIRECTORY>
    <SITE-ID-VALUE>
    SFC </SITE-ID-VALUE>
    </SITE>
    -->
    </HL7-SERVER>

    How to handle multiple sites

    The following is an example where the xml output is directed to one of two sites based upon the value of segment number 3 of the MSH message. If the value at this location is "SJC", then the data is sent to "PendingSiteOne", and if the value is "SFC" then the data is sent to "PendingSiteTwo".

    <HL7-SERVER>

    <SITE-ID-MESSAGE>MSH</SITE-ID-MESSAGE>
    <SITE-ID-SEGMENT>3</SITE-ID-SEGMENT>

    <SITE>
    <DIRECTORY>PendingSiteOne</DIRECTORY>
    <SITE-ID-VALUE>SJC</SITE-ID-VALUE>
    </SITE>

    <SITE>
    <DIRECTORY>PendingSiteTwo</DIRECTORY>
    <SITE-ID-VALUE>SFC</SITE-ID-VALUE>
    </SITE>

    </HL7-SERVER>


    EdocWriter Internet Browser

    Starting and using the browser

    A start the internet browser click on the File and then Go Online Menu Bar and finally the SupportSite selection. The other options listed here invoke the browser, but point to specific pages.

    The browser only allows the user to navigate to pages on the EdocWriter Web Site.

    Once the program has started, you should see a dialog appear like the one shown below:

    edocbrowser.jpg

    EdocWriter Web Based Facilities

    A "Download" menu option allows the user to download patient instructions and invoke some automatic configuration tools from EdocWriter Workshop on the web site.

    The user can navigate to this page by clicking on the Customer Support link on the EdocWriter Home page and then clicking on the Web Workshop Link on the EdocWriter Customer Support page.

    Checking for updates

    A customized web page for each version of EdocWriter exists to inform the user when an update is available. To check for an update, click on the File and then Go Online Menu Bar and finally the Update EdocWriter selection.

    Before an update is run, the user must make sure no one is using EdocWriter.


    EdocWriter Auto Fax and Auto EMail

    Introduction to Email and Auto Fax Facilities

    EdocWriter can automatically notify an external agency a patient has been referred to them through either fax or email. Additionally, a prescription can automatically be sent to a pharmacy via fax or email.

    Patient privacy is an issue. The system has been designed to meet any privacy concerns by allowing the user to specify what information is to be transmitted. Specifically the discharge instruction is not sent, just a template associated with the selected follow-up note. If privacy is not a concern, this associated template can contain a command instructing that the entire discharge instruction is to be included.

    The system can be configured to send faxes or emails (or both), either through a central server, or directly from each workstation. A central server is the recommended approach because it is more reliable and provides better control.

    Setting up the auto Email function

    The requirements for either Email or fax are similar. The most significant difference is that the auto fax function requires the specification of fax printer. Instead of repeating the instructions, follow the instructions for Setting up the auto fax function , substituting "email" or "fax" where appropriate.

    Summary of basic Steps for setting up Auto Fax or Auto Email

  • Set up the autofax on the fax server using the installautofax.exe.
  • Add the appropriate token to the patient instruction configuration file.
  • Verify that the enable fax or email directory is enabled in the configuration table.
  • Verify that the fax directory is specified in the configuration table and that the directory does exist. Relative paths should be used.
  • Turn the enable email or fax option in the Includes part of the Modify Care Provider dialog. If global changes are to be made, it would be quicker to identify the referral physicians that can receive sent information in the Care Provider table.
  • Associate the template to be used when a follow up instruction is selected in the Modify Template Dialog. An association must exist for each follow up instruction that will result in a fax being sent.
  • If using the auto email, enter the email server address, reply to address, and email subject line in the EdocMailServer configuration file.
  • Restart the program if changes have been made after the program has been started.
  • Setting up the auto fax function

    When the user selects a follow up instruction referring the patient to an outside care provider, EdocWriter will check to see if the auto fax or email functions are enabled, and secondly whether a template exists that is associated with the follow up instruction that has been selected. If these conditions are met, then a fax or email notification will appear in the Selected Items List. The user can delete this notification from the list, and it will not be sent. If not deleted, the fax or email will be sent when the Discharge Instruction is printed.

    Associating fax and email templates with follow-up note templates

    The process is to first create a template of the type fax or Email, and then create a link to a template of the follow-up note type.

    • Create a new template per the instructions above
    • click Select .. templates for Email or Faxes from the Template Maintenance Dialog.
    • click Select .. templates for Email or Faxes from the Template Maintenance Dialog, and click on next.
    • click on the follow-up note that you want to fax or Email automatically from the list box on the right side.
    • click on the fax or Email template to be sent when the selected follow-up note is chosen by the user.
    • click on the fax this and/or Email this radio button indicating if the relationship applies to either or both.
    • click on the Add Relationship button.

    Including the Discharge Instruction in an Auto Fax or Email

    A fax or Email template can include the token ADD_PI, which will cause the entire discharge instruction to be inserted in place of the token.

    The EdocWriter Auto Fax and Mail Server is designed to run on a centralized computer and process fax and email requests from all sites. This is an alternative to sending such messages directly from each workstation to the recipients. Using a centralized server should reduce maintenance issues and increase reliability.

    When the program is running it will periodically search for email or faxes that have been generated. When found, the program will send the information to the individual specified, and the information will be marked as have been sent. If the program is not running, email or faxes to be sent will continue to accumulate until the server program is run. After starting, the program will wait for the delay time period (approximately 20 seconds), and then begin searching. This is to allow the program to be started automatically whenever the computer server is restarted if the program is included in the list of start up tasks.

    Description of Program User Interface

    Once the program has started, you should see a dialog appear like the one shown below:

    edocmailserver.jpg

    The following controls are available:

  • A button to toggle the processing of fax information.
  • A button to toggle the processing of email information.
  • A list box displaying the recipients and the transmission type.
  • A list box displaying the most recent status of the fax subsystem.
  • A list box displaying the most recent status of the email subsystem.
  • An Options Menu Bar choice that can cause the display of the text being sent or detailed transmission information.
  • A Minimize Menu Bar choice that can be used to hide the display by moving it to the task bar.
  • EdocWriter Mail Server XML Configuration File

    Configuration information is read from a xml file called edocmailserver.xml by EdocMailerServer and EdocWriter.

  • specifies of often input directories are searched.
  • specifies the input email directories.
  • specifies the input fax directories.
  • specifies the autofax printer system parameters.
  • An example of the file is provided below.

    <EDOCMAILSERVER>

    <POLL_SECS>30</POLL_SECS>

    <FAX>
    <PRINTER> edocautofax </PRINTER>
    <DRIVER> edocautofax </DRIVER>
    <PORT> edocautofax </PORT>
    <DIRECTORY> FAX </DIRECTORY>
    <COVERPAGE_PATH> TemplateData\FaxCoverPage.pg </COVERPAGE_PATH>
    <RETRY_SEND_COUNT>1</RETRY_SEND_COUNT>
    <RETRY_DELAY_SECS>30</RETRY_DELAY_SECS>
    <PREFACE_FAX>9,</PREFACE_FAX>
    </FAX>

    <EMAIL>
    <DIRECTORY> EMAIL </DIRECTORY>
    <MAIL-SERVER-ADDRESS> www.youremailserver.com </MAIL-SERVER-ADDRESS>
    <SUBJECT-LINEY> Patient Referral </SUBJECT-LINE>
    <REPLY-TO-EMAIL> replytoname@youremailserver.com </REPLY-TO-EMAIL>
    </EMAIL>

    </EDOCMAILSERVER>


    Modify EdocWriter Data Program

    Starting the program

    This program can be started from the EdocWriter Program Group in the Windows Start or from the main program menu through the Modify Workstation Settings option in the EdocWriter menu bar. The Modify Data option in the EdocWriter menu bar can be disabled so that users are prevented from making modifications.

    The image presented below is the initial window:

    edocsysmod.jpg

    User Access Restrictions

    User Access from the Modify Data option in the EdocWriter menu bar can be restricted by changing the Modify Command parameter in the Configuration Table.

    The following command line options will hide the appropriate buttons:
  • --NoSystem
  • --NoPrinter
  • --NoTemplate
  • --NoCareProvider
  • --NoRx
  • --NoUcom
  • Template Creation and Modification

    Template Creation and Modification Dialog

    A template is a file containing XML tokens and text used to display all the information that is given to patients. The information here is merged with information generated from the user's selections. Templates are divided into types and versions. Examples of types of templates are medicine instructions, follow-up notes, and output formatting templates such as a prescription form or discharge instruction header . Examples of versions are English Level 5 or Spanish.

    Click on the Template Creation and Modification button will result in the following be displayed:

    edocmodtpl.jpg

    The Template Maintenance Dialog two groups, the Changes to template text group has:

    • Edit an existing template (or create a new language version radio button which is used to modify the text of an existing template or to create a new version. If you already have an instruction for "Headaches" in English Level 9, then you would click on this to create a French version.
    • Create a new template would be selected where no version in any language exists.

    The Changes to table definitions group has:

    • Just change where an existing template is listed radio button changes the information about the template in the database. This would be used to change the description or delete a template.
    • Create an alias allows you to use list a patient instruction under multiple descriptive titles or categories. For instance the same instruction could be called "Fractured Arm" and "Broken Arm."
    • Specify which templates to use for eMail or Faxes allows you to send a copy of a template that is purged of any information that should not be sent. For instance, a follow up note sent to a referral doctor may only contain information that the patient was referred and to contact the referee for additional information.

    How EdocWriter Text Processing Works

    EdocWriter has many of the characteristics of a word processor application. It takes information stored on "boiler plate" documents and merges it with stored information and information entered by the user.

    EdocWriter presents information to the users using HTML, the same technology as internet browsers. For those who are technically sophisticated, the program requires the source data be well-formed HTML as well. To press this a bit further, the program does not require that the source instructions be valid to a specified DTD, however the instructions provided with the system are.

    Creating and editing source documents consists of using a HTML word processor to enter text and indicating the information to be inserted by placing tokens representing the desired information into the text. Although conceptually you can use any HTML capable word processor, many currently do not create well-formed HTML. We have modified the editor that comes with EdocWriter to create only well-formed text.

    Tokens: Inserting patient and doctor information

    A token is a symbol within a template that informs EdocWriter to replace it with specific patient information. Tokens are available for almost any piece of information available on patients and doctors. When you select an instruction or note, EdocWriter will search for tokens in the templates (word processing documents) associated with those instructions and notes. EdocWriter then replaces the tokens with the actual information and adds the resulting merged information to the discharge document being created.

    A token to insert information looks like this:

    <?TOKEN "TOKEN-NAME" ?>

    where "TOKEN-NAME" is replaced by the name of the specific information to be inserted.

    The editor that comes with EdocWriter allows you to click from a list of tokens so you don't need to know this detail. However, for the more technical minded, an example follows.

    Technical Section - requires some technical knowledge

    This is an example of the XML used to create a particular follow up note. The markup that starts with "<?" is a processing instruction. Notice that the last processing instruction invokes a routine to prompt for and insert a date.

    <FOLLOW-UP-INSTRUCTION> Call <?TOKEN "REFERRAL-NAME" ?> (<?TOKEN "REFERRAL-PHONE" ?>) at <?TOKEN "REFERRAL-ADDRESS-LINE1" ?>, <?TOKEN "REFERRAL-CITY" ?> today or as soon as possible. Let the office know that you were seen at <?TOKEN "ORG-NAME" ?> (<?TOKEN "ORG-PHONE" ?>) and that you were told to call the office to arrange a follow up visit by <?ASK-DATE?>. </FOLLOW-UP-INSTRUCTION>

    Tokens: Prompting for information from the user

    Another token will result in the user being prompted to enter information. It is called a prompt token.

    A prompt token looks like this:

    <PROMPT "QUESTION-TEXT" />

    where "QUESTION-TEXT" will be used to form the prompt text. For instance, if the QUESTION-TEXT were to be replaced by "Please enter the number of stitches", then this will result in the Question Dialog displaying this text above a data entry box. The results of whatever the user enters replaces the prompt token in the text.

    Again, the editor that comes with EdocWriter allows you to click from a list of tokens so you don't need to know this detail. However, for the more technical minded, an example follows.

    Technical Section - requires some technical knowledge

    This is an example of the XML used to create a particular doctor note. The markup that starts with "<?" is a processing instruction.

    <DOCTOR-NOTE-INSTRUCTION> <NEXT-LINE /> Doctor's Note for <?TOKEN PATIENT-NAME ?>: <?PROMPT "Enter comments here" ?> </DOCTOR-NOTE-INSTRUCTION>

    Modifying the template of an instruction or form

    To modify an existing template
    • Invoke the EdocWriter Modify Program
    • Click on Template Creation and Modification button. The Template Maintenance and Modificaton property page will be shown.
    • Click on the Edit an existing template check box, and then click on the Next button. The Select the template type ... list box will be displayed with the template types displayed.
    • Click on the type of template and then click on the Next button. The titles of all the templates of the selected type will be displayed.
    • Click on the template to be modified and then click on the Next button. The template versions will be displayed.
    • Click on the template version to be modified and then click on the Finish button. An editor will be started, the template can be edited.

    Creating a new template of an instruction or form

    To create a new template template
    • Invoke the EdocWriter Modify Program
    • Click on Template Creation and Modification button. The Template Maintenace and Modificaton property page will be shown.
    • Click on the Create a new template check box, and then click on the Next button. The Select the template type ... list box will be displayed with the template types displayed.
    • Click on the type of template and then click on the Next button. A dialog box with the title Enter the template title will be displayed.
    • Enter the description of the template into the edit box. What you enter here will be displayed in the list boxes shown to users to make selections from. Click on the Next button. The template versions will be displayed.
    • Click on the template version to be created and then click on the Finish button. An editor will be started, the template can be edited.

    Care Providers

    Modifying care provider information

    A care provider in EdocWriter is a user or referral person or agency. The same information is maintained for all care providers. Care provider information is maintained through the EdocWriter Modify program. To make modifications:

  • Start the EdocWriter Modify program.
  • click on Care Providers
  • select Existing or New
  • Here is an example of what should be displayed for a user:

    edocmodcp.jpg

    Adding a Referral doctor

    • click on Modify Data on on the Menu Bar at the top of the menu
    • click on Care Provider Information
    • select Existing or New
    • select New
    • enter the appropriate data.

    Printer Table

    Modifying Printer Table Elements

    The Printer Table is control the format and number of copies for each of the type of output document types.
    To modify Printer Table settings
    • Invoke the EdocWriter Modify Program
    • Click on Printer Settings button. A tree list box containing all parameter settings will be displayed. The settings will be organized by output document type.
    • Double-click on the item to be modified.

    Medicines and Prescriptions

    Creating, modifying or deleting a medicine

    Medicines be created directly from the Prescription Dialog. Once this information is entered, it can only be modified by using the Modifiy EdocWriter Data program. New medicines can be created as well.

    To create, modify or delete a medicine
    • Invoke the EdocWriter Modify Program
    • Click on Medicines and Prescriptions button. A dialog window will be shown with a Medicine button and a Prescription button.
    • Click on the Medicine button. A list of available medicines will be shown.
    • Click on the one you want to modify or delete. If you want to delete, click on the Delete, otherwise click on Edit and a ...Select a Medicine Instruction or Doctor Note dialog windowwill be shown.
    • Click on the desired medicine instruction if one is desired, or click on the No Instruction check box if none is to be used. You can also add text to the Note edit box. This text will be displayed when a user selects the medicine when creating a prescription.

    Creating, modifying or deleting a prescription

    Prescriptions be created directly from the Prescription Dialog. Once this information is entered, it can only be modified by using the Modifiy EdocWriter Data program. New prescriptions can be created as well.

    To create, modify or delete a prescription
    • Invoke the EdocWriter Modify Program
    • Click on Medicines and Prescriptions button. A dialog window will be displayed with a Medicine button and a Prescription button.
    • Click on the Prescription button. A list of available medicines will be shown.
    • Click on the one that has a prescription you want to modify. A list of the available prescriptions will be shown.
    • Click on the one prescription you want to modify or delete. If you want to delete, click click on the Delete, otherwise click on parameter you want to change.

    System Settings Button

    Clicking on this button allows for modification of the site configuration information. Two buttons will be shown: Internet and Configuration.

    The Internet selection will modify data that deals with communications over TCP/IP. This would include email servers, ftp servers, and database servers.

    The Configuration selection will modify data that is used to customize the program.

    Modifying Configuration Table Parameters

    The Configuration Table is the foundation of any customizations. Each site is has a unique set of Configuation Table.
    To modify Configuration Table settings
    • Invoke the EdocWriter Modify Program
    • Click on Systems Settings button. The Modify System Configuration and Internet Settings dialog box will be shown.
    • Click on the Configuration Settings button. A tree list box containing all settings will be displayed. The settings will be organized in groups.
    • Double-click on the item to be modified. What happens next depends on the type of information required.

    List of Configuration Table Parameters

    Modifying Internet Table Elements

    The Internet Table is used for parts of the program that utilize intra/internet tools and functions. There can be more than one set of parameters. The Configuation Table indicates the key value to be used.
    To modify Internet Table settings
    • Invoke the EdocWriter Modify Program
    • Click on Systems Settings button. The Modify System Configuration and Internet Settings dialog box will be shown.
    • Click on the Internet Settings button. A tree list box containing all parameters settings will be displayed. The settings will be organized in sets identified by a key.
    • Double-click on the item to be modified.

    List of Internet Table Parameters

    Workstation Communication

    Workstation Communication Dialog

    A picture of the dialog box invoked by the Workstation Communication button is shown below:

    edocucomdlg.jpg

    There are three groups of controls. Each group has an edit box indicating whether the function is enabled. Here is a brief description of each group:

  • The Command File group controls the contents of the file that the workstations will read periodically if enabled. The Edit Xml button allows the user to manually edit the file. Typically this button will not be used. Instead the user will either use the Shutdown or Start Chat buttons. These buttons insert the appropriate commands into the file. Not that once the command is written to the file (assuming this function is enabled) the specified action will remain active until the Reset to Normal button is used to erase the file. Thus if the Shutdown button is used, the users will not be able to access the system until the Reset to Normal button is used.
    Also, note that the server documented below must be started before the workstation's client chat using the Command File function documented here. The client chat requires the server to be running. Terminating the server stops the clients.
    The function is enabled by the
    Read XML Command File parameter in the System Configuration Dialog.
  • The User Logon Messages group controls the contents of the html file that will be shown to users of the system the first time their name is selected from the list of users. The user will not be shown the contents of the file again until the Reset button is used. The system tracks usage information in the Care Provider Table.
    The function is enabled by the existence of a User Message File parameter in the System Configuration Dialog. This function is disabled if the parameter is empty.
  • The Workstation Chat group controls the Chat System server. Note that once the server is started here, the workstations must be instructed to start their client chat using the Command File function documented in the item above.
    The function is enabled by the Chat Xml File parameter in the System Configuration Dialog.

  • EdocWriter Chat Program

    How the Chat Program Works

    This facility creates a instant message facility for users. It consists of a chat server running on a file server, and a chat client for each EdocWriter user. The chat server (filename: edoc_chat_server.exe) runs continuously directing messages. A chat client (filename: edoc_chat_client.exe) is started by EdocWriter on each workstation when it is started by the user. The chat client will be minimized in the system tray until the icon is double-clicked or a message to the workstation is recieved from the chat server.

    Configuration File

    A chat xml file contains the parameters necessary to configure the chat function. At a minimum the file needs to specify:

  • the port and the network computer name of the server
  • the user assigned name and network computer name of each workstation

  • The administrator of the system should be assigned the name of SYSTEM.

    Here is an example of a configuration file:

    <EDOC_CHAT>

    <SHUTDOWN/> - remove to start chat

    <PORT>7000 </PORT>
    <SERVER_HOSTNAME>WIN2000</SERVER_HOSTNAME>

    <CLIENT>
    <NAME>ROOM 300</NAME>
    <CLIENT_HOSTNAME>WORKSTATION_300 </CLIENT_HOSTNAME>
    </CLIENT>

    <CLIENT>
    <NAME>SYSTEM </NAME>
    <CLIENT_HOSTNAME>WIN2000</CLIENT_HOSTNAME>
    </CLIENT>

    </EDOC_CHAT>


    Appendix

    Template Tokens

    Template Tokens are placed in EdocWriter templates to signal that information is to be inserted when the instruction is printed. For example, if the token <?TOKEN PATIENT-NAME ?> is found in an instruction, it is replaced with the name of the patient when the instruction is printed.

    If a token is found in an instruction of a template type where there is no information available, it will be ignored. For example, if the token <?TOKEN RX-MED-NAME ?> is found in a Follow-Up Note instruction, it will be ignored because it is not clear what medicine, if any, is being asked for.

    Listed below are the tokens available, and where they can be used.

    Tokens that can be placed in any template

    User Interaction Tokens

  • <?TOKEN ASK-FOR-DAYS ?> Will ask for the number of days and insert a numeric response
  • <?TOKEN ASK-DATE ?> Will ask for the number of days and convert into a calendar date
  • <?TOKEN TEXT-BOX ?> Will cause a multi-line edit box to display and will insert the result
  • <?PROMPT QUESTION="This is the question text" ?> Will cause a display a dialog with the question text and a text box to input the answer. The answer will be inserted into the template
  • User Interaction XML Markup

    Unlike a token which is called a processing instruction, the Template List Box is composed of several parts:

  • <LISTBOX > causes a dialog to be displayed with a list box
  • <LISTBOX-ITEM TITLE="selection description" VALUE="value returned" ?> defines the alternatives to choose from. The user sees a choice with the title ="selection description", and if chosen the ="value returned" is inserted into the template.
  • Because this feature conforms to XML and not HTML, it will not be seen in the html editor that comes with EdocWriter. It might be easier to use a standard text editor to add it to a template. An example is:

    <LISTBOX >
    <LISTBOX-ITEM TITLE="I want to go up" VALUE="up" />
    <LISTBOX-ITEM TITLE="I want to go down" VALUE="down" />
    <LISTBOX-ITEM TITLE="I want to go out" VALUE="out" />
    <LISTBOX-ITEM TITLE="I want to go in" VALUE="in" />
    </LISTBOX >

    Date and Time Tokens

  • <?TOKEN DATE ?> example: March 6, 2004
  • <?TOKEN DATE-MMDDYY ?> example: 03/06/2004
  • <?TOKEN DATE-DAY ?> example: Saturday, March 6, 2004
  • <?TOKEN TIME ?> example: 10:30 AM
  • <?TOKEN TIME-24 ?> example: 14:30:18
  • <?CALC-DATE n ?> where "n" is a number. Inserts date n days from today
  • Site Specific Tokens

  • <?TOKEN ORG-NAME ?>
  • <?TOKEN ORG-ADDRESS-LINE1 ?>
  • <?TOKEN ORG-ADDRESS-LINE2 ?>
  • <?TOKEN ORG-PHONE ?>
  • <?TOKEN ORG-CITY ?>
  • <?TOKEN ORG-STATE ?>
  • <?TOKEN ORG-ZIPCODE ?>
  • Additional Care Provider Tokens

  • <?TOKEN ASSISTANT-NAME ?>
  • <?TOKEN ASSISTANT-FIRSTNAME ?>
  • <?TOKEN ASSISTANT-LASTNAME ?>
  • <?TOKEN ASSISTANT-TITLE ?>
  • <?TOKEN ASSISTANT-NUMBER-OTHER ?>
  • <?TOKEN ASSISTANT-NUMBER-DEA ?>
  • <?TOKEN ASSISTANT-ADDRESS-LINE1 ?>
  • <?TOKEN ASSISTANT-ADDRESS-LINE2 ?>
  • <?TOKEN ASSISTANT-CITY ?>
  • <?TOKEN ASSISTANT-STATE ?>
  • <?TOKEN ASSISTANT-ZIPCODE ?>
  • <?TOKEN ASSISTANT-ORGANIZATION ?>
  • <?TOKEN ASSISTANT-PHONE ?>
  • <?TOKEN ASSISTANT-FAXPHONE ?>
  • <?TOKEN ASSISTANT-EMAIL ?>
  • <?TOKEN ASSISTANT-TYPE ?>
  • User Physician Tokens

  • <?TOKEN DOCTOR-NAME ?>
  • <?TOKEN DOCTOR-FIRSTNAME ?>
  • <?TOKEN DOCTOR-LASTNAME ?>
  • <?TOKEN DOCTOR-TITLE ?>
  • <?TOKEN DOCTOR-NUMBER-DEA ?>
  • <?TOKEN DOCTOR-NUMBER-OTHER ?>
  • <?TOKEN DOCTOR-ADDRESS-LINE1 ?>
  • <?TOKEN DOCTOR-ADDRESS-LINE2 ?>
  • <?TOKEN DOCTOR-CITY ?>
  • <?TOKEN DOCTOR-STATE ?>
  • <?TOKEN DOCTOR-ZIPCODE ?>
  • <?TOKEN DOCTOR-ORGANIZATION ?>
  • <?TOKEN DOCTOR-PHONE ?>
  • <?TOKEN DOCTOR-FAXPHONE ?>
  • <?TOKEN DOCTOR-EMAIL ?>
  • <?TOKEN DOCTOR-TYPE ?>
  • Patient Tokens

  • <?TOKEN PATIENT-NAME ?>
  • <?TOKEN PATIENT-FIRSTNAME ?>
  • <?TOKEN PATIENT-LASTNAME ?>
  • <?TOKEN PATIENT-MIDDLENAME ?>
  • <?TOKEN PATIENT-DOB ?>
  • <?TOKEN PATIENT-ACCOUNT ?>
  • <?TOKEN PATIENT-ADDRESS ?>
  • <?TOKEN PATIENT-CITY ?>
  • <?TOKEN PATIENT-STATE ?>
  • <?TOKEN PATIENT-ZIPCODE ?>
  • <?TOKEN PATIENT-PHONE ?>
  • <?TOKEN PATIENT-TIME-IN ?>
  • Follow-Up Note and Email and Fax Tokens

    These tokens that can be placed only in Follow-Up Note and Email and Fax templates. If a Follow-Up Note template type is selected that contains the <?TOKEN REFERRAL-NAME ?> token, then a list box will be displayed to select the referral from.

  • <?TOKEN REFERRAL-TEXT ?>
  • <?TOKEN REFERRAL-NAME ?>
  • <?TOKEN REFERRAL-LASTNAME ?>
  • <?TOKEN REFERRAL-FIRSTNAME ?>
  • <?TOKEN REFERRAL-TITLE ?>
  • <?TOKEN REFERRAL-ORGANIZATION ?>
  • <?TOKEN REFERRAL-DEA-NUMBER ?>
  • <?TOKEN REFERRAL-DEA-OTHER ?>
  • <?TOKEN REFERRAL-ADDRESS-LINE1 ?>
  • <?TOKEN REFERRAL-ADDRESS-LINE2 ?>
  • <?TOKEN REFERRAL-STATE ?>
  • <?TOKEN REFERRAL-CITY ?>
  • <?TOKEN REFERRAL-ZIPCODE ?>
  • <?TOKEN REFERRAL-PHONE ?>
  • <?TOKEN REFERRAL-EMAIL ?>
  • <?TOKEN REFERRAL-FAXPHONE ?>
  • <?TOKEN REFERRAL-TYPE ?>
  • Email and Fax Only Tokens

    These tokens that can be placed only in Email and Fax templates. Email and Fax templates are currently generated only for Follow-Up Note templates.

  • <?TOKEN ADD_PI ?> Inserts the patient discharge instruction
  • <?TOKEN RECIPIENT-NAME ?>
  • <?TOKEN RECIPIENT-LASTNAME ?>
  • <?TOKEN RECIPIENT-FIRSTNAME ?>
  • <?TOKEN RECIPIENT-TITLE ?>
  • <?TOKEN RECIPIENT-ORGANIZATION ?>
  • <?TOKEN RECIPIENT-DEA-NUMBER ?>
  • <?TOKEN RECIPIENT-DEA-OTHER ?>
  • <?TOKEN RECIPIENT-ADDRESS-LINE1 ?>
  • <?TOKEN RECIPIENT-ADDRESS-LINE2 ?>
  • <?TOKEN RECIPIENT-STATE ?>
  • <?TOKEN RECIPIENT-CITY ?>
  • <?TOKEN RECIPIENT-ZIPCODE ?>
  • <?TOKEN RECIPIENT-PHONE ?>
  • <?TOKEN RECIPIENT-EMAIL ?>
  • <?TOKEN RECIPIENT-FAXPHONE ?>
  • <?TOKEN RECIPIENT-TYPE ?>
  • Additional Care Provider Template Tokens

    Tokens that can be placed only in the template identified as Additional Care Provider Template parameter.

  • <?TOKEN CARE-PROVIDER-NAME ?>
  • <?TOKEN CARE-PROVIDER-FIRSTNAME ?>
  • <?TOKEN CARE-PROVIDER-LASTNAME ?>
  • <?TOKEN CARE-PROVIDER-TITLE ?>
  • <?TOKEN CARE-PROVIDER-NUMBER-OTHER ?>
  • <?TOKEN CARE-PROVIDER-DEA-NUMBER ?>
  • <?TOKEN CARE-PROVIDER-ADDRESS-LINE1 ?>
  • <?TOKEN CARE-PROVIDER-ADDRESS-LINE2 ?>
  • <?TOKEN CARE-PROVIDER-CITY ?>
  • <?TOKEN CARE-PROVIDER-STATE ?>
  • <?TOKEN CARE-PROVIDER-ZIPCODE ?>
  • <?TOKEN CARE-PROVIDER-ORGANIZATION ?>
  • <?TOKEN CARE-PROVIDER-PHONE ?>
  • <?TOKEN CARE-PROVIDER-FAXPHONE ?>
  • <?TOKEN CARE-PROVIDER-EMAIL ?>
  • <?TOKEN CARE-PROVIDER-TYPE ?>
  • Prescription Form Tokens

    Tokens that can be placed only in the template identified as Prescription Filename or Rx Text Filename template parameters.

  • <?TOKEN RX-DISP ?>
  • <?TOKEN RX-SIG ?>
  • <?TOKEN RX-RX ?>
  • <?TOKEN RX-MED-NAME ?>
  • <?TOKEN REFILL-QTY ?>
  • <?TOKEN RX-FORMULARY ?>
  • Medicine Instruction Tokens

  • <?TOKEN MED-NAME ?>
  • Initial Menu Button Specification

    The file specified by the Button Structure XML file contains XML tokens that represent buttons to be shown to the user. If the token for a button is not present in the file, the associated button is not shown. The user can also specify the function key, labels, and order of the buttons. The order of the tokens in the file determines the order of the buttons. In general the tokens have the form:

    <token id=F2 ... F9 label =label text switch-label=flip side switch labels>

    The switch-label attribute is used only for the SWITCH-BTTN for the button that toggles the user between diagnoses and patient instructions.

    The url attribute is used only for the LINK-BTTN for the button that invokes the browser to go to the url specified.

    The button Function key F2 is associated with determines which button is invoked initially.

    The available buttons and default attributes are:
    <BUTTONS>
    <NEW-BTTN label="New Patient" id = "F2" />
    <PENDING-BTTN label="Pending" />
    <EXISTING-BTTN label="Existing" />
    <PRINT-BTTN id = "F4" label="Print" />
    <EDIT-BTTN id = "F5" label="Edit" />
    <MACRO-BTTN label="Packages" />
    <LANGUAGE-BTTN label="Language" />
    <FONT-SIZE-BTTN label="Font Size" />
    <SWITCH-BTTN id="F3" switch-label="Show Diagnoses" label="Show PI Categories" />
    <PICOMBO-BTTN switch-label="Switch PI List" label="Show PI Categories" />
    <DN-BTTN id="F6" label="Doctor Notes" />
    <LINK-BTTN label="Internet" url = "enter url here" />
    <FU-BTTN id="F7" label="Follow Up Notes" />
    <PRESCRIPTION-BTTN id="F8" label="Prescriptions" />
    <MI-BTTN label="Medication Instructions" />
    <PHY-NOTE-BTTN id="F9" label="Physicians Note" />
    </BUTTONS>

    Setting the system to not allow reseting of printers from the menu options

    To disable or grey out the Reset Workstation Printers option from the File->Modify Workstation menu bar, insert the following token within the XML Button group shown above.
    <NO-RESET-PRINTERS />

    Patient Discharge Instruction Specification

    The file specified by the Structure XML file contains XML tokens that represent the various types of instructions that can be included in the discharge instruction. The order of the component tokens determines the order of the component parts. If the token for an instruction is not present in the file, the associated instruction is not included. Some actions that are associated with printing of instructions are also supported. In general the tokens have the form:

    The header and trailer are always included, and therefore no tokens are necessary for them.

    Available tokens are:
    <AFTERCARE-HTML-INSTRUCTION>

    <DIAGNOSIS/> - diagnoses
    <PATIENT-INSTRUCTION/> - patient instructions
    <FOLLOW-UP> - follow up notes
    <FAX/> create fax copy for referral physicians
    <EMAIL/> create email copy for referral physicians
    </FOLLOW-UP> - follow up notes

    <RX> - Prescriptions
    <MI/> - default to add medicine instructions
    <DEFAULT_RX_OFF/> - set default to not create prescription
    <AUTO_DATABASE_RX_OFF/> - set default to not automatically add unique prescriptions to the database
    <AUTO_DATABASE_RX_ON/> - set default to automatically add unique prescriptions to the database
    <FAX/> create fax copy for pharmacy
    <EMAIL/> create email copy for pharmacy
    </RX>

    <MI/> - medicine instructions
    <DOCTOR-NOTE/> - doctor notes

    <PRINT-DEFAULT-VERSION-COPY/> print default language copy always

    <CREATE-COPY>put name of directory for copy here <CREATE-COPY/>

    </AFTERCARE-HTML-INSTRUCTION>

    Changing the Default Rx, Sig, and Disp Values for Prescriptions

    Four database tables are used to define these default values. All except for the Medicine Type table can be modified to better reflect the requirements of the organization.

  • The Medicine Type table maintains the available medicine types. The other three tables define values for each type specified here.
  • The Medicine Rx table maintains the default potency (i.e. 100mg) available for each medicine type.
  • The Medicine Disp table maintains the default dispense count values (i.e. #10) for the available medicine types.
  • The Medicine Sig table maintains the default usage values (i.e. bid) for the available medicine types.
  • A link is provided here that presents the following information and ties it to the Prescription Dialog in a graphic form: Click here for a prescription default summary in PDF format.

    The Medicine Type Table

    This table is provided with the system. It would not be modified by the user, but the key values of this table are used as foreign keys in the other three tables listed above. The following list are the keys and names of the valid medicine types for which default values can be assigned:

  • 1 - Oral
  • 2 - Topical
  • 3 - Inhalation
  • 4 - Injection
  • 5 - Ophthalmic
  • 6 - Nasal
  • 7 - Vaginal
  • 8 - Rectal
  • 9 - Intravenous
  • 10 - Transdermal
  • 12 - Chewable
  • 12 - Intranasal
  • Modifying the Medicine Rx Default Table

    This table is designed to be modified by the user. This table will have an empty string value (i.e. " ") for each of the medicine types. This will result in having just the name of the medicine listed as a default value. The system will automatically add the medicine name to each of the values specified in this table when the information is displayed in the Prescription Dialog.

    This table can be modified using ACCESS or the Sqlloader program. An example of the SQL statement to add "100mg" as a default potency value would be:

    INSERT INTO MedicineRx (FK_MED_TYPE, rx) values (1,'100mg');

    The value 1 corresponds to the "Oral" medicine type key as shown in the prior section.

    Modifying the Medicine Disp Default Table

    This table is designed to be modified by the user. Initially this table will be empty.

    This table can be modified using ACCESS or the Sqlloader program. An example of the SQL statement to add "#10" as a default sig value would be:

    INSERT INTO MedicineDisp (FK_MED_TYPE, disp) values (1,'#10');

    The value 1 corresponds to the "Oral" medicine type key as shown in the prior section.

    Modifying Medicine Sig Default Table

    This table is designed to be modified by the user. Initially this table will be empty.

    This table can be modified using ACCESS or the Sqlloader program. An example of the SQL statement to add "as needed" as a default sig value would be:

    INSERT INTO MedicineSig (FK_MED_TYPE, sig) values (1,'as needed');

    The value 1 corresponds to the "Oral" medicine type key as shown in the prior section.

    EdocWriter Interfaces - HL7, XML, HTML, SQL, and ODBC

    Industry common standards have been used to facilitate the integration of EdocWriter into a heterogeneous software environment.

  • SQL - Structured Query Language is supported through the use of the SQL Loader program that is included with EdocWriter.
  • ODBC - Open Data Base Connectivity is used for the database interface. We can provide the Sequel Query Language instructions to create the tables and data for any compliant database.
  • HL7 - a Health Level Seven server is provided to extract patient information from HL7 messages.
  • HTML - the Hyper Text Markup Language is used for the input templates and output patient discharge documents to allow access and modification by external programs.
  • XML - the Extended Markup Language has been used to define program logic, allowing external programs to access and direct program functions.
  • XML Command File - Executing commands remotely

    The system can be set to periodically poll an Xml Command file. Because the polling will consume processing time, the user can set the number of milliseconds between polling.

    Any system token can be included. The most relevant one would be <SHUTDOWN/> which would cause the workstation to shutdown down.

    SQL - Using the SQL Loader program

    The EdocWriter SQL Loader (file name sqlloader.exe) is used to update the database during initial installation and program updates. It can be used as an alternative to the Modify EdocWriter Data Program to make changes to the database. To use this product:

    • create a text file containing sql commands terminated by a ";" and having ".sql" as a filename suffix
    • click on start
    • click on programs
    • click on EdocWriter
    • click on Run EdocWriter Sql Commands
    • The program will start and show a dialog box displaying all the files that end in ".sql". click on the one you want, or click to the directory that contains the file you want.
    • click OK and then click GO

    If a syntax error is encountered, the program will allow you to exit or continue processing.

    For batch processing, it is possible to invoke the program and specify the sql file on a command line. The syntax would be: sqlloader {filename}

    Changing Databases

    To change the database EdocWriter uses requires an Windows ODBC driver for the particular database. This can be provided by the database vendor. EdocWriter installs two different drivers by default: MicroSoft Access and MySql (www.mysql.com). The MicroSoft Access is used for non-internet implementions and the MySql (www.mysql.com) for internet based implementations. A brief description of the process of changing to a different database than these two follows:

    • Purchase database license and install on host computer
    • Install ODBC driver for the purchased database on each workstation
    • Request from EdocWriter the SQL Database Table files
    • or execute the ExportSql form in the ACCESS database.
    • Execute the SQL Loader program to load the tables
    • if the inter/intranet is being used, follow the directions in this user guide for Installing EdocWriter on the Inter/Intranet.

    Installing EdocWriter on a Inter/Intranet

    EdocWriter can be deployed partially or fully on a inter/intranet. The ODBC database driver is responsible for handling communications between EdocWriter. To inform EdocWriter to retrieve templates from a inter/intranet (hereafter called a TCP/IP connection) it is necessary to do the following:

    The program will not be able to successfully start if a firewall is preventing communications with the database. By default, port 3008 is used.

    • Install the templates to a server supporting File Transfer Protocol (FTP)
    • Change the Instruction Directory Path in the Configuration Table parameters to point to the new directory.
    • Change the Enable Internet and Use Internet in the Configuration Table parameters to "yes"
    • Change the Internet Table Parameters to reflect the FTP server being used.

    XML Interface - Integrating external computer systems and EdocWriter

    Software developers can use the EdocWriter DTD to construct XML command files or read EdocWriter generated XML files. There are a number of applications where this capability would be used:

  • A user application would access the patient data files to determine what type of services were provided
  • A remote hand held device could send information that would instruct EdocWriter to print a prescription remotely
  • An external system could add information to EdocWriter's patient data files
  • EdocWriter XML Interface

    When user the users clicks on the Existing Patient Button or Pending Patient Button or the Instruction Package Button, EdocWriter reads and processes a file containing XML instructions. Here is an example of such a file:

    <AFTERCARE-INSTRUCTION>
    <PATIENT>
    <PATIENT-TIME-IN>
    Sunday, September 10 2000 at 11:35
    </PATIENT-TIME-IN>
    <PATIENT-LASTNAME>
    Guy
    </PATIENT-LASTNAME>
    <PATIENT-NAME>
    Sickly Guy
    </PATIENT-NAME>
    <PATIENT-FIRSTNAME>
    Sickly
    </PATIENT-FIRSTNAME>
    </PATIENT>
    <DOCTOR>
    <KEY>613</KEY>
    </DOCTOR>
    <PATIENT-INSTRUCTION>
    <TEMPLATE-KEY>712</TEMPLATE-KEY>
    <TEMPLATE-FILENAME>pi_240</TEMPLATE-FILENAME>
    <LABEL>
    atrial fibrillation
    </LABEL>
    </PATIENT-INSTRUCTION>
    <RX>
    <RX-FORMULARY>
    Voluntary Formulary Permitted
    </RX-FORMULARY>
    <REFILL-QTY>0</REFILL-QTY>
    <RX-SIG>1 PO qd</RX-SIG>
    <RX-RX>Accupril 10 mg</RX-RX>
    <RX-MED-NAME>Accupril</RX-MED-NAME>
    <RX-DISP>#10</RX-DISP>
    <TEMPLATE-FILENAME>piRxText</TEMPLATE-FILENAME>
    <LABEL>
    Accupril </LABEL>
    </RX>
    <MI>
    <TEMPLATE-KEY>
    290</TEMPLATE-KEY>
    <TEMPLATE-FILENAME>
    mi_Quinapril</TEMPLATE-FILENAME>
    <LABEL>Accupril</LABEL>
    </MI>
    </AFTERCARE-INSTRUCTION>

    The user can initialize, modify, or create XML using the mark up documented in the EdocWriter DTD. The user can also create their own XML parser using standard tools to extract information from these files.

    Internally EdocWriter uses a single XML parsing engine to create the patient output, and (at least in theory) anything that the user does by clicking on EdocWriter buttons can be done by feed the commands directly to EdocWriter. A XML Command File can be enabled to be polled for XML commands. If the file exists, the commands will be processed as if they were entered by the user. One obvious application is to be able to integrate hand-held devices into EdocWriter.

    EdocWriter HTML Patient Data Files

    When EdocWriter prints a patient discharge instruction, it also writes the HTML used to create the output to the Instruction Directory. This file is not used by EdocWriter, but is available for outside processes. The patient's XML and HTML have the same filename prefix (i.e. "YYYYMMDD_{LastName}_{FirstName}").

    Message of the Day: How to Create and Implement a User Message

    An html file can be displayed the first time a user creates a patient discharge instruction after EdocWriter starts; exiting the program and restarting will cause the message to be displayed again.

    To implement this:

  • Create an instruction. Although it is arbitrary, Using the other template type category would make sense.
  • Insert the instruction filename into the User Message File parameter of the Configuration Table.
  • Turn off the disable Message File flag in the Care Provider Table for all or just a select number of users.
  • .

    Trouble Shooting Errors

    Problems Encountered Installing, Starting, or Updating

    The installation program asks for a serial number

    You need to enter your password. If you do not have your password, Email edocwriter at gmail.com or call 310-546-7435 .

    The installation program asks for the installation directory

    If EdocWriter is being installed for the first time, then choose a directory on the file server. Do not install to the local workstation.

    This message should not been seen if EdocWriter has already been installed on the file server and a workstation is being set up for the first time. The system may need to be updated: Email edocwriter at gmail.com or call 310-546-7435 .

    If an update program is being run, then choose the home directory on the file server that has the system EdocWriter files.

    Cannot create or modify ODBC error

    Check the following:

  • Try starting EdocWriter. If it starts then ignore the message
  • Reload the entries by following the directions dealing with ODBC reinstallation.
  • Nothing happens when I start the program

    If nothing happens at all, run MicroSoft's Visual C++ dll redistribution installation program. A copy of the program (filename is vc6redist.exe) has been placed in the EdocWriter directory. The workstation will need to be restarted.

    The program abends with a run time error

    The odbc entry for the system is not correct. Reload the entries by following the directions dealing with ODBC reinstallation.

    A message is given saying some "dll" is missing.

  • The short-cut "start in" or "current directory" may not be pointing to the EdocWriter directory. This is the problem if the program can be started from the MicroSoft Desktop Explorer correctly.
  • A required MicroSoft component is missing. If the missing component starts with "MS" this is probably the reason. Run MicroSoft's Visual C++ dll redistribution installation program. A copy of the program (filename is vc6redist.exe) has been placed in the EdocWriter directory. The workstation will need to be restarted.
  • A required EdocWriter component is missing. Email edocwriter at gmail.com or call 310-546-7435 .
  • The program takes a long time to start

    The problem is the network is slow. The amount of time between clicking on the short-cut and the "is loading" splash screen is the time required to load the program itself. The amount of time between the splash screen and the menu display is the amount of time required to read the database and XML configuration files.

    Every time the program is run it asks for the printers.

    The system will look in the registry under HKEY_LOCAL_MACHINE/Software/EdocWriter for the printer name, device name, and port name for each of the document types. If these elements are not found, or a system error is generated when the system tries to create a print connection, then the program will request the user select a valid printer. Check for these issues:

  • The problem is the user does not have write privleges to the registry. To solve this, have some user with write privleges set the printers, or
  • The user is not correctly selecting a printer for each of the documents requested. If this is true, then the registry entry should be invalid. Check the printer name, device name, and port name in the Windows Printer Settings.
  • A parsing error message is displayed before the main menu is shown

    The program reads the following XML files for configuration information:

  • Button Structure specification file called bttn_structure.xml by default but can be changed.
  • Patient Instruction specification file called pi_structure.xml by default but can be changed.
  • AutoFax/Email specification file called edocmailserver.xml
  • You will encounter a parsing error if one of these files have been modified and certain XML rules were violated. Review the explanation on parsing errors to correct.

    A message states the database is corrupt and needs to be repaired.

    Probable cause is the database was not closed correctly due to the abnormal termination of the system.

    Repair the database by:

  • click on the Windows Control Panel from the Start Button.
  • double-click on EdocWriter under System Datasource tab.
  • click on Repair Database.
  • The workstation installation program is run every time EdocWriter is stated

    The system will look in the registry for the HKEY_LOCAL_MACHINE/Software/ODBC/ODBC.INI/EdocWriter key. If the key does not exist, the program assumes this is the initial use, and will configure the workstation by running the EdocWriter ODBC installation program (filename: edocinstallodbc.exe).

  • The problem is most likely that the user does not have write privleges to the registry. To solve this, have some user with write privleges start the program. If the user does have write privleges try
  • Reinstall the odbc components.
  • Problems Encountered During Use

    A parsing error message is displayed when a instruction is selected

    If the error occurs:
  • After after an item is selected from a list and there is no prompt for user input, then there is an XML parsing error in the template. Edit the template with the EdocWriter editor. The editor will correct any parsing errors.
  • After after an item is selected from a list and after a prompt for user input, then the user input an invalid character.
  • When the discharge instruction is printed or edited, then there is an error in one of the output format templates, most likely the header or trailer. Edit the template with the EdocWriter editor. The editor will correct any parsing errors.
  • See for more information about correcting parsing problems.

    Problems with Printers

    The first approach for any printer problem is to try a different printer driver if possible.

    HP 5000 - Garbage added to end of document

  • If 1200 dpi is set within the Windows printer driver, set to 600 dpi.
  • HP Laser Printers - Wrong Bin Selected

    For version 2.2, use the HP4 driver instead of the HP4xxx driver.

    For version 2.3 and up, the printer dialog allows the user to select bin and paper size constants. Reset the printers, and specify DM_PAPER constant to 1.

    Concerning the HP 4300 and printing scripts to the manual tray, one client needed to specify no bin number but a paper size constant of 0. No paper constant exists in the list of contents for the standard size. The program will attempt to set the paper size to the specifications in the table Printer for each printer defined. The paper size constant of 0 is used in the system to indicate "use the existing value." A paper size of 0 does affect bin selection in current HP laser products.

    Here are the DM BIN constants provided by MicroSoft:

    1 DMBIN_UPPER
    1 DMBIN_ONLYONE
    2 DMBIN_LOWER
    3 DMBIN_MIDDLE
    4 DMBIN_MANUAL
    5 DMBIN_ENVELOPE
    6 DMBIN_ENVMANUAL
    7 DMBIN_AUTO
    8 DMBIN_TRACTOR
    9 DMBIN_SMALLFMT
    10 DMBIN_LARGEFMT
    11 DMBIN_LARGECAPACITY
    14 DMBIN_CASSETTE
    15 DMBIN_FORMSOURCE

    Here are the DM PAPER constants provided by MicroSoft:

    1 DMPAPER_LETTER Letter, 8 1/2- by 11-inches
    2 DMPAPER_LETTERSMALL Letter Small, 8 1/2- by 11-inches
    3 DMPAPER_TABLOID Tabloid, 11- by 17-inches
    4 DMPAPER_LEDGER Ledger, 17- by 11-inches
    5 DMPAPER_LEGAL Legal, 8 1/2- by 14-inches
    6 DMPAPER_STATEMENT Statement, 5 1/2- by 8 1/2-inches
    7 DMPAPER_EXECUTIVE Executive, 7 1/4- by 10 1/2-inches
    8 DMPAPER_A3 A3 sheet, 297- by 420-millimeters
    9 DMPAPER_A4 A4 Sheet, 210- by 297-millimeters
    10 DMPAPER_A4SMALL A4 small sheet, 210- by 297-millimeters
    11 DMPAPER_A5 A5 sheet, 148- by 210-millimeters
    12 DMPAPER_B4 B4 sheet, 250- by 354-millimeters
    13 DMPAPER_B5 B5 sheet, 182- by 257-millimeter paper
    14 DMPAPER_FOLIO Folio, 8 1/2- by 13-inch paper
    15 DMPAPER_QUARTO Quarto, 215- by 275-millimeter paper
    16 DMPAPER_10X14 10- by 14-inch sheet
    17 DMPAPER_11X17 11- by 17-inch sheet
    18 DMPAPER_NOTE Note, 8 1/2- by 11-inches
    19 DMPAPER_ENV_9 #9 Envelope, 3 7/8- by 8 7/8-inches
    20 DMPAPER_ENV_10 #10 Envelope, 4 1/8- by 9 1/2-inches
    21 DMPAPER_ENV_11 #11 Envelope, 4 1/2- by 10 3/8-inches
    22 DMPAPER_ENV_12 #12 Envelope, 4 3/4- by 11-inches
    23 DMPAPER_ENV_14 #14 Envelope, 5- by 11 1/2-inches
    24 DMPAPER_CSHEET C Sheet, 17- by 22-inches
    25 DMPAPER_DSHEET D Sheet, 22- by 34-inches
    26 DMPAPER_ESHEET E Sheet, 34- by 44-inches
    27 DMPAPER_ENV_DL DL Envelope, 110- by 220-millimeters
    28 DMPAPER_ENV_C5 C5 Envelope, 162- by 229-millimeters
    29 DMPAPER_ENV_C3 C3 Envelope, 324- by 458-millimeters
    30 DMPAPER_ENV_C4 C4 Envelope, 229- by 324-millimeters
    31 DMPAPER_ENV_C6 C6 Envelope, 114- by 162-millimeters
    32 DMPAPER_ENV_C65 C65 Envelope, 114- by 229-millimeters
    33 DMPAPER_ENV_B4 B4 Envelope, 250- by 353-millimeters
    34 DMPAPER_ENV_B5 B5 Envelope, 176- by 250-millimeters
    35 DMPAPER_ENV_B6 B6 Envelope, 176- by 125-millimeters
    36 DMPAPER_ENV_ITALY Italy Envelope, 110- by 230-millimeters
    37 DMPAPER_ENV_MONARCH Monarch Envelope, 3 7/8- by 7 1/2-inches
    38 DMPAPER_ENV_PERSONAL 6 3/4 Envelope, 3 5/8- by 6 1/2-inches
    39 DMPAPER_FANFOLD_US US Std Fanfold, 14 7/8- by 11-inches
    40 DMPAPER_FANFOLD_STD_GERMAN German Std Fanfold, 8 1/2- by 12-inches
    41 DMPAPER_FANFOLD_LGL_GERMAN German Legal Fanfold, 8 1/2- by 13-inches

    A parsing error message is displayed when a existing or pending patient's data is retrieved

    The patient data is maintained in an XML file, and is generated by the system. Email edocwriter at gmail.com or call 310-546-7435. Please use email and attach the file .

    Common Trouble Shooting Approaches

    Correcting XML Parsing Errors

    EdocWriter uses and creates XML files. XML is the use of tokens (i.e. <some_token>good</some_token>). An XML file must be well formed, meaning every start token ( the <some_token> ) must have a closing token ( the </some_token> ). Interleaved tokens will cause an error. Case matters in token comparisons.

    If the XML is not well formed then a parsing error is created. The user can edit and correct the files.

    If the error occurs in a template, then a selected template has a parsing error. See the template error section for more information.

    For all other XML files use a text editor like notepad or the html editor called wzhtml (filename: wzhtml1.exe) located in the EdocWriter installation directory.

    It is important for us to identify possible sources of error. Email edocwriter at gmail.com or call 310-546-7435. Please use email and attach the file .

    Reinstallation of ODBC

    Listed below are the steps that should be taken in order to reinstall the various database communication components. Usually just the first step will be required.

  • Run the EdocWriter ODBC installation program (filename: edocinstallodbc.exe) in the EdocWriter installation directory on the file server manually. If this does not work,
  • Use the Windows ODBC facility in the Control Panel to add a system user name of EdocWriter" using the ACCESS Data Base driver, and select the EdocWriter.mdb file in the EdocWriter installation directory on the file server. If you get a system error when you do this the operating system is not correctly configured. Then
  • Run MicroSoft's ODBC installation program. A copy of MDAC 2.5 (filename is mdac_typ.exe) has been placed in the EdocWriter directory. More recent versions have been created by MicroSoft. If you do choose to download a more recent version from the web, make sure you get both ODBC and the ACCESS installation programs. 2.6 requires the downloading of two installation executables.
  • If none of the above works, your operating system may need to be reloaded.