SDES2EDITTEMPADD ;ALB/JAS,JAS - SDES2 EDIT TEMP ADDRESS ;MAR 25,2025
 ;;5.3;Scheduling;**901,904**;Aug 13, 1993;Build 1
 ;;Per VHA Directive 6402, this routine should not be modified
 ;
 ;---------------------------------------------------------------
 ; RPC: SDES2 EDIT TEMP ADDRESS
 ;
 ; SDCONTEXT INPUT
 ;
 ;S SDCONTEXT("ACHERON AUDIT ID") = Up to 40 Character unique ID number. Ex: 11d9dcc6-c6a2-4785-8031-8261576fca37
 ;S SDCONTEXT("USER DUZ") = The DUZ of the user taking action in the calling application.
 ;S SDCONTEXT("USER SECID") = The SECID of the user taking action in the calling application.
 ;S SDCONTEXT("PATIENT DFN") = The DFN/IEN of the target patient from the calling application.
 ;S SDCONTEXT("PATIENT ICN") = The ICN of the target patient from the calling application.
 ;
 ; TEMPADDRESS INPUT
 ;
 ;S TEMPADDRESS("PATIENT IEN")=""           REQ
 ;S TEMPADDRESS("ACTIVE FLAG")=""           REQ
 ;S TEMPADDRESS("DELETE FLAG")=""           OPT (Defaults to False)
 ;S TEMPADDRESS("STREET LINE ONE")=""       OPT (Required if Active Flag is True)
 ;S TEMPADDRESS("STREET LINE TWO")=""       OPT
 ;S TEMPADDRESS("STREET LINE THREE")=""     OPT
 ;S TEMPADDRESS("ZIP CODE")=""              OPT (Required if Active Flag is True)
 ;S TEMPADDRESS("CITY")=""                  OPT (Required if Active Flag is True)
 ;S TEMPADDRESS("STATE")=""                 OPT (Required if Active Flag is True)
 ;S TEMPADDRESS("COUNTY")=""                OPT
 ;S TEMPADDRESS("COUNTRY")=""               OPT (Required if Active Flag is True)
 ;S TEMPADDRESS("PHONE")=""                 OPT
 ;S TEMPADDRESS("START DATE")=""            OPT (Required if Active Flag is True)
 ;S TEMPADDRESS("END DATE")=""              OPT
 ;
 Q
 ;
EDITTEMP(JSON,SDCONTEXT,TEMPADDRESS) ;
 N ERRORS,RETURN,TEMPMSG
 S TEMPMSG=""
 ;
 D VALCONTEXT^SDES2VALCONTEXT(.ERRORS,.SDCONTEXT)
 I $D(ERRORS) S ERRORS("TemporaryAddress",1)="" D BUILDJSON^SDES2JSON(.JSON,.ERRORS) Q
 ;
 D VALIDATEADD(.ERRORS,.TEMPADDRESS)
 I $D(ERRORS) S ERRORS("TemporaryAddress",1)="" D BUILDJSON^SDES2JSON(.JSON,.ERRORS) Q
 ;
 D EDITTEMPADD(.ERRORS,.TEMPADDRESS,.TEMPMSG)
 I $D(ERRORS) S ERRORS("TemporaryAddress",1)="" D BUILDJSON^SDES2JSON(.JSON,.ERRORS) Q
 ;
 S RETURN("TemporaryAddress")=TEMPMSG
 D BUILDJSON^SDES2JSON(.JSON,.RETURN)
 Q
 ;
