LBV Forms

From OpenEMR Project Wiki

(this feature can be found in OpenEMR versions 3.2 and later.)

Layout Based Visit Forms

Layout Based Visit Forms and how to make use of this feature.

This OpenEMR EXTRA was created to be used for personal forms. Extra Forms you missed but still want to have and were not found implemented in OpenEMR.

(Every new version, be sure to Export and later Import the relevant tables)



Step by step creation

With a little perseverance and this hand-out we go step by step, through the process of creation.

First create an ADEQUATE DESCRIPTIVE FORM NAME:

Go to Administration => Lists and in "Edit List:" choose=> Layout-Based Visit forms. Create your Form ID (left side of the table) does not accept special characters or spaces. Right side gives you the opportunity to give a real understandable name. Your created name will be shown in "This Encounter" right panel menu view.


Quick Guide to use of these Forms

Quick Guide: How to make use of these Forms

Want to include e.a:

How often, How severe, Any bodily harm encountered, Please give short description, What medication used, When is next visit planned, What provider has your preference, What Pharmacy did provide medication, Skipped some daily advised medications, Reason for skipping the necessary dose, What did observers tell you happened


Put Fields in correct order or leave this for later, you can always change the sort order through Administration => Layouts "put them in right order" => SAVE



Create an Epileptic Form example

Step by step approach: Create the form Epileptic Attacks

Goto: Administration => Lists => Layout-Based Visit forms, on first row ID: "Epileptic_Att" (left side of table) give it the name: "Epileptic Attacks" (right side of table) => Save.


You see the Form was saved as LBFEpileptic_Att in left column and Epileptic Attacks in Layout-Based Visit Forms, via Layouts you find the form back under Epileptic Attacks.


Next goto: Administration => Layouts => Edit Layout: Epileptic Attacks and create a group “Epilesia Intake” and start filling the new Field names with their respective input fields. Give the Label(?) a descriptive name. Let's use “How many attacks”. Add the right options for Label Cols and Data Cols.

Save the GROUP NAME and FIRST FIELD by Save Changes just below the GROUP input line. NOT the one below add extra fields!



Hints for different fields

Hints for help on laying out fields:

1. Keep first object as Label Col 1 and Data Col 6
Keep the rest all in the same row as 0 and 0
This will start the new line.
2. Keep last object on the row as Label Col 0 and Data Col 6
Add a new field with Label as any text or even a period, Data Type as Static Text, Label Col as 1, and Data Col as 6 leaving comment blank.
Save new field. Then delete the Label and save the changes.
This will insert a blank line.



What to use and where for different Rows

The different options in the rows might be a bit confusing, but with the next information you can make a choice of what to use and where:

(For examples of use, go to Demographics page and see how most of the Labels- and Fields- options are used)


Order: The sort order in which the field appears within its group.
ID: The field's internal identifier, used both in the database and in the form.
Label: The label of the field in the form.
UOR: Indicates if the field is Unused, Optional or Required.

Data Types

Data Type: The type of field.
  • List box
  • Textbox
  • Textarea
  • Text-date
  • Providers
  • Providers NPI
  • Pharmacies
  • Squads
  • Organizations
  • Billing codes
  • Checkbox list
  • Textbox lisd
  • Exam results
  • Patient allergies
  • Checkbox w/text
  • List box w/add
  • Radio buttons
  • Lifestyle status
  • Static Text
  • Smoking Status
  • Race and Ethnicity
  • NationNotes
Size: The meaning of this depends on the field type. For data type Textbox, Textbox list, Exam results and Checkbox w/text it is the field's width ("size") in the form. Similarly for type Textarea it is the "cols" value. For Checkbox list and Radio buttons it is the number of sub-columns that they are arranged into. For other field types, size is unused.
  • Remove the maxlength attribute itself from the line and you can add as much characters you want to a field.
List: The ID of the associated list, if applicable.
Label Cols: The number of label columns in the form dedicated to the field's label. Usually this is 1, but might be 0 to indicate that the label (if any) is to appear in the previous column. Note the labels and data are currently arranged into a total of 4 columns.
Data Cols: Similar to Label Cols, but for the field's input area. Usually 1 or 3, sometimes 0.

