PXRMP85I ;ISP/AGP - PATCH 85 INSTALLATION ;Oct 24, 2023@15:37:23
;;2.0;CLINICAL REMINDERS;**85**;Feb 04, 2005;Build 7
;
BACKUP ;
N DESCTXT,EXNAME,INPUTS,NOTINLM
S INPUTS(801.41,"VA-WH GP BR BI-RAD SELECTOR: BIRAD 0")=""
S INPUTS(801.41,"VA-WH GP BR BI-RAD SELECTOR: BIRAD 0 DENSE")=""
S INPUTS(801.41,"VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
S INPUTS(801.41,"VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0 DENSE")=""
S INPUTS(801.41,"VA-WH GP SMART BR MALE OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
S DESCTXT(1)="Exchange file built when patch PXRM*2.0*85"
S DESCTXT(2)="was installed on "_$$FMTE^XLFDT($$NOW^XLFDT())
S NOTINLM=1,EXNAME="PXRM*2.0*85 AUTOMATIC BACKUP"
D CRE^PXRMEXSP(EXNAME,.INPUTS,.DESCTXT,NOTINLM)
Q
;
EXARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install
;MODE values: I for include in build, A for include action.
N LN
S LN=0
;
S LN=LN+1
S ARRAY(LN,1)="PXRM*2.0*85 BI-RAD 0 UPDATES"
I MODE["I" S ARRAY(LN,2)="11/01/2023@11:58:21"
I MODE["A" S ARRAY(LN,3)="O"
;
Q
;
PRE ;Pre-init
;Disable options and protocols
D OPTIONS^PXRMUTIL("DISABLE","Install of PXRM*2.0*85")
D PROTCOLS^PXRMUTIL("DISABLE","Install of PXRM*2.0*85")
D DELEXE^PXRMEXSI("EXARRAY","PXRMP85I")
Q
;
POST ;Post-init
;Install Exchange File entries.
N DIALOGS
D BACKUP
D SRCFINDS(.DIALOGS)
D SMEXINS^PXRMEXSI("EXARRAY","PXRMP85I")
D SETFINDS(.DIALOGS)
;Enable options and protocols
D OPTIONS^PXRMUTIL("ENABLE","Install of PXRM*2.0*85")
D PROTCOLS^PXRMUTIL("ENABLE","Install of PXRM*2.0*85")
Q
;
SRCFINDS(DIALOGS) ;
N INPUTS
S INPUTS("DIALOG NAME","VA-WH GP BR BI-RAD SELECTOR: BIRAD 0")=""
S INPUTS("DIALOG NAME","VA-WH GP BR BI-RAD SELECTOR: BIRAD 0 DENSE")=""
S INPUTS("DIALOG NAME","VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
S INPUTS("DIALOG NAME","VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0 DENSE")=""
S INPUTS("DIALOG NAME","VA-WH GP SMART BR MALE OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
S INPUTS("FILES","ORD(101.41,")=""
D BMES^XPDUTL("Searching for dialogs for order dialogs")
D SRC4FTYPE^PXRMDUTL1(.DIALOGS,.INPUTS)
I '$D(DIALOGS) D BMES^XPDUTL(" No order dialogs found") Q
D BMES^XPDUTL(" Done")
Q
;
SETFINDS(DIALOGS) ;
I '$D(DIALOGS) Q
N FDA,FIND,IEN,IENS,ID,ITEM,MSG
D BMES^XPDUTL("Setting order dailogs")
S IEN=0
F S IEN=$O(DIALOGS(IEN)) Q:IEN'>0 D
.K FDA,MSG
.S FIND="",ID=IEN
.F S FIND=$O(DIALOGS(IEN,FIND)) Q:FIND="" D
..S ITEM=$G(DIALOGS(IEN,FIND))
..;check to make sure existing finding item is empty, if not add to additional findings
..I FIND=0,$P($G(^PXRMD(801.41,IEN,1)),U,5)="" S FDA(801.41,IEN_",",15)=ITEM Q
..S IENS="+"_(ID+1)_","_IEN_","
..S FDA(801.4118,IENS,.01)=ITEM
.D UPDATE^DIE("","FDA",,"MSG")
.I $D(MSG) D Q
..D BMES^XPDUTL(" Error updating dialog: "_$P($G(^PXRMD(801.41,IEN,0)),U))
..D AWRITE^PXRMUTIL("MSG")
.D SETHIST^PXRMDUTL1(IEN,"Set Order Dialogs for patch 85")
D BMES^XPDUTL(" Done")
Q
;
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPXRMP85I 3036 printed Nov 22, 2024@16:58:30 Page 2
PXRMP85I ;ISP/AGP - PATCH 85 INSTALLATION ;Oct 24, 2023@15:37:23
+1 ;;2.0;CLINICAL REMINDERS;**85**;Feb 04, 2005;Build 7
+2 ;
BACKUP ;
+1 NEW DESCTXT,EXNAME,INPUTS,NOTINLM
+2 SET INPUTS(801.41,"VA-WH GP BR BI-RAD SELECTOR: BIRAD 0")=""
+3 SET INPUTS(801.41,"VA-WH GP BR BI-RAD SELECTOR: BIRAD 0 DENSE")=""
+4 SET INPUTS(801.41,"VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
+5 SET INPUTS(801.41,"VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0 DENSE")=""
+6 SET INPUTS(801.41,"VA-WH GP SMART BR MALE OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
+7 SET DESCTXT(1)="Exchange file built when patch PXRM*2.0*85"
+8 SET DESCTXT(2)="was installed on "_$$FMTE^XLFDT($$NOW^XLFDT())
+9 SET NOTINLM=1
SET EXNAME="PXRM*2.0*85 AUTOMATIC BACKUP"
+10 DO CRE^PXRMEXSP(EXNAME,.INPUTS,.DESCTXT,NOTINLM)
+11 QUIT
+12 ;
EXARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install
+1 ;MODE values: I for include in build, A for include action.
+2 NEW LN
+3 SET LN=0
+4 ;
+5 SET LN=LN+1
+6 SET ARRAY(LN,1)="PXRM*2.0*85 BI-RAD 0 UPDATES"
+7 IF MODE["I"
SET ARRAY(LN,2)="11/01/2023@11:58:21"
+8 IF MODE["A"
SET ARRAY(LN,3)="O"
+9 ;
+10 QUIT
+11 ;
PRE ;Pre-init
+1 ;Disable options and protocols
+2 DO OPTIONS^PXRMUTIL("DISABLE","Install of PXRM*2.0*85")
+3 DO PROTCOLS^PXRMUTIL("DISABLE","Install of PXRM*2.0*85")
+4 DO DELEXE^PXRMEXSI("EXARRAY","PXRMP85I")
+5 QUIT
+6 ;
POST ;Post-init
+1 ;Install Exchange File entries.
+2 NEW DIALOGS
+3 DO BACKUP
+4 DO SRCFINDS(.DIALOGS)
+5 DO SMEXINS^PXRMEXSI("EXARRAY","PXRMP85I")
+6 DO SETFINDS(.DIALOGS)
+7 ;Enable options and protocols
+8 DO OPTIONS^PXRMUTIL("ENABLE","Install of PXRM*2.0*85")
+9 DO PROTCOLS^PXRMUTIL("ENABLE","Install of PXRM*2.0*85")
+10 QUIT
+11 ;
SRCFINDS(DIALOGS) ;
+1 NEW INPUTS
+2 SET INPUTS("DIALOG NAME","VA-WH GP BR BI-RAD SELECTOR: BIRAD 0")=""
+3 SET INPUTS("DIALOG NAME","VA-WH GP BR BI-RAD SELECTOR: BIRAD 0 DENSE")=""
+4 SET INPUTS("DIALOG NAME","VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
+5 SET INPUTS("DIALOG NAME","VA-WH GP SMART BR OUTSIDE BI-RAD SELECTOR: BIRAD 0 DENSE")=""
+6 SET INPUTS("DIALOG NAME","VA-WH GP SMART BR MALE OUTSIDE BI-RAD SELECTOR: BIRAD 0")=""
+7 SET INPUTS("FILES","ORD(101.41,")=""
+8 DO BMES^XPDUTL("Searching for dialogs for order dialogs")
+9 DO SRC4FTYPE^PXRMDUTL1(.DIALOGS,.INPUTS)
+10 IF '$DATA(DIALOGS)
DO BMES^XPDUTL(" No order dialogs found")
QUIT
+11 DO BMES^XPDUTL(" Done")
+12 QUIT
+13 ;
SETFINDS(DIALOGS) ;
+1 IF '$DATA(DIALOGS)
QUIT
+2 NEW FDA,FIND,IEN,IENS,ID,ITEM,MSG
+3 DO BMES^XPDUTL("Setting order dailogs")
+4 SET IEN=0
+5 FOR
SET IEN=$ORDER(DIALOGS(IEN))
if IEN'>0
QUIT
Begin DoDot:1
+6 KILL FDA,MSG
+7 SET FIND=""
SET ID=IEN
+8 FOR
SET FIND=$ORDER(DIALOGS(IEN,FIND))
if FIND=""
QUIT
Begin DoDot:2
+9 SET ITEM=$GET(DIALOGS(IEN,FIND))
+10 ;check to make sure existing finding item is empty, if not add to additional findings
+11 IF FIND=0
IF $PIECE($GET(^PXRMD(801.41,IEN,1)),U,5)=""
SET FDA(801.41,IEN_",",15)=ITEM
QUIT
+12 SET IENS="+"_(ID+1)_","_IEN_","
+13 SET FDA(801.4118,IENS,.01)=ITEM
End DoDot:2
+14 DO UPDATE^DIE("","FDA",,"MSG")
+15 IF $DATA(MSG)
Begin DoDot:2
+16 DO BMES^XPDUTL(" Error updating dialog: "_$PIECE($GET(^PXRMD(801.41,IEN,0)),U))
+17 DO AWRITE^PXRMUTIL("MSG")
End DoDot:2
QUIT
+18 DO SETHIST^PXRMDUTL1(IEN,"Set Order Dialogs for patch 85")
End DoDot:1
+19 DO BMES^XPDUTL(" Done")
+20 QUIT
+21 ;