VALIDATEADD(ERRORS,TEMPADDRESS) ; Input array validation
 N PATDFN,VAL
 ;
 ; Validate patient
 D VALFILEIEN^SDES2VALUTIL(.VAL,.ERRORS,2,$G(TEMPADDRESS("PATIENT IEN")),1,,1,2) Q:$D(ERRORS)
 S PATDFN=TEMPADDRESS("PATIENT IEN")
 ;
 ; Validate flags
 I $G(TEMPADDRESS("ACTIVE FLAG"))'=1&($G(TEMPADDRESS("ACTIVE FLAG"))'=0) D ERRLOG^SDES2JSON(.ERRORS,647) Q
 I $G(TEMPADDRESS("ACTIVE FLAG")),$G(TEMPADDRESS("DELETE FLAG")) D ERRLOG^SDES2JSON(.ERRORS,632) Q
 Q:'$G(TEMPADDRESS("ACTIVE FLAG"))
 ;
 ; Validate address
 I $G(TEMPADDRESS("STREET LINE ONE"))="" D ERRLOG^SDES2JSON(.ERRORS,633) Q
 I $L(TEMPADDRESS("STREET LINE ONE"))<3!($L(TEMPADDRESS("STREET LINE ONE"))>30) D ERRLOG^SDES2JSON(.ERRORS,634) Q
 I $G(TEMPADDRESS("STREET LINE TWO"))'="",($L(TEMPADDRESS("STREET LINE TWO"))<3!($L(TEMPADDRESS("STREET LINE TWO"))>30)) D ERRLOG^SDES2JSON(.ERRORS,635) Q
 I $G(TEMPADDRESS("STREET LINE THREE"))'="",($L(TEMPADDRESS("STREET LINE THREE"))<3!($L(TEMPADDRESS("STREET LINE THREE"))>30)) D ERRLOG^SDES2JSON(.ERRORS,650) Q
 I $G(TEMPADDRESS("CITY"))="" D ERRLOG^SDES2JSON(.ERRORS,636) Q
 I $L(TEMPADDRESS("CITY"))<3!($L(TEMPADDRESS("CITY"))>30) D ERRLOG^SDES2JSON(.ERRORS,637) Q
 I $G(TEMPADDRESS("STATE"))="" D ERRLOG^SDES2JSON(.ERRORS,638) Q
 I '$D(^DIC(5,"B",TEMPADDRESS("STATE")))&('$D(^DIC(5,"C",TEMPADDRESS("STATE")))) D ERRLOG^SDES2JSON(.ERRORS,639) Q
 ; Find State IEN
 I $D(^DIC(5,"B",TEMPADDRESS("STATE"))) S TEMPADDRESS("STATE IEN")=$O(^DIC(5,"B",TEMPADDRESS("STATE"),0))
 I '$G(TEMPADDRESS("STATE IEN")) S TEMPADDRESS("STATE IEN")=$O(^DIC(5,"C",TEMPADDRESS("STATE"),0))
 I $G(TEMPADDRESS("ZIP CODE"))="" D ERRLOG^SDES2JSON(.ERRORS,640) Q
 I TEMPADDRESS("ZIP CODE")'?5N&(TEMPADDRESS("ZIP CODE")'?5N0.1P4N) D ERRLOG^SDES2JSON(.ERRORS,641) Q
 S TEMPADDRESS("ZIP CODE")=$TR(TEMPADDRESS("ZIP CODE"),"-","")
 ;I $G(TEMPADDRESS("COUNTY"))="" D ERRLOG^SDES2JSON(.ERRORS,642) Q ; Not currently required
 I $L($G(TEMPADDRESS("COUNTY")))>30 D ERRLOG^SDES2JSON(.ERRORS,643) Q
 ; Find County IEN
 I $L($G(TEMPADDRESS("COUNTY"))) D
 . I '$D(^DIC(5,TEMPADDRESS("STATE IEN"),1,"B",TEMPADDRESS("COUNTY"))) D ERRLOG^SDES2JSON(.ERRORS,651) Q
 . N DIC,X,Y,Z0 S Z0=TEMPADDRESS("STATE IEN")
 . S DIC="^DIC(5,Z0,1,",DIC(0)="QMO",X=TEMPADDRESS("COUNTY") D ^DIC S X=+Y
 . S TEMPADDRESS("COUNTY IEN")=X K DIC,X,Y,Z0
 Q:$D(ERRORS)
 I $G(TEMPADDRESS("COUNTRY"))="" D ERRLOG^SDES2JSON(.ERRORS,644) Q
 I '$D(^HL(779.004,"B",TEMPADDRESS("COUNTRY")))&('$D(^HL(779.004,"C",TEMPADDRESS("COUNTRY")))) D ERRLOG^SDES2JSON(.ERRORS,645) Q
 ; Find Country IEN
 I $D(^HL(779.004,"C",TEMPADDRESS("COUNTRY"))) S TEMPADDRESS("COUNTRY IEN")=$O(^HL(779.004,"C",TEMPADDRESS("COUNTRY"),0))
 I '$G(TEMPADDRESS("COUNTRY IEN")) S TEMPADDRESS("COUNTRY IEN")=$O(^HL(779.004,"B",TEMPADDRESS("COUNTRY"),0))
 I $L($G(TEMPADDRESS("PHONE"))),$L(TEMPADDRESS("PHONE"))<4!($L(TEMPADDRESS("PHONE"))>20) D ERRLOG^SDES2JSON(.ERRORS,646) Q
 ;
 ; Validate dates
 S TEMPADDRESS("STARTDT")=$$VALISODTTM^SDES2VALISODTTM(.ERRORS,$G(TEMPADDRESS("START DATE")),,1,9,11) Q:$D(ERRORS)
 S TEMPADDRESS("ENDDT")=$$VALISODTTM^SDES2VALISODTTM(.ERRORS,$G(TEMPADDRESS("END DATE")),,,,12) Q:$D(ERRORS)
 I TEMPADDRESS("ENDDT"),(TEMPADDRESS("STARTDT")>TEMPADDRESS("ENDDT")) D ERRLOG^SDES2JSON(.ERRORS,13) Q
 ;
 Q
 ;
