Custom Documents CSV API

Custom documents can be designed at the storage type level. When a layout is present in the system with module=Storage Type and name=, this layout will be used to render the document.

Existing Storage Types

A layout with module=Storage Type and name= (<=27 as of 03/11/2015) will supersede the default document rendering for that storage type.

Process

  1. Determine the number of the storage type for which you want to create a custom layout. This can be done by looking either in the MySQL database or at the stg_DetailView[MAX_STGTYPES] array in storage.c (approx. line 1950).

To view the storage types in MySQL run the following query:

SELECT * FROM storage_types;
STORAGE_TYPE FILE_EXT CONTENT_TYPE DESCRIPTION
0 txt text/plain Delete doc
1 txt text/plain Plain Text Document
2 rtf text/richtext RTF Document
3 png image/png PNG file
4 html text/html HTML file
5 html text/html IMG & TEXT/HTML file
6 doc application/msword WORD Document
7 tif image/tiff TIFF Documents
8 jpg image/jpeg JPEG Documents
9 bin application/octet-stream Binary Documents
10 dcm application/dicom DICOM Documents
11 htm text/html TASK
12 htm text/html Injection
13 htm text/html Lab Request
14 txt text/plain Pre-Formated Text
15 htm text/html Orders
16 htm text/html Mammo Tracking
17 pdf application/pdf PDF file
18 xls application/vnd.ms-excel MS Excel
19 cda application/x-hl7-cda CDA Document
20 avi video/x-msvideo AVI Video Document
21 ccr text/xml CCR Document
22 mime multipart/mixed Email
23 htm text/html OCP Audio
24 htm text/html Pulmonary Function Test
25 bmp image/x-bmp BMP
26 x12 application/edi-x12 X12 Messages
27 xml text/xml XML
  1. Create a new layout. Set the module=Storage Type. Set the name to be the value from the storage_type column of the storage_types table or the number shown in comments in storage.c. For example, a Lab Request is storage type 13. To create a layout for lab requests, name=13.
  2. Add the desired HTML to the layout. To replicate the information in the default document, follow the code in the appropriate function from the stg_DetailView array. For lab requests, this function is stg_DetailViewLabReq().

Custom Storage Types

Storage types >= 1001 can be added to create a custom document rendered with a layout.

Process

  1. Insert a new storage type into the storage_types table.

<1001+>,,,);INSERT INTO storage_types (storage_type, file_ext, content_type, description) VALUES (

For example,


INSERT INTO storage_types (storage_type, file_ext, content_type, description) VALUES (1001,'html','text/html','Test new storage type');
  1. Add a new document with the new storage type you just created. This can be done by navigating to a patient’s chart and clicking the Add Document link. Add a text document and copy the id. Then manually update the document with that id to have your new storage type.

WHERE doc_id=;UPDATE documents SET storage_type=

You can also perform a manual insert into the documents table.

  1. Create a new layout. Set the module=Storage Type. Set the name to be the new storage type >= 1001.
  2. Add the desired HTML to the layout.

Was this page helpful?

Let us know how we can improve this documentation.

Published: December 18, 2024