PXRMEXSP ;SLC/AGP - Auto packed utility. ;Oct 24, 2023@15:37:44
;;2.0;CLINICAL REMINDERS;**85**;Feb 04, 2005;Build 7
;
TESTER ;
N DESCTXT,EXNAME,INPUTS,NOTINLM
S INPUTS(811.9,"VA-WH PAP SMEAR SCREENING")=""
S INPUTS(811.9,"ZZVA-WH PAP SMEAR REVIEW RESULTS")=""
S INPUTS(801.41,"VA-WH PAP SMEAR SCREENING")=""
S INPUTS(801.41,"ZZVA-WH PAP SMEAR REVIEW RESULTS")=""
S DESCTXT(1)="Exchange file built when patch PXRM*2.0*81"
S DESCTXT(2)="was installed on "_$$FMTE^XLFDT($$NOW^XLFDT())
S NOTINLM=1,EXNAME="PXRM*2.0*81 AUTOMATIC BACKUP"
D CRE(EXNAME,.INPUTS,.DESCTXT,NOTINLM)
Q
;
;==========================
BACKUP(IEN) ;
N DIR,DESCTXT,EXNAME,FAIL,FILES,INPUTS,LIST,NAME,Y
S NAME=$P($G(^PXD(811.8,IEN,0)),U)
S DIR(0)="Y",DIR("B")="YES",DIR("A")="Back up selected files"
D ^DIR
I +Y'=1 Q
D FILELIST^PXRMEXRP(.FILES)
S FAIL=0
D PROC120^PXRMEXRP(.LIST,.FILES,IEN,.FAIL) I FAIL=1 W !,"Could not backup exchange entry "_NAME H 2 Q
M INPUTS=LIST("FILES")
S EXNAME=$S($L(NAME)<55:NAME_" (BACKUP)",1:$E(NAME,1,54)_" (BACKUP)")
D CRE(EXNAME,.INPUTS,.DESCTXT,0)
Q
;
;==========================
BLDDESC(TMPIND,DESCTXT) ;If multiple entries have been selected
;then initialize the description with the selected list.
N IND,NL,NOUT,TEXT,TEXTOUT
S NL=+$O(DESCTXT(""))+1
D FORMAT^PXRMTEXT(1,70,NL,.DESCTXT,.NOUT,.TEXTOUT)
K ^TMP(TMPIND,$J,"DESC")
F IND=1:1:NOUT S ^TMP(TMPIND,$J,"DESC",1,IND,0)=TEXTOUT(IND)
Q
;
BLDFSEL(SELLIST,FILELST,INPUTS) ;
N ERROR,FN,ID,IEN,NUMF
S FN=0,ERROR=0
F S FN=$O(INPUTS(FN)) Q:FN'>0!(ERROR=1) D
.S NUMF=0
.S ID="" F S ID=$O(INPUTS(FN,ID)) Q:ID=""!(ERROR=1) D
.. S IEN=$S(+ID>0:+ID,1:$$EXISTS^PXRMEXIU(FN,ID))
.. I IEN=0 S ERROR=1 Q
.. S NUMF=NUMF+1
.. S SELLIST(FN,NUMF)=IEN
.. S SELLIST(FN,"IEN",NUMF)=NUMF
I ERROR=1 Q 0
Q 1
;
;==========================
CRE(EXNAME,INPUTS,DESCTXT,NOTINLM) ;Pack a reminder component and store it in the repository.
N CMPLIST,CNT,DIEN,DERRFND,DERRMSG,EFNAME,ERROR,FAIL,FAILTYPE,FILELST
N OUTPUT,POA,RANK,SERROR,SELLIST,SUCCESS,TMPIND,USELIST
S TMPIND="PXRMEXPR"
K ^TMP(TMPIND,$J)
D GETFLST(.FILELST)
D PACKORD^PXRMEXPD(.RANK)
I '$$BLDFSEL(.SELLIST,.FILELST,.INPUTS) Q
;
K VALMHDR
I '$D(SELLIST) Q
;Save the user's selections.
M USELIST=SELLIST
;Process the selected list to build a complete list of components
;to be packed.
D CMPLIST^PXRMEXPD(.CMPLIST,.SELLIST,.FILELST,.ERROR)
I ERROR K ^TMP(TMPIND,$J) Q
S NOTINLM=$G(NOTINLM)
I '$$DEF(.SELLIST,TMPIND,NOTINLM) Q
I '$$TERM(.SELLIST,TMPIND,NOTINLM) Q
I '$$DIALOG(.SELLIST,TMPIND,NOTINLM) Q
;
;Create the header information.
S EFNAME=$S($G(EXNAME)'="":EXNAME,1:"")
S NOTINLM=$G(NOTINLM)
D HEADER(TMPIND,.USELIST,.SELLIST,.RANK,EXNAME,.DESCTXT)
I EXNAME=-1 Q
;
;Order the component list.
D ORDER^PXRMEXPD(.CMPLIST,.RANK,.POA)
;Pack the list
D PACK^PXRMEXPD(.CMPLIST,.POA,TMPIND,.SELLIST,.SERROR)
I SERROR K ^TMP(TMPIND,$J) Q
D STOREPR^PXRMEXU2(.SUCCESS,EXNAME,TMPIND,.SELLIST)
K ^TMP(TMPIND,$J)
I SUCCESS D
. I +$G(NOTINLM) D BMES^XPDUTL(EFNAME_" was saved in the Exchange File.") Q
. S VALMHDR(1)=EFNAME_" was saved in the Exchange File."
. D BLDLIST^PXRMEXLC(1)
E D
. I +$G(NOTINLM) D Q
..D BMES^XPDUTL("Creation of Exchange File entry "_EFNAME)
..D BMES^XPDUTL("failed; it was not saved!")
. S VALMHDR(1)="Creation of Exchange File entry "_EFNAME
. S VALMHDR(2)="failed; it was not saved!"
Q
;
DEF(SELLIST,TMPIND,NOTINLM) ;Check reminder definitions for errors.
N DIEN,FAIL,IDX,OK,OUTPUT
S FAIL=0
I $D(SELLIST(811.9)) D I FAIL K ^TMP(TMPIND,$J) Q 0
.;Check each reminder definition.
. I 'NOTINLM W !!,"Checking reminder definition(s) for errors."
. S IDX=0
. F S IDX=$O(SELLIST(811.9,"IEN",IDX)) Q:IDX'>0 D
.. S DIEN=+$G(SELLIST(811.9,IDX)) I DIEN=0 Q
.. I 'NOTINLM W !!,"Checking reminder definition "_$P(^PXD(811.9,DIEN,0),U,1)
.. K OUTPUT
.. S OK=$$DEF^PXRMICHK(DIEN,.OUTPUT,$S(NOTINLM=1:0,1:1))
.. I OK=0 S FAIL=1
I NOTINLM Q $S(FAIL=1:0,1:1)
I FAIL=0 W !!,"No fatal reminder definition problems were found, packing will continue."
I FAIL=1 W !!,"Cannot create the packed file, please correct the above fatal error(s)."
H 3
Q 1
;
DIALOG(SELLIST,TMPIND,NOTINLM) ;Check reminder dialogs for errors
N CNT,DIEN,FAIL,IDX,OUTPUT,FAILTYPE
S FAIL=0
K OUTPUT
I $D(SELLIST(801.41)) D I FAIL="F" K ^TMP(TMPIND,$J) Q 0
.I 'NOTINLM W !!,"Checking reminder dialog(s) for errors."
. S IDX=0
.;Check individual reminder dialogs
. F S IDX=$O(SELLIST(801.41,"IEN",IDX)) Q:IDX'>0 D
.. S DIEN=+$G(SELLIST(801.41,IDX)) I DIEN=0 Q
.. I FAIL=0 W "."
.. S FAILTYPE=$$RETARR^PXRMDLRP(DIEN,.OUTPUT) Q:'$D(OUTPUT)
.. I FAILTYPE="F" S FAIL="F"
.. I FAILTYPE="W",FAIL=0 S FAIL="W"
.. I 'NOTINLM D
... W !!,$S(FAILTYPE="W":"**WARNING**",FAILTYPE="F":"**FATAL ERROR**",1:"")
... S CNT=0 F S CNT=$O(OUTPUT(CNT)) Q:CNT'>0 W !,OUTPUT(CNT)
.. K OUTPUT
.;
I NOTINLM Q $S(FAIL=1:0,1:1)
I FAIL=0 W !!,"No fatal dialog problems were found, packing will continue."
I FAIL="F" W !!,"Cannot create the packed file, please correct the above fatal error(s)."
H 3
Q 1
;
GETFLST(FILELST) ;
S FILELST(1)=811.4_U_$$GET1^DID(811.4,"","","NAME")
S FILELST(2)=810.8_U_$$GET1^DID(810.8,"","","NAME")
S FILELST(3)=811.9_U_$$GET1^DID(811.9,"","","NAME")
S FILELST(4)=801.41_U_$$GET1^DID(801.41,"","","NAME")
S FILELST(5)=810.7_U_$$GET1^DID(810.7,"","","NAME")
S FILELST(6)=810.2_U_$$GET1^DID(810.2,"","","NAME")
S FILELST(7)=810.4_U_$$GET1^DID(810.4,"","","NAME")
S FILELST(8)=810.9_U_$$GET1^DID(810.9,"","","NAME")
S FILELST(9)=811.3_U_$$GET1^DID(811.3,"","","NAME")
S FILELST(10)=811.6_U_$$GET1^DID(811.6,"","","NAME")
S FILELST(11)=811.2_U_$$GET1^DID(811.2,"","","NAME")
S FILELST(12)=811.5_U_$$GET1^DID(811.5,"","","NAME")
S FILELST(13)=801_U_$$GET1^DID(801,"","","NAME")
S FILELST(14)=801.1_U_$$GET1^DID(801.1,"","","NAME")
S FILELST(0)=14
Q
;
;==========================
;information.
;Save the source information and the passed in description text.
D PUTSRC^PXRMEXPD("",EFNAME,TMPIND)
D BLDDESC(TMPIND,.DESCTXT)
;Add the packing attributes.
D PATTR^PXRMEXPD(TMPIND)
Q
;
TERM(SELLIST,TMPIND,NOTINLM) ;Check reminder terms for errors.
N DIEN,FAIL,IDX,OK,OUTPUT
S FAIL=0
I $D(SELLIST(811.5)) D I FAIL K ^TMP(TMPIND,$J) Q 0
.;Check each reminder term.
. I 'NOTINLM W !!,"Checking reminder term(s) for errors."
. S IDX=0
. F S IDX=$O(SELLIST(811.5,"IEN",IDX)) Q:IDX'>0 D
.. S DIEN=+$G(SELLIST(811.5,IDX)) I DIEN=0 Q
.. I 'NOTINLM W !!,"Checking reminder term "_$P(^PXRMD(811.5,DIEN,0),U,1)
.. K OUTPUT
.. S OK=$$TERM^PXRMICK1(DIEN,.OUTPUT,$S(NOTINLM=1:0,1:1))
.. I OK=0 S FAIL=1
I NOTINLM Q $S(FAIL=1:0,1:1)
I FAIL=0 W !!,"No fatal reminder term problems were found, packing will continue."
I FAIL=1 W !!,"Cannot create the packed file, please correct the above fatal error(s)."
H 3
Q $S(FAIL=1:0,1:1)
;
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPXRMEXSP 7132 printed Oct 16, 2024@17:46:06 Page 2
PXRMEXSP ;SLC/AGP - Auto packed utility. ;Oct 24, 2023@15:37:44
+1 ;;2.0;CLINICAL REMINDERS;**85**;Feb 04, 2005;Build 7
+2 ;
TESTER ;
+1 NEW DESCTXT,EXNAME,INPUTS,NOTINLM
+2 SET INPUTS(811.9,"VA-WH PAP SMEAR SCREENING")=""
+3 SET INPUTS(811.9,"ZZVA-WH PAP SMEAR REVIEW RESULTS")=""
+4 SET INPUTS(801.41,"VA-WH PAP SMEAR SCREENING")=""
+5 SET INPUTS(801.41,"ZZVA-WH PAP SMEAR REVIEW RESULTS")=""
+6 SET DESCTXT(1)="Exchange file built when patch PXRM*2.0*81"
+7 SET DESCTXT(2)="was installed on "_$$FMTE^XLFDT($$NOW^XLFDT())
+8 SET NOTINLM=1
SET EXNAME="PXRM*2.0*81 AUTOMATIC BACKUP"
+9 DO CRE(EXNAME,.INPUTS,.DESCTXT,NOTINLM)
+10 QUIT
+11 ;
+12 ;==========================
BACKUP(IEN) ;
+1 NEW DIR,DESCTXT,EXNAME,FAIL,FILES,INPUTS,LIST,NAME,Y
+2 SET NAME=$PIECE($GET(^PXD(811.8,IEN,0)),U)
+3 SET DIR(0)="Y"
SET DIR("B")="YES"
SET DIR("A")="Back up selected files"
+4 DO ^DIR
+5 IF +Y'=1
QUIT
+6 DO FILELIST^PXRMEXRP(.FILES)
+7 SET FAIL=0
+8 DO PROC120^PXRMEXRP(.LIST,.FILES,IEN,.FAIL)
IF FAIL=1
WRITE !,"Could not backup exchange entry "_NAME
HANG 2
QUIT
+9 MERGE INPUTS=LIST("FILES")
+10 SET EXNAME=$SELECT($LENGTH(NAME)<55:NAME_" (BACKUP)",1:$EXTRACT(NAME,1,54)_" (BACKUP)")
+11 DO CRE(EXNAME,.INPUTS,.DESCTXT,0)
+12 QUIT
+13 ;
+14 ;==========================
BLDDESC(TMPIND,DESCTXT) ;If multiple entries have been selected
+1 ;then initialize the description with the selected list.
+2 NEW IND,NL,NOUT,TEXT,TEXTOUT
+3 SET NL=+$ORDER(DESCTXT(""))+1
+4 DO FORMAT^PXRMTEXT(1,70,NL,.DESCTXT,.NOUT,.TEXTOUT)
+5 KILL ^TMP(TMPIND,$JOB,"DESC")
+6 FOR IND=1:1:NOUT
SET ^TMP(TMPIND,$JOB,"DESC",1,IND,0)=TEXTOUT(IND)
+7 QUIT
+8 ;
BLDFSEL(SELLIST,FILELST,INPUTS) ;
+1 NEW ERROR,FN,ID,IEN,NUMF
+2 SET FN=0
SET ERROR=0
+3 FOR
SET FN=$ORDER(INPUTS(FN))
if FN'>0!(ERROR=1)
QUIT
Begin DoDot:1
+4 SET NUMF=0
+5 SET ID=""
FOR
SET ID=$ORDER(INPUTS(FN,ID))
if ID=""!(ERROR=1)
QUIT
Begin DoDot:2
+6 SET IEN=$SELECT(+ID>0:+ID,1:$$EXISTS^PXRMEXIU(FN,ID))
+7 IF IEN=0
SET ERROR=1
QUIT
+8 SET NUMF=NUMF+1
+9 SET SELLIST(FN,NUMF)=IEN
+10 SET SELLIST(FN,"IEN",NUMF)=NUMF
End DoDot:2
End DoDot:1
+11 IF ERROR=1
QUIT 0
+12 QUIT 1
+13 ;
+14 ;==========================
CRE(EXNAME,INPUTS,DESCTXT,NOTINLM) ;Pack a reminder component and store it in the repository.
+1 NEW CMPLIST,CNT,DIEN,DERRFND,DERRMSG,EFNAME,ERROR,FAIL,FAILTYPE,FILELST
+2 NEW OUTPUT,POA,RANK,SERROR,SELLIST,SUCCESS,TMPIND,USELIST
+3 SET TMPIND="PXRMEXPR"
+4 KILL ^TMP(TMPIND,$JOB)
+5 DO GETFLST(.FILELST)
+6 DO PACKORD^PXRMEXPD(.RANK)
+7 IF '$$BLDFSEL(.SELLIST,.FILELST,.INPUTS)
QUIT
+8 ;
+9 KILL VALMHDR
+10 IF '$DATA(SELLIST)
QUIT
+11 ;Save the user's selections.
+12 MERGE USELIST=SELLIST
+13 ;Process the selected list to build a complete list of components
+14 ;to be packed.
+15 DO CMPLIST^PXRMEXPD(.CMPLIST,.SELLIST,.FILELST,.ERROR)
+16 IF ERROR
KILL ^TMP(TMPIND,$JOB)
QUIT
+17 SET NOTINLM=$GET(NOTINLM)
+18 IF '$$DEF(.SELLIST,TMPIND,NOTINLM)
QUIT
+19 IF '$$TERM(.SELLIST,TMPIND,NOTINLM)
QUIT
+20 IF '$$DIALOG(.SELLIST,TMPIND,NOTINLM)
QUIT
+21 ;
+22 ;Create the header information.
+23 SET EFNAME=$SELECT($GET(EXNAME)'="":EXNAME,1:"")
+24 SET NOTINLM=$GET(NOTINLM)
+25 DO HEADER(TMPIND,.USELIST,.SELLIST,.RANK,EXNAME,.DESCTXT)
+26 IF EXNAME=-1
QUIT
+27 ;
+28 ;Order the component list.
+29 DO ORDER^PXRMEXPD(.CMPLIST,.RANK,.POA)
+30 ;Pack the list
+31 DO PACK^PXRMEXPD(.CMPLIST,.POA,TMPIND,.SELLIST,.SERROR)
+32 IF SERROR
KILL ^TMP(TMPIND,$JOB)
QUIT
+33 DO STOREPR^PXRMEXU2(.SUCCESS,EXNAME,TMPIND,.SELLIST)
+34 KILL ^TMP(TMPIND,$JOB)
+35 IF SUCCESS
Begin DoDot:1
+36 IF +$GET(NOTINLM)
DO BMES^XPDUTL(EFNAME_" was saved in the Exchange File.")
QUIT
+37 SET VALMHDR(1)=EFNAME_" was saved in the Exchange File."
+38 DO BLDLIST^PXRMEXLC(1)
End DoDot:1
+39 IF '$TEST
Begin DoDot:1
+40 IF +$GET(NOTINLM)
Begin DoDot:2
+41 DO BMES^XPDUTL("Creation of Exchange File entry "_EFNAME)
+42 DO BMES^XPDUTL("failed; it was not saved!")
End DoDot:2
QUIT
+43 SET VALMHDR(1)="Creation of Exchange File entry "_EFNAME
+44 SET VALMHDR(2)="failed; it was not saved!"
End DoDot:1
+45 QUIT
+46 ;
DEF(SELLIST,TMPIND,NOTINLM) ;Check reminder definitions for errors.
+1 NEW DIEN,FAIL,IDX,OK,OUTPUT
+2 SET FAIL=0
+3 IF $DATA(SELLIST(811.9))
Begin DoDot:1
+4 ;Check each reminder definition.
+5 IF 'NOTINLM
WRITE !!,"Checking reminder definition(s) for errors."
+6 SET IDX=0
+7 FOR
SET IDX=$ORDER(SELLIST(811.9,"IEN",IDX))
if IDX'>0
QUIT
Begin DoDot:2
+8 SET DIEN=+$GET(SELLIST(811.9,IDX))
IF DIEN=0
QUIT
+9 IF 'NOTINLM
WRITE !!,"Checking reminder definition "_$PIECE(^PXD(811.9,DIEN,0),U,1)
+10 KILL OUTPUT
+11 SET OK=$$DEF^PXRMICHK(DIEN,.OUTPUT,$SELECT(NOTINLM=1:0,1:1))
+12 IF OK=0
SET FAIL=1
End DoDot:2
End DoDot:1
IF FAIL
KILL ^TMP(TMPIND,$JOB)
QUIT 0
+13 IF NOTINLM
QUIT $SELECT(FAIL=1:0,1:1)
+14 IF FAIL=0
WRITE !!,"No fatal reminder definition problems were found, packing will continue."
+15 IF FAIL=1
WRITE !!,"Cannot create the packed file, please correct the above fatal error(s)."
+16 HANG 3
+17 QUIT 1
+18 ;
DIALOG(SELLIST,TMPIND,NOTINLM) ;Check reminder dialogs for errors
+1 NEW CNT,DIEN,FAIL,IDX,OUTPUT,FAILTYPE
+2 SET FAIL=0
+3 KILL OUTPUT
+4 IF $DATA(SELLIST(801.41))
Begin DoDot:1
+5 IF 'NOTINLM
WRITE !!,"Checking reminder dialog(s) for errors."
+6 SET IDX=0
+7 ;Check individual reminder dialogs
+8 FOR
SET IDX=$ORDER(SELLIST(801.41,"IEN",IDX))
if IDX'>0
QUIT
Begin DoDot:2
+9 SET DIEN=+$GET(SELLIST(801.41,IDX))
IF DIEN=0
QUIT
+10 IF FAIL=0
WRITE "."
+11 SET FAILTYPE=$$RETARR^PXRMDLRP(DIEN,.OUTPUT)
if '$DATA(OUTPUT)
QUIT
+12 IF FAILTYPE="F"
SET FAIL="F"
+13 IF FAILTYPE="W"
IF FAIL=0
SET FAIL="W"
+14 IF 'NOTINLM
Begin DoDot:3
+15 WRITE !!,$SELECT(FAILTYPE="W":"**WARNING**",FAILTYPE="F":"**FATAL ERROR**",1:"")
+16 SET CNT=0
FOR
SET CNT=$ORDER(OUTPUT(CNT))
if CNT'>0
QUIT
WRITE !,OUTPUT(CNT)
End DoDot:3
+17 KILL OUTPUT
End DoDot:2
+18 ;
End DoDot:1
IF FAIL="F"
KILL ^TMP(TMPIND,$JOB)
QUIT 0
+19 IF NOTINLM
QUIT $SELECT(FAIL=1:0,1:1)
+20 IF FAIL=0
WRITE !!,"No fatal dialog problems were found, packing will continue."
+21 IF FAIL="F"
WRITE !!,"Cannot create the packed file, please correct the above fatal error(s)."
+22 HANG 3
+23 QUIT 1
+24 ;
GETFLST(FILELST) ;
+1 SET FILELST(1)=811.4_U_$$GET1^DID(811.4,"","","NAME")
+2 SET FILELST(2)=810.8_U_$$GET1^DID(810.8,"","","NAME")
+3 SET FILELST(3)=811.9_U_$$GET1^DID(811.9,"","","NAME")
+4 SET FILELST(4)=801.41_U_$$GET1^DID(801.41,"","","NAME")
+5 SET FILELST(5)=810.7_U_$$GET1^DID(810.7,"","","NAME")
+6 SET FILELST(6)=810.2_U_$$GET1^DID(810.2,"","","NAME")
+7 SET FILELST(7)=810.4_U_$$GET1^DID(810.4,"","","NAME")
+8 SET FILELST(8)=810.9_U_$$GET1^DID(810.9,"","","NAME")
+9 SET FILELST(9)=811.3_U_$$GET1^DID(811.3,"","","NAME")
+10 SET FILELST(10)=811.6_U_$$GET1^DID(811.6,"","","NAME")
+11 SET FILELST(11)=811.2_U_$$GET1^DID(811.2,"","","NAME")
+12 SET FILELST(12)=811.5_U_$$GET1^DID(811.5,"","","NAME")
+13 SET FILELST(13)=801_U_$$GET1^DID(801,"","","NAME")
+14 SET FILELST(14)=801.1_U_$$GET1^DID(801.1,"","","NAME")
+15 SET FILELST(0)=14
+16 QUIT
+17 ;
+18 ;==========================
+1 ;information.
+2 ;Save the source information and the passed in description text.
+3 DO PUTSRC^PXRMEXPD("",EFNAME,TMPIND)
+4 DO BLDDESC(TMPIND,.DESCTXT)
+5 ;Add the packing attributes.
+6 DO PATTR^PXRMEXPD(TMPIND)
+7 QUIT
+8 ;
TERM(SELLIST,TMPIND,NOTINLM) ;Check reminder terms for errors.
+1 NEW DIEN,FAIL,IDX,OK,OUTPUT
+2 SET FAIL=0
+3 IF $DATA(SELLIST(811.5))
Begin DoDot:1
+4 ;Check each reminder term.
+5 IF 'NOTINLM
WRITE !!,"Checking reminder term(s) for errors."
+6 SET IDX=0
+7 FOR
SET IDX=$ORDER(SELLIST(811.5,"IEN",IDX))
if IDX'>0
QUIT
Begin DoDot:2
+8 SET DIEN=+$GET(SELLIST(811.5,IDX))
IF DIEN=0
QUIT
+9 IF 'NOTINLM
WRITE !!,"Checking reminder term "_$PIECE(^PXRMD(811.5,DIEN,0),U,1)
+10 KILL OUTPUT
+11 SET OK=$$TERM^PXRMICK1(DIEN,.OUTPUT,$SELECT(NOTINLM=1:0,1:1))
+12 IF OK=0
SET FAIL=1
End DoDot:2
End DoDot:1
IF FAIL
KILL ^TMP(TMPIND,$JOB)
QUIT 0
+13 IF NOTINLM
QUIT $SELECT(FAIL=1:0,1:1)
+14 IF FAIL=0
WRITE !!,"No fatal reminder term problems were found, packing will continue."
+15 IF FAIL=1
WRITE !!,"Cannot create the packed file, please correct the above fatal error(s)."
+16 HANG 3
+17 QUIT $SELECT(FAIL=1:0,1:1)
+18 ;