EDITTEMPADD(ERRORS,TEMPADDRESS,TEMPMSG) ;
 ;
 I $G(TEMPADDRESS("ACTIVE FLAG")) D CRTTEMPADD(.ERRORS,.TEMPADDRESS,.TEMPMSG) Q
 D DELTEMPADD(.ERRORS,.TEMPADDRESS,.TEMPMSG)
 Q
 ;
CRTTEMPADD(ERRORS,TEMPADDRESS,TEMPMSG) ;
 N FDA,FDAERR,IENS
 S IENS=TEMPADDRESS("PATIENT IEN")_","
 ;
 S FDA(2,IENS,.12105)="Y"
 S FDA(2,IENS,.1211)=$G(TEMPADDRESS("STREET LINE ONE"))
 S FDA(2,IENS,.1212)=$G(TEMPADDRESS("STREET LINE TWO"))
 S FDA(2,IENS,.1213)=$G(TEMPADDRESS("STREET LINE THREE"))
 S FDA(2,IENS,.1214)=$G(TEMPADDRESS("CITY"))
 S FDA(2,IENS,.1215)=$G(TEMPADDRESS("STATE IEN"))
 S FDA(2,IENS,.1216)=$E($G(TEMPADDRESS("ZIP CODE")),1,5)
 I $G(TEMPADDRESS("COUNTY IEN"))'="" S FDA(2,IENS,.12111)=TEMPADDRESS("COUNTY IEN")
 S FDA(2,IENS,.12112)=$G(TEMPADDRESS("ZIP CODE"))
 S FDA(2,IENS,.1217)=$G(TEMPADDRESS("STARTDT"))
 S FDA(2,IENS,.1218)=$G(TEMPADDRESS("ENDDT"))
 I $G(TEMPADDRESS("PHONE"))'="" S FDA(2,IENS,.1219)=TEMPADDRESS("PHONE")
 S FDA(2,IENS,.1223)=$G(TEMPADDRESS("COUNTRY IEN"))
 ;
 D FILE^DIE(,"FDA","FDAERR") K FDA
 I $D(FDAERR) D ERRLOG^SDES2JSON(.ERRORS,648)
 S TEMPMSG="Temporary Address is active and was successfully updated."
 Q
 ;
