VAFCMGB0 ;ALB/JRP-DEMOGRAPHIC MERGE SCREENS ;10/18/96
;;5.3;Registration;**149,255,477,479**;Aug 13, 1993
;
;NOTE: This routine contains line tags used to build the display
; screen for a List Manager interface. Refer to routine
; VAFCMGB for a description of input/output variables.
;
LOCAL(FILE,FIELD,IENS,ARRAY) ;Get local data from extraction array
;
;Input : FILE - File number
; FIELD - Field number
; IENS - FDA entry number (ex: "DFN,")
; ARRAY - FDA array containing local data (full global ref)
; (ie: ARRAY(File,IENS,Field) = Value)
; All variables denoted in VAFCMGB routine
;Output : Value to display
;Notes : Existance/validity of input variables is assumed
; : ARRAY() is the ouput of the call to GETDATA^VAFCMGU0()
; :<No Data Found> is returned when ARRAY(File,IENS,Field) is NULL
; or does not exist
; : Phone numbers are returned in HL7 format
; : Social security numbers will contain dashes
; : Dates are returned in the format MM-DD-YYYY@HH:MM:SS
;
;Declare variables
N VALUE,QUOTE
S QUOTE=$C(34)
;Get data
S VALUE=$G(@ARRAY@(FILE,IENS,FIELD))
;Convert NULLS and quit
Q:(VALUE="") "<No Data Found>"
;Convert phone numbers to HL7 format
I ((FIELD=.131)!(FIELD=.132)!(FIELD=.219)) I (FILE=2) D
.S VALUE=$$HLPHONE^HLFNC(VALUE)
;Add dashes to SSN
I (FIELD=.09) I (FILE=2) D
.S VALUE=$TR(VALUE,"-","")
.S VALUE=$E(VALUE,1,3)_"-"_$E(VALUE,4,5)_"-"_$E(VALUE,6,10)
;Convert dates to MM-DD-YYYY@HH:MM:SS format
I ((FIELD=.03)!(FIELD=.351)) I (FILE=2) D
.S VALUE=$$EX2INDT^VAFCMGU0(VALUE)
.S VALUE=$$IN2EXDT^VAFCMGU0(VALUE)
;Done
Q VALUE
;
REMOTE(FILE,FIELD) ;Get remote data from merge array [VAFCARR()]
;
;Input : FILE - File number
; FIELD - Field number
; All variables denoted in VAFCMGB routine
;Output : Value to display
;Notes : Existance/validity of input variables is assumed
; :<No Data Found> is returned when VAFCARR(File,Field) is NULL or
; does not exist
; : <Data Deleted> is returned when VAFCARR(File,Field)="@"
; : When VAFCARR(Field,Field)="^text", text will be returned
; : Phone numbers are returned in HL7 format
; : Social security numbers will contain dashes
; : Dates are returned in the format MM-DD-YYYY@HH:MM:SS
;
;Declare variables
N VALUE,QUOTE
S QUOTE=$C(34)
;Get data
S VALUE=$G(@VAFCARR@(FILE,FIELD))
;Convert NULLS and quit
Q:($P(VALUE,U)="") "<No Data Found>"
;Convert "@" and quit
Q:($P(VALUE,U)=(QUOTE_"@"_QUOTE)) "<Data Deleted>"
;Convert unresolved and quit
Q:$P(VALUE,U,3) "<UR> "_$P(VALUE,U)
S VALUE=$P(VALUE,U)
;Convert phone numbers to HL7 format
I ((FIELD=.131)!(FIELD=.132)!(FIELD=.219)) I (FILE=2) D
.S VALUE=$$HLPHONE^HLFNC(VALUE)
;Add dashes to SSN
I (FIELD=.09) I (FILE=2) D
.S VALUE=$TR(VALUE,"-","")
.S VALUE=$E(VALUE,1,3)_"-"_$E(VALUE,4,5)_"-"_$E(VALUE,6,10)
;Convert dates to MM-DD-YYYY@HH:MM:SS format
I ((FIELD=.03)!(FIELD=.351)) I (FILE=2) D
.S VALUE=$$IN2EXDT^VAFCMGU0(VALUE)
;Convert ZIP to ZIP+4
;I (FIELD=.1112) I (FILE=2) D ;**255 **479
;.S VALUE=$TR(VALUE,"-") ;**477 old messaging didn't contain '-'
;.S VALUE=$E(VALUE,1,5)_$S($E(VALUE,6,9)]"":"-"_$E(VALUE,6,9),1:"")
I (FIELD=.3612) I (FILE=2) D ;**477
.I $L(VALUE)>7 S VALUE=$$HL7TFM^XLFDT(VALUE) ;convert hl7 to fileman date
;Done
Q VALUE
;
DIFFCHK(FILE,FIELD,IENS,ARRAY) ;Compare local and remote data for differences
;
;Input : FILE - File number
; FIELD - Field number
; IENS - FDA entry number (ex: "2169,")
; ARRAY - FDA array containing local data (full global ref)
; (ie: ARRAY(File,IENS,Field) = Value)
; All variables denoted in VAFCMGB routine
;Output : 1 = Local & remote data are different
; 0 = Local & remote data are not different
;Notes : Existance/validity of input variables is assumed
; : ARRAY() is the ouput of the call to GETDATA^VAFCMGU0()
; : If VAFCARR(File,Field) is undefined, NULL, or has a value of
; "^text" a difference is not found (prevents overwritting of
; local data)
; : If VAFCARR(File,Field) is "@" and ARRAY(File,IENS,Field) is
; NULL or does not exist a difference is not found (prevents
; deletion of nothing)
; : Phone numbers are converted to HL7 format for comparison
; : Social security numbers are compared with dashes removed
; : Dates are converted to FileMan format for comparison
;
;Declare variables
N LOCAL,REMOTE,QUOTE
S QUOTE=$C(34)
;Get local data
S LOCAL=$G(@ARRAY@(FILE,IENS,FIELD))
;Get remote data
S REMOTE=$P($G(@VAFCARR@(FILE,FIELD)),U)
;S:$E(REMOTE)=U&($P(REMOTE,U,2)]"") REMOTE=$P(REMOTE,U,2)
;S:$P(REMOTE,U)=""&('$P(REMOTE,U,2)) REMOTE=""
;S:$P(REMOTE,U)]"" REMOTE=$P(REMOTE,U)
;Screen for remote value of NULL - return no diff
I (REMOTE="") Q 0
;Screen for remote value of "^text" - return no diff
I (REMOTE=(QUOTE_"^")) Q 0
;Screen for remote value of "@" and no local value - return no diff
I ((REMOTE=(QUOTE_"@"_QUOTE))&(LOCAL="")) Q 0
;Convert phone numbers to HL7 format
I ((FIELD=.131)!(FIELD=.132)!(FIELD=.219)) I (FILE=2) D
.S LOCAL=$$HLPHONE^HLFNC(LOCAL)
.S REMOTE=$$HLPHONE^HLFNC(REMOTE)
;Remove dashes from SSN
I (FIELD=.09) I (FILE=2) D
.S LOCAL=$TR(LOCAL,"-","")
.S REMOTE=$TR(REMOTE,"-","")
;Convert dates to FileMan format (remote dates already in FM format)
I ((FIELD=.03)!(FIELD=.351)) I (FILE=2) D
.S LOCAL=$$EX2INDT^VAFCMGU0(LOCAL)
I (FIELD=.3612) I (FILE=2) D ;*477
.S LOCAL=$$EX2INDT^VAFCMGU0(LOCAL)
.I $L(REMOTE)>7 S REMOTE=$$HL7TFM^XLFDT(REMOTE) ;convert hl7 to fileman date
;Convert zip+4 to fileman format
;I (FIELD=.1112) I (FILE=2) D ;**255 **479
;.S LOCAL=$TR(LOCAL,"-","")
;.S REMOTE=$TR(REMOTE,"-","")
;Done - return comparison of local & remote data
Q ('(LOCAL=REMOTE))
;
GROUP1 ;Line tag to build logical group number one
;
;Group one contains the following fields:
; .01, .03, .09, .351
;
;Column width is limited to 30 characters
;
;Declare variables
N IENS,TARGET,MESSAGE,LINE,DATA,LOCAL,REMOTE,DIFF
S TARGET="^TMP(""VAFC-MERGE-TO"","_$J_",""DATA"")"
S MESSAGE="^TMP(""VAFC-MERGE-TO"","_$J_",""MESSAGE"")"
;Initialize global locations
K @TARGET,@MESSAGE
;Set group index
S @VALMAR@("GRP",1)=VALMCNT
;Get local data for patient
D GETDATA^VAFCMGU0(VAFCDFN,1,TARGET,MESSAGE)
;Build display
S IENS=VAFCDFN_","
;Name
S LOCAL=$$LOCAL(2,.01,IENS,TARGET)
S LOCAL=$E(LOCAL,1,30)
S REMOTE=$$REMOTE(2,.01)
S REMOTE=$E(REMOTE,1,30)
S DIFF=$$DIFFCHK(2,.01,IENS,TARGET)
S LINE=$S(DIFF:"**",1:" ")_" 1"
S:DIFF&($P($G(@VAFCARR@(2,.01)),U,2)) LINE="->"_" 1" ;**477 flag name if different - no longer auto updated
S DATA="Name: "_LOCAL
S LINE=$$INSERT^VAFCMGU0(DATA,LINE,8)
S @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
S @VALMAR@("IDX",VALMCNT,1)=""
I (DIFF) D
.S @VALMAR@("E2F",1,1)="2^.01"
.S @VALMAR@("E2G",1)=1
I ('DIFF) D
.K @VALMAR@("E2F",1)
.K @VALMAR@("E2G",1)
W:(+$G(VAFCDOTS)) "."
S VALMCNT=VALMCNT+1
;SSN
S LOCAL=$$LOCAL(2,.09,IENS,TARGET)
S REMOTE=$$REMOTE(2,.09)
S DIFF=$$DIFFCHK(2,.09,IENS,TARGET)
S LINE=$S(DIFF:"**",1:" ")_" 2"
S:DIFF&($P($G(@VAFCARR@(2,.09)),U,2)) LINE="->"_" 2"
S DATA="SSN: "_LOCAL
S LINE=$$INSERT^VAFCMGU0(DATA,LINE,9)
S @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
S @VALMAR@("IDX",VALMCNT,2)=""
I (DIFF) D
.S @VALMAR@("E2F",2,1)="2^.09"
.S @VALMAR@("E2G",2)=1
I ('DIFF) D
.K @VALMAR@("E2F",2)
.K @VALMAR@("E2G",2)
W:(+$G(VAFCDOTS)) "."
S VALMCNT=VALMCNT+1
;Date of birth
S LOCAL=$$LOCAL(2,.03,IENS,TARGET)
S LOCAL=$P(LOCAL,"@",1)
S REMOTE=$$REMOTE(2,.03)
S REMOTE=$P(REMOTE,"@",1)
S DIFF=$$DIFFCHK(2,.03,IENS,TARGET)
S LINE=$S(DIFF:"**",1:" ")_" 3"
S:DIFF&($P($G(@VAFCARR@(2,.03)),U,2)) LINE="->"_" 3"
S DATA="DOB: "_LOCAL
S LINE=$$INSERT^VAFCMGU0(DATA,LINE,9)
S @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
S @VALMAR@("IDX",VALMCNT,3)=""
I (DIFF) D
.S @VALMAR@("E2F",3,1)="2^.03"
.S @VALMAR@("E2G",3)=1
I ('DIFF) D
.K @VALMAR@("E2F",3)
.K @VALMAR@("E2G",3)
W:(+$G(VAFCDOTS)) "."
S VALMCNT=VALMCNT+1
;Date of death - strip time
S LOCAL=$$LOCAL(2,.351,IENS,TARGET)
;S LOCAL=$P(LOCAL,"@",1) ;**477 time has already been stripped
S REMOTE=$$REMOTE(2,.351)
;S REMOTE=$P(REMOTE,"@",1) ;**477 time has already been stripped
S DIFF=$$DIFFCHK(2,.351,IENS,TARGET)
S LINE=$S(DIFF:"**",1:" ")_" 4"
S:DIFF&($P($G(@VAFCARR@(2,.351)),U,2)) LINE="->"_" 4"
S DATA="DOD: "_LOCAL
S LINE=$$INSERT^VAFCMGU0(DATA,LINE,9)
S @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
S @VALMAR@("IDX",VALMCNT,4)=""
I (DIFF) D
.S @VALMAR@("E2F",4,1)="2^.351"
.S @VALMAR@("E2G",4)=1
I ('DIFF) D
.K @VALMAR@("E2F",4)
.K @VALMAR@("E2G",4)
W:(+$G(VAFCDOTS)) "."
S VALMCNT=VALMCNT+1
Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HVAFCMGB0 9121 printed Dec 13, 2024@03:01:50 Page 2
VAFCMGB0 ;ALB/JRP-DEMOGRAPHIC MERGE SCREENS ;10/18/96
+1 ;;5.3;Registration;**149,255,477,479**;Aug 13, 1993
+2 ;
+3 ;NOTE: This routine contains line tags used to build the display
+4 ; screen for a List Manager interface. Refer to routine
+5 ; VAFCMGB for a description of input/output variables.
+6 ;
LOCAL(FILE,FIELD,IENS,ARRAY) ;Get local data from extraction array
+1 ;
+2 ;Input : FILE - File number
+3 ; FIELD - Field number
+4 ; IENS - FDA entry number (ex: "DFN,")
+5 ; ARRAY - FDA array containing local data (full global ref)
+6 ; (ie: ARRAY(File,IENS,Field) = Value)
+7 ; All variables denoted in VAFCMGB routine
+8 ;Output : Value to display
+9 ;Notes : Existance/validity of input variables is assumed
+10 ; : ARRAY() is the ouput of the call to GETDATA^VAFCMGU0()
+11 ; :<No Data Found> is returned when ARRAY(File,IENS,Field) is NULL
+12 ; or does not exist
+13 ; : Phone numbers are returned in HL7 format
+14 ; : Social security numbers will contain dashes
+15 ; : Dates are returned in the format MM-DD-YYYY@HH:MM:SS
+16 ;
+17 ;Declare variables
+18 NEW VALUE,QUOTE
+19 SET QUOTE=$CHAR(34)
+20 ;Get data
+21 SET VALUE=$GET(@ARRAY@(FILE,IENS,FIELD))
+22 ;Convert NULLS and quit
+23 if (VALUE="")
QUIT "<No Data Found>"
+24 ;Convert phone numbers to HL7 format
+25 IF ((FIELD=.131)!(FIELD=.132)!(FIELD=.219))
IF (FILE=2)
Begin DoDot:1
+26 SET VALUE=$$HLPHONE^HLFNC(VALUE)
End DoDot:1
+27 ;Add dashes to SSN
+28 IF (FIELD=.09)
IF (FILE=2)
Begin DoDot:1
+29 SET VALUE=$TRANSLATE(VALUE,"-","")
+30 SET VALUE=$EXTRACT(VALUE,1,3)_"-"_$EXTRACT(VALUE,4,5)_"-"_$EXTRACT(VALUE,6,10)
End DoDot:1
+31 ;Convert dates to MM-DD-YYYY@HH:MM:SS format
+32 IF ((FIELD=.03)!(FIELD=.351))
IF (FILE=2)
Begin DoDot:1
+33 SET VALUE=$$EX2INDT^VAFCMGU0(VALUE)
+34 SET VALUE=$$IN2EXDT^VAFCMGU0(VALUE)
End DoDot:1
+35 ;Done
+36 QUIT VALUE
+37 ;
REMOTE(FILE,FIELD) ;Get remote data from merge array [VAFCARR()]
+1 ;
+2 ;Input : FILE - File number
+3 ; FIELD - Field number
+4 ; All variables denoted in VAFCMGB routine
+5 ;Output : Value to display
+6 ;Notes : Existance/validity of input variables is assumed
+7 ; :<No Data Found> is returned when VAFCARR(File,Field) is NULL or
+8 ; does not exist
+9 ; : <Data Deleted> is returned when VAFCARR(File,Field)="@"
+10 ; : When VAFCARR(Field,Field)="^text", text will be returned
+11 ; : Phone numbers are returned in HL7 format
+12 ; : Social security numbers will contain dashes
+13 ; : Dates are returned in the format MM-DD-YYYY@HH:MM:SS
+14 ;
+15 ;Declare variables
+16 NEW VALUE,QUOTE
+17 SET QUOTE=$CHAR(34)
+18 ;Get data
+19 SET VALUE=$GET(@VAFCARR@(FILE,FIELD))
+20 ;Convert NULLS and quit
+21 if ($PIECE(VALUE,U)="")
QUIT "<No Data Found>"
+22 ;Convert "@" and quit
+23 if ($PIECE(VALUE,U)=(QUOTE_"@"_QUOTE))
QUIT "<Data Deleted>"
+24 ;Convert unresolved and quit
+25 if $PIECE(VALUE,U,3)
QUIT "<UR> "_$PIECE(VALUE,U)
+26 SET VALUE=$PIECE(VALUE,U)
+27 ;Convert phone numbers to HL7 format
+28 IF ((FIELD=.131)!(FIELD=.132)!(FIELD=.219))
IF (FILE=2)
Begin DoDot:1
+29 SET VALUE=$$HLPHONE^HLFNC(VALUE)
End DoDot:1
+30 ;Add dashes to SSN
+31 IF (FIELD=.09)
IF (FILE=2)
Begin DoDot:1
+32 SET VALUE=$TRANSLATE(VALUE,"-","")
+33 SET VALUE=$EXTRACT(VALUE,1,3)_"-"_$EXTRACT(VALUE,4,5)_"-"_$EXTRACT(VALUE,6,10)
End DoDot:1
+34 ;Convert dates to MM-DD-YYYY@HH:MM:SS format
+35 IF ((FIELD=.03)!(FIELD=.351))
IF (FILE=2)
Begin DoDot:1
+36 SET VALUE=$$IN2EXDT^VAFCMGU0(VALUE)
End DoDot:1
+37 ;Convert ZIP to ZIP+4
+38 ;I (FIELD=.1112) I (FILE=2) D ;**255 **479
+39 ;.S VALUE=$TR(VALUE,"-") ;**477 old messaging didn't contain '-'
+40 ;.S VALUE=$E(VALUE,1,5)_$S($E(VALUE,6,9)]"":"-"_$E(VALUE,6,9),1:"")
+41 ;**477
IF (FIELD=.3612)
IF (FILE=2)
Begin DoDot:1
+42 ;convert hl7 to fileman date
IF $LENGTH(VALUE)>7
SET VALUE=$$HL7TFM^XLFDT(VALUE)
End DoDot:1
+43 ;Done
+44 QUIT VALUE
+45 ;
DIFFCHK(FILE,FIELD,IENS,ARRAY) ;Compare local and remote data for differences
+1 ;
+2 ;Input : FILE - File number
+3 ; FIELD - Field number
+4 ; IENS - FDA entry number (ex: "2169,")
+5 ; ARRAY - FDA array containing local data (full global ref)
+6 ; (ie: ARRAY(File,IENS,Field) = Value)
+7 ; All variables denoted in VAFCMGB routine
+8 ;Output : 1 = Local & remote data are different
+9 ; 0 = Local & remote data are not different
+10 ;Notes : Existance/validity of input variables is assumed
+11 ; : ARRAY() is the ouput of the call to GETDATA^VAFCMGU0()
+12 ; : If VAFCARR(File,Field) is undefined, NULL, or has a value of
+13 ; "^text" a difference is not found (prevents overwritting of
+14 ; local data)
+15 ; : If VAFCARR(File,Field) is "@" and ARRAY(File,IENS,Field) is
+16 ; NULL or does not exist a difference is not found (prevents
+17 ; deletion of nothing)
+18 ; : Phone numbers are converted to HL7 format for comparison
+19 ; : Social security numbers are compared with dashes removed
+20 ; : Dates are converted to FileMan format for comparison
+21 ;
+22 ;Declare variables
+23 NEW LOCAL,REMOTE,QUOTE
+24 SET QUOTE=$CHAR(34)
+25 ;Get local data
+26 SET LOCAL=$GET(@ARRAY@(FILE,IENS,FIELD))
+27 ;Get remote data
+28 SET REMOTE=$PIECE($GET(@VAFCARR@(FILE,FIELD)),U)
+29 ;S:$E(REMOTE)=U&($P(REMOTE,U,2)]"") REMOTE=$P(REMOTE,U,2)
+30 ;S:$P(REMOTE,U)=""&('$P(REMOTE,U,2)) REMOTE=""
+31 ;S:$P(REMOTE,U)]"" REMOTE=$P(REMOTE,U)
+32 ;Screen for remote value of NULL - return no diff
+33 IF (REMOTE="")
QUIT 0
+34 ;Screen for remote value of "^text" - return no diff
+35 IF (REMOTE=(QUOTE_"^"))
QUIT 0
+36 ;Screen for remote value of "@" and no local value - return no diff
+37 IF ((REMOTE=(QUOTE_"@"_QUOTE))&(LOCAL=""))
QUIT 0
+38 ;Convert phone numbers to HL7 format
+39 IF ((FIELD=.131)!(FIELD=.132)!(FIELD=.219))
IF (FILE=2)
Begin DoDot:1
+40 SET LOCAL=$$HLPHONE^HLFNC(LOCAL)
+41 SET REMOTE=$$HLPHONE^HLFNC(REMOTE)
End DoDot:1
+42 ;Remove dashes from SSN
+43 IF (FIELD=.09)
IF (FILE=2)
Begin DoDot:1
+44 SET LOCAL=$TRANSLATE(LOCAL,"-","")
+45 SET REMOTE=$TRANSLATE(REMOTE,"-","")
End DoDot:1
+46 ;Convert dates to FileMan format (remote dates already in FM format)
+47 IF ((FIELD=.03)!(FIELD=.351))
IF (FILE=2)
Begin DoDot:1
+48 SET LOCAL=$$EX2INDT^VAFCMGU0(LOCAL)
End DoDot:1
+49 ;*477
IF (FIELD=.3612)
IF (FILE=2)
Begin DoDot:1
+50 SET LOCAL=$$EX2INDT^VAFCMGU0(LOCAL)
+51 ;convert hl7 to fileman date
IF $LENGTH(REMOTE)>7
SET REMOTE=$$HL7TFM^XLFDT(REMOTE)
End DoDot:1
+52 ;Convert zip+4 to fileman format
+53 ;I (FIELD=.1112) I (FILE=2) D ;**255 **479
+54 ;.S LOCAL=$TR(LOCAL,"-","")
+55 ;.S REMOTE=$TR(REMOTE,"-","")
+56 ;Done - return comparison of local & remote data
+57 QUIT ('(LOCAL=REMOTE))
+58 ;
GROUP1 ;Line tag to build logical group number one
+1 ;
+2 ;Group one contains the following fields:
+3 ; .01, .03, .09, .351
+4 ;
+5 ;Column width is limited to 30 characters
+6 ;
+7 ;Declare variables
+8 NEW IENS,TARGET,MESSAGE,LINE,DATA,LOCAL,REMOTE,DIFF
+9 SET TARGET="^TMP(""VAFC-MERGE-TO"","_$JOB_",""DATA"")"
+10 SET MESSAGE="^TMP(""VAFC-MERGE-TO"","_$JOB_",""MESSAGE"")"
+11 ;Initialize global locations
+12 KILL @TARGET,@MESSAGE
+13 ;Set group index
+14 SET @VALMAR@("GRP",1)=VALMCNT
+15 ;Get local data for patient
+16 DO GETDATA^VAFCMGU0(VAFCDFN,1,TARGET,MESSAGE)
+17 ;Build display
+18 SET IENS=VAFCDFN_","
+19 ;Name
+20 SET LOCAL=$$LOCAL(2,.01,IENS,TARGET)
+21 SET LOCAL=$EXTRACT(LOCAL,1,30)
+22 SET REMOTE=$$REMOTE(2,.01)
+23 SET REMOTE=$EXTRACT(REMOTE,1,30)
+24 SET DIFF=$$DIFFCHK(2,.01,IENS,TARGET)
+25 SET LINE=$SELECT(DIFF:"**",1:" ")_" 1"
+26 ;**477 flag name if different - no longer auto updated
if DIFF&($PIECE($GET(@VAFCARR@(2,.01)),U,2))
SET LINE="->"_" 1"
+27 SET DATA="Name: "_LOCAL
+28 SET LINE=$$INSERT^VAFCMGU0(DATA,LINE,8)
+29 SET @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
+30 SET @VALMAR@("IDX",VALMCNT,1)=""
+31 IF (DIFF)
Begin DoDot:1
+32 SET @VALMAR@("E2F",1,1)="2^.01"
+33 SET @VALMAR@("E2G",1)=1
End DoDot:1
+34 IF ('DIFF)
Begin DoDot:1
+35 KILL @VALMAR@("E2F",1)
+36 KILL @VALMAR@("E2G",1)
End DoDot:1
+37 if (+$GET(VAFCDOTS))
WRITE "."
+38 SET VALMCNT=VALMCNT+1
+39 ;SSN
+40 SET LOCAL=$$LOCAL(2,.09,IENS,TARGET)
+41 SET REMOTE=$$REMOTE(2,.09)
+42 SET DIFF=$$DIFFCHK(2,.09,IENS,TARGET)
+43 SET LINE=$SELECT(DIFF:"**",1:" ")_" 2"
+44 if DIFF&($PIECE($GET(@VAFCARR@(2,.09)),U,2))
SET LINE="->"_" 2"
+45 SET DATA="SSN: "_LOCAL
+46 SET LINE=$$INSERT^VAFCMGU0(DATA,LINE,9)
+47 SET @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
+48 SET @VALMAR@("IDX",VALMCNT,2)=""
+49 IF (DIFF)
Begin DoDot:1
+50 SET @VALMAR@("E2F",2,1)="2^.09"
+51 SET @VALMAR@("E2G",2)=1
End DoDot:1
+52 IF ('DIFF)
Begin DoDot:1
+53 KILL @VALMAR@("E2F",2)
+54 KILL @VALMAR@("E2G",2)
End DoDot:1
+55 if (+$GET(VAFCDOTS))
WRITE "."
+56 SET VALMCNT=VALMCNT+1
+57 ;Date of birth
+58 SET LOCAL=$$LOCAL(2,.03,IENS,TARGET)
+59 SET LOCAL=$PIECE(LOCAL,"@",1)
+60 SET REMOTE=$$REMOTE(2,.03)
+61 SET REMOTE=$PIECE(REMOTE,"@",1)
+62 SET DIFF=$$DIFFCHK(2,.03,IENS,TARGET)
+63 SET LINE=$SELECT(DIFF:"**",1:" ")_" 3"
+64 if DIFF&($PIECE($GET(@VAFCARR@(2,.03)),U,2))
SET LINE="->"_" 3"
+65 SET DATA="DOB: "_LOCAL
+66 SET LINE=$$INSERT^VAFCMGU0(DATA,LINE,9)
+67 SET @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
+68 SET @VALMAR@("IDX",VALMCNT,3)=""
+69 IF (DIFF)
Begin DoDot:1
+70 SET @VALMAR@("E2F",3,1)="2^.03"
+71 SET @VALMAR@("E2G",3)=1
End DoDot:1
+72 IF ('DIFF)
Begin DoDot:1
+73 KILL @VALMAR@("E2F",3)
+74 KILL @VALMAR@("E2G",3)
End DoDot:1
+75 if (+$GET(VAFCDOTS))
WRITE "."
+76 SET VALMCNT=VALMCNT+1
+77 ;Date of death - strip time
+78 SET LOCAL=$$LOCAL(2,.351,IENS,TARGET)
+79 ;S LOCAL=$P(LOCAL,"@",1) ;**477 time has already been stripped
+80 SET REMOTE=$$REMOTE(2,.351)
+81 ;S REMOTE=$P(REMOTE,"@",1) ;**477 time has already been stripped
+82 SET DIFF=$$DIFFCHK(2,.351,IENS,TARGET)
+83 SET LINE=$SELECT(DIFF:"**",1:" ")_" 4"
+84 if DIFF&($PIECE($GET(@VAFCARR@(2,.351)),U,2))
SET LINE="->"_" 4"
+85 SET DATA="DOD: "_LOCAL
+86 SET LINE=$$INSERT^VAFCMGU0(DATA,LINE,9)
+87 SET @VALMAR@(VALMCNT,0)=$$INSERT^VAFCMGU0(REMOTE,LINE,48)
+88 SET @VALMAR@("IDX",VALMCNT,4)=""
+89 IF (DIFF)
Begin DoDot:1
+90 SET @VALMAR@("E2F",4,1)="2^.351"
+91 SET @VALMAR@("E2G",4)=1
End DoDot:1
+92 IF ('DIFF)
Begin DoDot:1
+93 KILL @VALMAR@("E2F",4)
+94 KILL @VALMAR@("E2G",4)
End DoDot:1
+95 if (+$GET(VAFCDOTS))
WRITE "."
+96 SET VALMCNT=VALMCNT+1
+97 QUIT