| 1 | VAFCMGB ;ALB/JRP,PTD-DEMOGRAPHIC MERGE SCREEN BUILDER ;18-OCT-1996
|
---|
| 2 | ;;5.3;Registration;**149,479**;Aug 13, 1993
|
---|
| 3 | ;
|
---|
| 4 | ;NOTE: The VAFCMGB* routines contain line tags used to build the
|
---|
| 5 | ; display screen of a List Manager interface. All line tags
|
---|
| 6 | ; assume that the following variables are defined and contained
|
---|
| 7 | ; in the local partition.
|
---|
| 8 | ;
|
---|
| 9 | ;Input : VAFCDFN - Pointer to entry in PATIENT file (#2) to merge
|
---|
| 10 | ; data into
|
---|
| 11 | ; VAFCARR - Array contain data to merge (full global reference)
|
---|
| 12 | ; VAFCARR() should be set as follows:
|
---|
| 13 | ; VAFCARR(File,Field) = Value
|
---|
| 14 | ; Where File = File number Value is from
|
---|
| 15 | ; Field = Field number Value is from
|
---|
| 16 | ; Value = Info to merge
|
---|
| 17 | ; Notes: Dates must be in FileMan format
|
---|
| 18 | ; : Special considerations for Value
|
---|
| 19 | ; "@" - Displays <DELETE> and deletes
|
---|
| 20 | ; local value if merged
|
---|
| 21 | ; "^text" - Displays text and ignores
|
---|
| 22 | ; field if merged
|
---|
| 23 | ; NULL - Displays <UNSPECIFIED> and
|
---|
| 24 | ; ignores field if merged
|
---|
| 25 | ; Doesn't exist - Displays <UNSPECIFIED>
|
---|
| 26 | ; and ignores field
|
---|
| 27 | ; if merged
|
---|
| 28 | ; VAFCFROM - Text denoting where merge data cam from (1-35)
|
---|
| 29 | ; VAFCEVDT - Date/time merge data was instantiated (FileMan)
|
---|
| 30 | ; VAFCDOTS - Flag indicating if progress dots should be printed
|
---|
| 31 | ; 0 = No
|
---|
| 32 | ; 1 = Yes
|
---|
| 33 | ; All variables set by List Manager Interface
|
---|
| 34 | ;Output : Display area and variables required List Manager interface
|
---|
| 35 | ; Display
|
---|
| 36 | ; VALMAR(Line,0) = Line of text in display
|
---|
| 37 | ; Indexes
|
---|
| 38 | ; VALMAR("IDX",Line,Entry) = ""
|
---|
| 39 | ; VALMAR("E2F",Entry,N) = File^Field
|
---|
| 40 | ; N => Allows for multiple fields per entry (starts with 1)
|
---|
| 41 | ; VALMAR("E2G",Entry) = Group entry is contained in
|
---|
| 42 | ; VALMAR("GRP",Group) = First line of group in display
|
---|
| 43 | ; Note: The E2F and E2G indexes are only set if the data
|
---|
| 44 | ; to merge does not match the local data
|
---|
| 45 | ;Notes : Existance/validity of input variables is assumed
|
---|
| 46 | ; : Dates are converted to internal format for comparison
|
---|
| 47 | ; : Phone # are converted to HL7 format for comparison & display
|
---|
| 48 | ;
|
---|
| 49 | BLDALL ;Main entry point to build entire List Manager display
|
---|
| 50 | ;
|
---|
| 51 | ;Input : See note above
|
---|
| 52 | ;Output : See note above
|
---|
| 53 | ;
|
---|
| 54 | ;Declare variables
|
---|
| 55 | N LASTNTRY
|
---|
| 56 | ;Build logical group 1
|
---|
| 57 | D GROUP1^VAFCMGB0
|
---|
| 58 | ;White space
|
---|
| 59 | S LASTNTRY=+$O(@VALMAR@("IDX",VALMCNT-1,0))
|
---|
| 60 | S @VALMAR@(VALMCNT,0)=" "
|
---|
| 61 | S @VALMAR@("IDX",VALMCNT,LASTNTRY)=""
|
---|
| 62 | S VALMCNT=VALMCNT+1
|
---|
| 63 | ;Build logical group 2
|
---|
| 64 | D GROUP2^VAFCMGB1
|
---|
| 65 | ;White space
|
---|
| 66 | ;S LASTNTRY=+$O(@VALMAR@("IDX",VALMCNT-1,0))
|
---|
| 67 | ;S @VALMAR@(VALMCNT,0)=" "
|
---|
| 68 | ;S @VALMAR@("IDX",VALMCNT,LASTNTRY)=""
|
---|
| 69 | ;S VALMCNT=VALMCNT+1
|
---|
| 70 | ;Build logical group 3
|
---|
| 71 | D GROUP3^VAFCMGB2
|
---|
| 72 | ;White space - eliminated with **479
|
---|
| 73 | ;S LASTNTRY=+$O(@VALMAR@("IDX",VALMCNT-1,0))
|
---|
| 74 | ;S @VALMAR@(VALMCNT,0)=" "
|
---|
| 75 | ;S @VALMAR@("IDX",VALMCNT,LASTNTRY)=""
|
---|
| 76 | ;S VALMCNT=VALMCNT+1
|
---|
| 77 | ;S @VALMAR@(VALMCNT,0)=" "
|
---|
| 78 | ;S @VALMAR@("IDX",VALMCNT,LASTNTRY)=""
|
---|
| 79 | ;S VALMCNT=VALMCNT+1
|
---|
| 80 | ;Build logical group 4
|
---|
| 81 | D GROUP4^VAFCMGB3
|
---|
| 82 | ;Done
|
---|
| 83 | Q
|
---|
| 84 | ;
|
---|
| 85 | RBLDGRP(GROUP) ;Rebuild specified group in List Manager display
|
---|
| 86 | ;
|
---|
| 87 | ;Input : GROUP - Number denoting which logical group in display
|
---|
| 88 | ; should be rebuilt
|
---|
| 89 | ; Groups 1, 2, 3, and 4 are currently supported
|
---|
| 90 | ; See above note on input variables
|
---|
| 91 | ;Output : See above note on output
|
---|
| 92 | ;
|
---|
| 93 | ;Check input
|
---|
| 94 | S GROUP=+$G(GROUP)
|
---|
| 95 | ;Declare variables
|
---|
| 96 | N VALMCNT
|
---|
| 97 | ;Get starting line number of group
|
---|
| 98 | S VALMCNT=+$G(@VALMAR@("GRP",GROUP))
|
---|
| 99 | ;Rebuild logical group 1 - done
|
---|
| 100 | I (GROUP=1) D GROUP1^VAFCMGB0 Q
|
---|
| 101 | ;Rebuild logical group 2 - done
|
---|
| 102 | I (GROUP=2) D GROUP2^VAFCMGB1 Q
|
---|
| 103 | ;Rebuild logical group 3 - done
|
---|
| 104 | I (GROUP=3) D GROUP3^VAFCMGB2 Q
|
---|
| 105 | ;Rebuild logical group 4 - done
|
---|
| 106 | I (GROUP=4) D GROUP4^VAFCMGB3 Q
|
---|
| 107 | ;Done - did nothing
|
---|
| 108 | Q
|
---|