DELTEMPADD(ERRORS,TEMPADDRESS,TEMPMSG) ;
 N FDA,FDAERR,IENS
 S IENS=TEMPADDRESS("PATIENT IEN")_","
 ;
 S FDA(2,IENS,.12105)="N"
 S TEMPMSG="Temporary Address was successfully inactivated."
 ;
 I $G(TEMPADDRESS("DELETE FLAG")) D
 . S FDA(2,IENS,.1211)="@"
 . S FDA(2,IENS,.1212)="@"
 . S FDA(2,IENS,.1213)="@"
 . S FDA(2,IENS,.1214)="@"
 . S FDA(2,IENS,.1215)="@"
 . S FDA(2,IENS,.1216)="@"
 . S FDA(2,IENS,.12111)="@"
 . S FDA(2,IENS,.12112)="@"
 . S FDA(2,IENS,.1217)="@"
 . S FDA(2,IENS,.1218)="@"
 . S FDA(2,IENS,.1219)="@"
 . S FDA(2,IENS,.1223)="@"
 . S TEMPMSG="Temporary Address was successfully inactivated and deleted."
 ;
 D FILE^DIE(,"FDA","FDAERR") K FDA
 I $D(FDAERR) D ERRLOG^SDES2JSON(.ERRORS,649)
 Q
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HSDES2EDITTEMPADD   7538     printed  Sep 23, 2025@20:30:21                                                                                                                                                                                            Page 2
SDES2EDITTEMPADD ;ALB/JAS,JAS - SDES2 EDIT TEMP ADDRESS ;MAR 25,2025
 +1       ;;5.3;Scheduling;**901,904**;Aug 13, 1993;Build 1
 +2       ;;Per VHA Directive 6402, this routine should not be modified
 +3       ;
 +4       ;---------------------------------------------------------------
 +5       ; RPC: SDES2 EDIT TEMP ADDRESS
 +6       ;
 +7       ; SDCONTEXT INPUT
 +8       ;
 +9       ;S SDCONTEXT("ACHERON AUDIT ID") = Up to 40 Character unique ID number. Ex: 11d9dcc6-c6a2-4785-8031-8261576fca37
 +10      ;S SDCONTEXT("USER DUZ") = The DUZ of the user taking action in the calling application.
 +11      ;S SDCONTEXT("USER SECID") = The SECID of the user taking action in the calling application.
 +12      ;S SDCONTEXT("PATIENT DFN") = The DFN/IEN of the target patient from the calling application.
 +13      ;S SDCONTEXT("PATIENT ICN") = The ICN of the target patient from the calling application.
 +14      ;
 +15      ; TEMPADDRESS INPUT
 +16      ;
 +17      ;S TEMPADDRESS("PATIENT IEN")=""           REQ
 +18      ;S TEMPADDRESS("ACTIVE FLAG")=""           REQ
 +19      ;S TEMPADDRESS("DELETE FLAG")=""           OPT (Defaults to False)
 +20      ;S TEMPADDRESS("STREET LINE ONE")=""       OPT (Required if Active Flag is True)
 +21      ;S TEMPADDRESS("STREET LINE TWO")=""       OPT
 +22      ;S TEMPADDRESS("STREET LINE THREE")=""     OPT
 +23      ;S TEMPADDRESS("ZIP CODE")=""              OPT (Required if Active Flag is True)
 +24      ;S TEMPADDRESS("CITY")=""                  OPT (Required if Active Flag is True)
 +25      ;S TEMPADDRESS("STATE")=""                 OPT (Required if Active Flag is True)
 +26      ;S TEMPADDRESS("COUNTY")=""                OPT
 +27      ;S TEMPADDRESS("COUNTRY")=""               OPT (Required if Active Flag is True)
 +28      ;S TEMPADDRESS("PHONE")=""                 OPT
 +29      ;S TEMPADDRESS("START DATE")=""            OPT (Required if Active Flag is True)
 +30      ;S TEMPADDRESS("END DATE")=""              OPT
 +31      ;
 +32       QUIT 
 +33      ;