Options

Enter any number of letters below for column Options.
  • C = Capitalize first letter of each word (text fields)
  • D = Check for duplicates in New Patient form
  • G = Graph-able (for numeric fields in forms supporting historical data)
  • H = Read-only field copied from static history
  • L = Lab Order ("ord_lab") types only (address book)
  • N = Show in New Patient form
  • O = Procedure Order ("ord_*") types only (address book)
  • R = Distributor types only (address book)
  • T = Makes the "Description field" a default value for the data
(Presently this option is only available with code changes. Delete the lines in pink and insert the lines in green. See this commit.) Tnx Rod.
  • U = Capitalize all letters (text fields)
  • V = Vendor types only (address book)
  • 1 = Write Once (not editable when not empty) (text fields)
Description: This is assigned to the field's "title" attribute (ie. Tooltip) in the form.



Add more fields

Continue to ADD relevant Fields. Every ID(?) should be unique for this FORM. Make the Fields appear in order of your choice with the field ORDER.

Save every field just below the row of field particulars.

After you made all fields SAVE the Changes below all Fields once more with the button SAVE CHANGES.

Go to your Client and during an encounter, new or old one, choose the "Layout based Form and pick you LBV-form of choice" and start filling particulars as stipulated in your New created Layout-Based Visit Form.

Or you can add another or second GROUP, so in case the patient comes back from a referred situation or you just want to add other particulars not needed in first encounter, this new group should have some extra information input that is only needed when the first part of the form gives rise to extra information input. Remember to give every field in the same FORM a different ID(?) any New Group in the same FORM must also have different ID(?) for every row of information.

The Third group should be created if the first group and Second group give rise to even more information specifics for this kind of client.

Make the necessary fields with the input options and save every field after creation. Just on the line under added field. Than save the form at the end of the made form and next time you open your LBV-Form you have the option to click and add additional info for your patients.

This information helps to get started with your "Layout-Based-Visit Forms" and get your information arranged in a way you always wanted to gather your information. It's not fool proof, but with trial and error you can make use of your own forms.

The results of your input in these Forms can be found back in patient/client => Visits => List.



Make copies of LBV-Forms

If you want to make copies of a LBV-Form try to follow these instructions:

  • There are just the list_options and layout_options tables to contend with, if you are not building NationNotes.
  1. Take a look at the list_options table, on page 5 (of the dropdown list in the database) beginning page-dropdownlist of pages around number 30 and note the last field.
  2. Do the same for the layout_options table, page 5 (of the dropdown list in the Database) beginning page-dropdownlistaround of pages around page 5 and note the last field.
  3. You want to know where the existing LBV forms end and your new form begins.
  4. Create the first form in 4.1.1. Exclude the fields from the old forms in the new .sql files and export them from phpMyAdmin.
  5. Import .sql file into a test copy of OpenEMR.
  6. Be certain to that the .sql files don't contain information from the other forms; if not, they won't import properly. If you are going to use a production copy, backup first.
  7. Change the name of the new form in Administration/Lists/Layout Based Forms, modify the form and create .sql files for the new form.
  • N.B The phpMyAdmin's in the 4.1.2 and 4.1.3 Demo's don't work. The reason is discussed in this Forum thread. The phpMyAdmin in the 4.1.1 Demo tends to be erratic as well. An alternative is to have OpenEMR on 2 different drives. (Info added 26th December 2013)


  • And another advice:
  1. Find the rows of form1 that you want to copy in the table Layout_options.
  2. Export those selected rows to csv.
  3. Modify the csv file to make it as form 2.
  4. Import the csv file to table layout_options.
  5. Make any further change necessary to the groups/fields of form 2.


  • Third method





Additional advice

N.B: Don’t forget to make Back-Up ’s, YES MAKE BACK-UP’S !!! , since what you created is not going to be saved for future new versions in OpenEMR. All self made materials will be lost during reinstall of any official OpenEMR version from scratch. Make use of the Linux, Web and Windows based Back-Up possibilities as offered in OpenEMR. (Administration => Backup => CONTINUE)