source: ccr/trunk/p/CCR_1_0_1.txt@ 1425

Last change on this file since 1425 was 142, checked in by George Lilly, 16 years ago

corrected a typo

File size: 7.3 KB
Line 
1CCR Package version 1.0.1
2
3The purpose of the CCR package is to provide support for exporting and eventually importing patient information from/to VistA in XML documents conforming to the Continuity of Care Record (CCR - ASTM) and Continuity of Care Document (CCD - HL7) standards.
4
5This version of the CCR package provides:
6
7EXPORT^GPLCCR
8A command line interface to export a single patient's CCR to a host directory by specifying the patient by name.
9
10EXPORT^GPLCCD
11A command line interface to export a single patient's CCD to a host directory by specifying the patient by name.
12
13XPAT^GPLCCR(DFN,OUTDIR,OUTFILE)
14A command line and program interface to export a single patient's CCR using the IEN of the patient in the ^DPT file (DFN).
15OUTDIR specifies an existing directory on the Host system into which the CCR XML document will be written. If OUTDIR is null (""), the output directory name will be taken from ^TMP("GPLCCR","ODIR").
16OUFILE specifies the host file name of the CCR XML document that will be written for this patient. If OUTFILE is null ("") the document name will default to PAT_x_CCR_V1.xml where x is the DFN of the patient.
17
18CCRRPC(CCRGRTN,DFN,CCRPART,TIME1,TIME2,HDRARY)
19An RPC and program interface to return in return array CCRGRTN (passed by reference) a single patient's CCR.
20DFN is the patient's IEN
21CCRPART is what portion of the CCR should be returned. If "CCR" is specified, the entire CCR will be returned. If "PROBLEMS", "VITALS", or "MEDICATIONS" is specified, only that section of the CCR will be returned.
22TIME1,TIME2 specify a beginning and end timeframe for the data to be included in the CCR. These parameters are not implemented in this release.
23HDRARY will specify the values of certain header variables for the CCR. This parameter is not implemented in this release.
24
25ANALYZE^GPLRIMA(BGNDFN,DFNCNT)
26A command line and program interface to analyze the data from multiple patients into categories that can be batch extracted.
27BGNDFN is the beginning DFN to be analyzed. If BGNDFN is null ("") its value will be taken from ^TMP("GPLRIM","RESUME"). If this variable does not exist, the routine will start with the first IEN in the patient file ^DPT. ^TMP("GPLRIM","RESUME") is updated to the "next" patient to be analyzed on successful completion.
28DFNCNT is the count of how many patient records will be analyzed in this execution.
29For example ANALYZE^GPLRIMA(1000,1000) would start at patient DFN 1000 and analyzes 1000 patient records. ANALYZE^GPLRIMA("",1000) would then analyze the next 1000 patients. When the end of the patient file is reached, the routine terminates with a message that RESET^GPLRIMA would need to be called to restart the analysis.
30
31The categories into which the records are analyzed consist of attribute strings. The attributes represent characteristics of the variables that can be extracted for a given patient into the CCR or the CCD. This version supports the following attributes:
32VITALS : the patient has variables for the VITALS section of the CCR/CCD
33PROBLEMS : the patient has variables for the PROBLEMS section of the CCR/CCD
34MEDS : the patient has variables for the MEDICATIONS section of the CCR/CCD
35HEADER : the patient has variables for the HEADER section of the CCR/CCD. All patients are marked with the HEADER attribute in this version.
36NOTEXTRACTED : the CCR or CCD has not yet been produced/extracted for this patient. All patient records are marked with the NOTEXTRACTED attribute in this version for batch control processing (not implemented in this version).
37
38ANAZYZE^GPLRIMA calls the variable extraction routines that would be used to produce a CCR or a CCD and saves the results to ^TMP("GPLRIM",DFN) for each patient. In addition, the attribute string for each patient is saved in ^TMP("GPLRIM","ATTR")
39
40Categories are created as they first occur based on each unique combination of attributes that is encountered. They are named after the attribute table that is used for the analysis. This version supports only the attribute table .RIMTBL. and the categories are named "RIMTBL_x". An example set of categories from a demo systems is:
41
42GTM>D CLIST^GPLRIMA
43(RIMTBL_1:105) ^NOTEXTRACTED^HEADER^^^PROBLEMS^^^^^VITALS^^^^^MEDS
44(RIMTBL_2:596) ^NOTEXTRACTED^HEADER^^^^^^^^VITALS
45(RIMTBL_3:44) ^NOTEXTRACTED^HEADER^^^PROBLEMS^^^^^VITALS
46(RIMTBL_4:821) ^NOTEXTRACTED^HEADER
47(RIMTBL_5:18) ^NOTEXTRACTED^HEADER^^^^^^^^VITALS^^^^^MEDS
48(RIMTBL_6:14) ^NOTEXTRACTED^HEADER^^^PROBLEMS
49(RIMTBL_7:15) ^NOTEXTRACTED^HEADER^^^^^^^^^^^^^MEDS
50(RIMTBL_8:5) ^NOTEXTRACTED^HEADER^^^PROBLEMS^^^^^^^^^^MEDS
51
52for RIMTBL_1 in this example, 105 is the record count of patients who have this combination of attributes. The list of patients for each category is also maintained for batch extraction.
53
54CLIST^GPLRIMA
55A command line interface to show a summary of the categories, record counts, and attributes that have been analyzed so far. It produces the listing in the example above from information stored in ^TMP("GPLRIM","CATS","RIMTBL"). It is intended for future versions that attribute tables be supported in addition to the default "RIMTBL".
56
57CPAT^GPLRIMA(CPATCAT)
58A command line interface which shows the DFN numbers of the patients represented by the category CPATCAT. DFNs are listed 10 per line. For example:
59
60GTM>D CPAT^GPLRIMA("RIMTBL_1")
611 3 8 25 42 69 123 140 146 149
62151 168 204 205 217 218 224 228 229 231
63236 237 240 253 260 267 271 301 347 350
64366 379 384 391 407 418 419 420 428 433
65442 520 569 600 620 692 706 715 722 723
66724 728 730 744 745 746 747 748 749 750
67751 752 753 754 755 756 757 758 759 760
68761 762 763 764 765 766 767 768 769 770
69771 772 773 774 775 776 777 778 779 780
70100000 100001 100002 100003 100004 100005 100006 100007 100008 100009
71100010 100011 100012 100013 100014
72
73These are the 105 patient records included in category "RIMTBL_1" from the above example.
74
75
76XCPAT^GPLRIMA(CPATCAT)
77A command line interface to extract a batch of patient CCR documents that are associated with the category CPATCAT. For example,
78
79XCPAT^GPLRIMA("RIMTBL_1") to extract the CCR documents for the 105 patients in the above example.
80
81RESET^GPLRIMA
82A command line interface to kill all ANALYZE^GPLRIMA results stored so far so that the analysis can be done again. It kills ^TMP("GPLRIM","RESUME") and all extraction variables that have been saved in ^TMP("GPLRIM")
83
84NOTES:
85This version of the package is a prototype, and does not yet make use of the standard VistA features that are appropriate for it to use.
86
87^TMP("GPLCCR","ODIR") must be set manually to the output directory on the Host System. It is intended that this be maintainable in a parameter file.
88
89CCRRPC^GPLCCR and CCDRPC^GPLCCD are intended to be RPC interfaces to the package but there is no entry for them in the RPC table and the RPC method of access has not been tested.
90
91Most of the command line interface functions in the package are intended to also be made available as RPC calls. This will provide the ability to invoke and control batch extraction and analysis via RPCs
92
93The "RIM" variables and attributes that are now being stored in ^TMP("GPLRIM") are intended to be maintained in a standard FILEMAN global, and to take advantage of FILEMAN indexing for efficient batch analysis and processing.
94
95It is intended that menu interfaces be provided in addition to command line interfaces for all package functions.
96
97
98
99
100
Note: See TracBrowser for help on using the repository browser.