EDITTEMP(JSON,SDCONTEXT,TEMPADDRESS) ;
 +1        NEW ERRORS,RETURN,TEMPMSG
 +2        SET TEMPMSG=""
 +3       ;
 +4        DO VALCONTEXT^SDES2VALCONTEXT(.ERRORS,.SDCONTEXT)
 +5        IF $DATA(ERRORS)
               SET ERRORS("TemporaryAddress",1)=""
               DO BUILDJSON^SDES2JSON(.JSON,.ERRORS)
               QUIT 
 +6       ;
 +7        DO VALIDATEADD(.ERRORS,.TEMPADDRESS)
 +8        IF $DATA(ERRORS)
               SET ERRORS("TemporaryAddress",1)=""
               DO BUILDJSON^SDES2JSON(.JSON,.ERRORS)
               QUIT 
 +9       ;
 +10       DO EDITTEMPADD(.ERRORS,.TEMPADDRESS,.TEMPMSG)
 +11       IF $DATA(ERRORS)
               SET ERRORS("TemporaryAddress",1)=""
               DO BUILDJSON^SDES2JSON(.JSON,.ERRORS)
               QUIT 
 +12      ;
 +13       SET RETURN("TemporaryAddress")=TEMPMSG
 +14       DO BUILDJSON^SDES2JSON(.JSON,.RETURN)
 +15       QUIT 
 +16      ;
VALIDATEADD(ERRORS,TEMPADDRESS) ; Input array validation
 +1        NEW PATDFN,VAL
 +2       ;
 +3       ; Validate patient
 +4        DO VALFILEIEN^SDES2VALUTIL(.VAL,.ERRORS,2,$GET(TEMPADDRESS("PATIENT IEN")),1,,1,2)
           if $DATA(ERRORS)
               QUIT 
 +5        SET PATDFN=TEMPADDRESS("PATIENT IEN")
 +6       ;
 +7       ; Validate flags
 +8        IF $GET(TEMPADDRESS("ACTIVE FLAG"))'=1&($GET(TEMPADDRESS("ACTIVE FLAG"))'=0)
               DO ERRLOG^SDES2JSON(.ERRORS,647)
               QUIT 
 +9        IF $GET(TEMPADDRESS("ACTIVE FLAG"))
               IF $GET(TEMPADDRESS("DELETE FLAG"))
                   DO ERRLOG^SDES2JSON(.ERRORS,632)
                   QUIT 
 +10       if '$GET(TEMPADDRESS("ACTIVE FLAG"))
               QUIT 
 +11      ;
 +12      ; Validate address
 +13       IF $GET(TEMPADDRESS("STREET LINE ONE"))=""
               DO ERRLOG^SDES2JSON(.ERRORS,633)
               QUIT 
 +14       IF $LENGTH(TEMPADDRESS("STREET LINE ONE"))<3!($LENGTH(TEMPADDRESS("STREET LINE ONE"))>30)
               DO ERRLOG^SDES2JSON(.ERRORS,634)
               QUIT 
 +15       IF $GET(TEMPADDRESS("STREET LINE TWO"))'=""
               IF ($LENGTH(TEMPADDRESS("STREET LINE TWO"))<3!($LENGTH(TEMPADDRESS("STREET LINE TWO"))>30))
                   DO ERRLOG^SDES2JSON(.ERRORS,635)
                   QUIT 
 +16       IF $GET(TEMPADDRESS("STREET LINE THREE"))'=""
               IF ($LENGTH(TEMPADDRESS("STREET LINE THREE"))<3!($LENGTH(TEMPADDRESS("STREET LINE THREE"))>30))
                   DO ERRLOG^SDES2JSON(.ERRORS,650)
                   QUIT 
 +17       IF $GET(TEMPADDRESS("CITY"))=""
               DO ERRLOG^SDES2JSON(.ERRORS,636)
               QUIT 
 +18       IF $LENGTH(TEMPADDRESS("CITY"))<3!($LENGTH(TEMPADDRESS("CITY"))>30)
               DO ERRLOG^SDES2JSON(.ERRORS,637)
               QUIT 
 +19       IF $GET(TEMPADDRESS("STATE"))=""
               DO ERRLOG^SDES2JSON(.ERRORS,638)
               QUIT 
 +20       IF '$DATA(^DIC(5,"B",TEMPADDRESS("STATE")))&('$DATA(^DIC(5,"C",TEMPADDRESS("STATE"))))
               DO ERRLOG^SDES2JSON(.ERRORS,639)
               QUIT 
 +21      ; Find State IEN
 +22       IF $DATA(^DIC(5,"B",TEMPADDRESS("STATE")))
               SET TEMPADDRESS("STATE IEN")=$ORDER(^DIC(5,"B",TEMPADDRESS("STATE"),0))
 +23       IF '$GET(TEMPADDRESS("STATE IEN"))
               SET TEMPADDRESS("STATE IEN")=$ORDER(^DIC(5,"C",TEMPADDRESS("STATE"),0))
 +24       IF $GET(TEMPADDRESS("ZIP CODE"))=""
               DO ERRLOG^SDES2JSON(.ERRORS,640)
               QUIT 
 +25       IF TEMPADDRESS("ZIP CODE")'?5N&(TEMPADDRESS("ZIP CODE")'?5N0.1P4N)
               DO ERRLOG^SDES2JSON(.ERRORS,641)
               QUIT 
 +26       SET TEMPADDRESS("ZIP CODE")=$TRANSLATE(TEMPADDRESS("ZIP CODE"),"-","")
 +27      ;I $G(TEMPADDRESS("COUNTY"))="" D ERRLOG^SDES2JSON(.ERRORS,642) Q ; Not currently required
 +28       IF $LENGTH($GET(TEMPADDRESS("COUNTY")))>30
               DO ERRLOG^SDES2JSON(.ERRORS,643)
               QUIT 
 +29      ; Find County IEN
 +30       IF $LENGTH($GET(TEMPADDRESS("COUNTY")))
               Begin DoDot:1
 +31               IF '$DATA(^DIC(5,TEMPADDRESS("STATE IEN"),1,"B",TEMPADDRESS("COUNTY")))
                       DO ERRLOG^SDES2JSON(.ERRORS,651)
                       QUIT 
 +32               NEW DIC,X,Y,Z0
                   SET Z0=TEMPADDRESS("STATE IEN")
 +33               SET DIC="^DIC(5,Z0,1,"
                   SET DIC(0)="QMO"
                   SET X=TEMPADDRESS("COUNTY")
                   DO ^DIC
                   SET X=+Y
 +34               SET TEMPADDRESS("COUNTY IEN")=X
                   KILL DIC,X,Y,Z0
               End DoDot:1
 +35       if $DATA(ERRORS)
               QUIT 
 +36       IF $GET(TEMPADDRESS("COUNTRY"))=""
               DO ERRLOG^SDES2JSON(.ERRORS,644)
               QUIT 
 +37       IF '$DATA(^HL(779.004,"B",TEMPADDRESS("COUNTRY")))&('$DATA(^HL(779.004,"C",TEMPADDRESS("COUNTRY"))))
               DO ERRLOG^SDES2JSON(.ERRORS,645)
               QUIT 
 +38      ; Find Country IEN
 +39       IF $DATA(^HL(779.004,"C",TEMPADDRESS("COUNTRY")))
               SET TEMPADDRESS("COUNTRY IEN")=$ORDER(^HL(779.004,"C",TEMPADDRESS("COUNTRY"),0))
 +40       IF '$GET(TEMPADDRESS("COUNTRY IEN"))
               SET TEMPADDRESS("COUNTRY IEN")=$ORDER(^HL(779.004,"B",TEMPADDRESS("COUNTRY"),0))
 +41       IF $LENGTH($GET(TEMPADDRESS("PHONE")))
               IF $LENGTH(TEMPADDRESS("PHONE"))<4!($LENGTH(TEMPADDRESS("PHONE"))>20)
                   DO ERRLOG^SDES2JSON(.ERRORS,646)
                   QUIT 
 +42      ;
 +43      ; Validate dates
 +44       SET TEMPADDRESS("STARTDT")=$$VALISODTTM^SDES2VALISODTTM(.ERRORS,$GET(TEMPADDRESS("START DATE")),,1,9,11)
           if $DATA(ERRORS)
               QUIT 
 +45       SET TEMPADDRESS("ENDDT")=$$VALISODTTM^SDES2VALISODTTM(.ERRORS,$GET(TEMPADDRESS("END DATE")),,,,12)
           if $DATA(ERRORS)
               QUIT 
 +46       IF TEMPADDRESS("ENDDT")
               IF (TEMPADDRESS("STARTDT")>TEMPADDRESS("ENDDT"))
                   DO ERRLOG^SDES2JSON(.ERRORS,13)
                   QUIT 
 +47      ;
 +48       QUIT 
 +49      ;
EDITTEMPADD(ERRORS,TEMPADDRESS,TEMPMSG) ;
 +1       ;
 +2        IF $GET(TEMPADDRESS("ACTIVE FLAG"))
               DO CRTTEMPADD(.ERRORS,.TEMPADDRESS,.TEMPMSG)
               QUIT 
 +3        DO DELTEMPADD(.ERRORS,.TEMPADDRESS,.TEMPMSG)
 +4        QUIT 
 +5       ;
CRTTEMPADD(ERRORS,TEMPADDRESS,TEMPMSG) ;
 +1        NEW FDA,FDAERR,IENS
 +2        SET IENS=TEMPADDRESS("PATIENT IEN")_","
 +3       ;
 +4        SET FDA(2,IENS,.12105)="Y"
 +5        SET FDA(2,IENS,.1211)=$GET(TEMPADDRESS("STREET LINE ONE"))
 +6        SET FDA(2,IENS,.1212)=$GET(TEMPADDRESS("STREET LINE TWO"))
 +7        SET FDA(2,IENS,.1213)=$GET(TEMPADDRESS("STREET LINE THREE"))
 +8        SET FDA(2,IENS,.1214)=$GET(TEMPADDRESS("CITY"))
 +9        SET FDA(2,IENS,.1215)=$GET(TEMPADDRESS("STATE IEN"))
 +10       SET FDA(2,IENS,.1216)=$EXTRACT($GET(TEMPADDRESS("ZIP CODE")),1,5)
 +11       IF $GET(TEMPADDRESS("COUNTY IEN"))'=""
               SET FDA(2,IENS,.12111)=TEMPADDRESS("COUNTY IEN")
 +12       SET FDA(2,IENS,.12112)=$GET(TEMPADDRESS("ZIP CODE"))
 +13       SET FDA(2,IENS,.1217)=$GET(TEMPADDRESS("STARTDT"))
 +14       SET FDA(2,IENS,.1218)=$GET(TEMPADDRESS("ENDDT"))
 +15       IF $GET(TEMPADDRESS("PHONE"))'=""
               SET FDA(2,IENS,.1219)=TEMPADDRESS("PHONE")
 +16       SET FDA(2,IENS,.1223)=$GET(TEMPADDRESS("COUNTRY IEN"))
 +17      ;
 +18       DO FILE^DIE(,"FDA","FDAERR")
           KILL FDA
 +19       IF $DATA(FDAERR)
               DO ERRLOG^SDES2JSON(.ERRORS,648)
 +20       SET TEMPMSG="Temporary Address is active and was successfully updated."
 +21       QUIT 
 +22      ;
DELTEMPADD(ERRORS,TEMPADDRESS,TEMPMSG) ;
 +1        NEW FDA,FDAERR,IENS
 +2        SET IENS=TEMPADDRESS("PATIENT IEN")_","
 +3       ;
 +4        SET FDA(2,IENS,.12105)="N"
 +5        SET TEMPMSG="Temporary Address was successfully inactivated."
 +6       ;
 +7        IF $GET(TEMPADDRESS("DELETE FLAG"))
               Begin DoDot:1
 +8                SET FDA(2,IENS,.1211)="@"
 +9                SET FDA(2,IENS,.1212)="@"
 +10               SET FDA(2,IENS,.1213)="@"
 +11               SET FDA(2,IENS,.1214)="@"
 +12               SET FDA(2,IENS,.1215)="@"
 +13               SET FDA(2,IENS,.1216)="@"
 +14               SET FDA(2,IENS,.12111)="@"
 +15               SET FDA(2,IENS,.12112)="@"
 +16               SET FDA(2,IENS,.1217)="@"
 +17               SET FDA(2,IENS,.1218)="@"
 +18               SET FDA(2,IENS,.1219)="@"
 +19               SET FDA(2,IENS,.1223)="@"
 +20               SET TEMPMSG="Temporary Address was successfully inactivated and deleted."
               End DoDot:1
 +21      ;
 +22       DO FILE^DIE(,"FDA","FDAERR")
           KILL FDA
 +23       IF $DATA(FDAERR)
               DO ERRLOG^SDES2JSON(.ERRORS,649)
 +24       QUIT