[613] | 1 | TIUADCL1 ; SLC/AJB - UNK Addenda Cleanup ; 10/01/04
|
---|
| 2 | ;;1.0;TEXT INTEGRATION UTILITIES;**173**;Jun 20, 1997
|
---|
| 3 | ;
|
---|
| 4 | ; Cleanup Utility for OPERATION REPORT addenda.
|
---|
| 5 | ; Finds parentless/unknown addenda and attaches to user
|
---|
| 6 | ; selected parent.
|
---|
| 7 | ;
|
---|
| 8 | Q
|
---|
| 9 | EN ; main entry point for TIU UNK ADDENDA CLEANUP
|
---|
| 10 | N DTR2,TIUADD,TIULVL,TIUQUIT
|
---|
| 11 | D SAVEADD
|
---|
| 12 | D DTRANGE^TIUADCL(.DTR2) Q:$D(TIUQUIT)
|
---|
| 13 | D EN^VALM("TIU UNK ADDENDA ATTACH")
|
---|
| 14 | K ^TMP("VALMAR",$J,TIULVL)
|
---|
| 15 | Q
|
---|
| 16 | EXIT ;
|
---|
| 17 | D XQORM
|
---|
| 18 | Q
|
---|
| 19 | HDR ; sets header
|
---|
| 20 | N HDR
|
---|
| 21 | S HDR="OPERATION REPORTS from "_$$FMTE^XLFDT(DTR2("BEGDT"),"D")_" to "_$$FMTE^XLFDT(DTR2("ENDDT"),"D")
|
---|
| 22 | S VALMHDR(1)=$$SETSTR^VALM1(HDR,"",(IOM-$L(HDR))/2,$L(HDR))
|
---|
| 23 | D XQORM
|
---|
| 24 | Q
|
---|
| 25 | HELP ; help code
|
---|
| 26 | N DIR
|
---|
| 27 | I X="?" S DIR("A")="Enter RETURN to continue or '^' to exit",DIR(0)="E"
|
---|
| 28 | D FULL^VALM1
|
---|
| 29 | W !!,"The following actions are available:"
|
---|
| 30 | W !,"Browse a Document - View a selected document (if authorized)"
|
---|
| 31 | W !,"Change View - Modify search criteria"
|
---|
| 32 | W !,"Detailed Display - View detailed display of a document (if authorized)"
|
---|
| 33 | W !,"Attach to Parent - Attach the currently selected "
|
---|
| 34 | W $S($$MULTI^TIUADCL("TIUADD")>1:"addenda",1:"addendum")," to one OPERATION"
|
---|
| 35 | W !," REPORT",!
|
---|
| 36 | I $D(DIR("A")) D ^DIR
|
---|
| 37 | S VALMBCK="R"
|
---|
| 38 | Q
|
---|
| 39 | INIT ; finds unknown addenda & creates list
|
---|
| 40 | N OPREPORT,STRTDT,TIUDA,TIU
|
---|
| 41 | S TIULVL=VALMEVL,TIU("IOCUOFF")=$C(27)_"[?25l",TIU("IOCUON")=$C(27)_"[?25h"
|
---|
| 42 | W TIU("IOCUOFF")
|
---|
| 43 | W !!,"Searching for the documents."
|
---|
| 44 | S OPREPORT=$$CHKFILE^TIUADCL(8925.1,"OPERATION REPORT","I $P(^(0),U,4)=""DOC"""),TIUDA="",STRTDT=DTR2("BEGDT"),VALMCNT=0
|
---|
| 45 | F S STRTDT=$O(^TIU(8925,"F",STRTDT)) Q:STRTDT=""!(STRTDT>DTR2("ENDDT")) F S TIUDA=$O(^TIU(8925,"F",STRTDT,TIUDA)) Q:TIUDA="" I +$G(^TIU(8925,TIUDA,0))=OPREPORT D
|
---|
| 46 | . N DATA,DISPLAY,MSG
|
---|
| 47 | . I '$D(TIUADD($$GET1^DIQ(8925,TIUDA,.02))) Q
|
---|
| 48 | . ; D CANDO^TIUSRVA(.MSG,TIUDA,"MAKE ADDENDUM") I '+MSG Q
|
---|
| 49 | . S VALMCNT=VALMCNT+1 W:VALMCNT#3=0 "."
|
---|
| 50 | . S DISPLAY=$$SETSTR^VALM1(VALMCNT,"",1,4)
|
---|
| 51 | . S DISPLAY=$$SETSTR^VALM1($$PATIENT^TIU144($P($G(^TIU(8925,TIUDA,0)),U,2)),DISPLAY,6,38)
|
---|
| 52 | . S DISPLAY=$$SETSTR^VALM1(TIUDA,DISPLAY,40,50)
|
---|
| 53 | . S DISPLAY=$$SETSTR^VALM1($$FDATE^VALM1($$GET1^DIQ(8925,TIUDA,1201,"I")),DISPLAY,52,62)
|
---|
| 54 | . S DISPLAY=$$SETSTR^VALM1($$GET1^DIQ(8925,TIUDA,.05),DISPLAY,62,71)
|
---|
| 55 | . S DISPLAY=$$SETSTR^VALM1("#"_+$P($G(^TIU(8925,TIUDA,14)),U,5),DISPLAY,75,80)
|
---|
| 56 | . D SET^VALM10(VALMCNT,DISPLAY,TIUDA)
|
---|
| 57 | I VALMCNT=0 D
|
---|
| 58 | . D SET^VALM10(2,$$SETSTR^VALM1("No records found to satisfy search criteria.","",(IOM-$L("No records found to satisfy search criteria."))/2,$L("No records found to satisfy search criteria.")),0)
|
---|
| 59 | Q
|
---|
| 60 | XQORM ; default action for list manager
|
---|
| 61 | S XQORM("#")=$O(^ORD(101,"B","TIU UNK ADDENDA SELECT",0))_U_"1:"_VALMCNT
|
---|
| 62 | Q
|
---|
| 63 | ATTACH ;
|
---|
| 64 | N DISPLAY,LINE,PARENT
|
---|
| 65 | D FULL^VALM1 W @IOF
|
---|
| 66 | W "Attach the following UNKNOWN "_$S($$MULTI^TIUADCL("TIUADD")>1:"Addenda",1:"Addendum")_":",!!
|
---|
| 67 | W "TIU",!,"Doc No.",?9,"Patient",?40,"Entry DT/Time",?59,"Status",?71,"Parent",!
|
---|
| 68 | S LINE="",PARENT=$$ONEDOC^TIUADCL()
|
---|
| 69 | S $P(LINE,"-",80)="-" W LINE
|
---|
| 70 | S TIUADD="" F S TIUADD=$O(TIUADD(TIUADD)) Q:TIUADD=""!(+TIUADD'>0) D
|
---|
| 71 | . N TIUDA
|
---|
| 72 | . S TIUDA=TIUADD(TIUADD)
|
---|
| 73 | . S DISPLAY=$$SETSTR^VALM1(TIUDA,"",1,8)
|
---|
| 74 | . S DISPLAY=$$SETSTR^VALM1($$PATIENT^TIU144($P($G(^TIU(8925,TIUDA,0)),U,2)),DISPLAY,10,40)
|
---|
| 75 | . S DISPLAY=$$SETSTR^VALM1($$FDTTM^VALM1($$GET1^DIQ(8925,TIUDA,1201,"I")),DISPLAY,41,51)
|
---|
| 76 | . S DISPLAY=$$SETSTR^VALM1($$GET1^DIQ(8925,TIUDA,.05),DISPLAY,60,67)
|
---|
| 77 | . S DISPLAY=$$SETSTR^VALM1($S($$GET1^DIQ(8925,TIUDA,.06)="":"None",1:$$GET1^DIQ(8925,TIUDA,.06)),DISPLAY,72,80)
|
---|
| 78 | . W $E(DISPLAY,1,80)
|
---|
| 79 | W !!,"to the following "_$$GET1^DIQ(8925,PARENT,.01)_"?",!
|
---|
| 80 | S DISPLAY=$$SETSTR^VALM1(PARENT,"",1,8)
|
---|
| 81 | S DISPLAY=$$SETSTR^VALM1($$PATIENT^TIU144($P($G(^TIU(8925,PARENT,0)),U,2)),DISPLAY,10,40)
|
---|
| 82 | S DISPLAY=$$SETSTR^VALM1($$FDTTM^VALM1($$GET1^DIQ(8925,PARENT,1201,"I")),DISPLAY,41,51)
|
---|
| 83 | S DISPLAY=$$SETSTR^VALM1($$GET1^DIQ(8925,PARENT,.05),DISPLAY,60,67)
|
---|
| 84 | S DISPLAY=$$SETSTR^VALM1("#"_+$P($G(^TIU(8925,PARENT,14)),U,5),DISPLAY,72,80)
|
---|
| 85 | W !,"TIU",?71,"Surgical",!,"Doc No.",?9,"Patient",?40,"Entry DT/Time",?59,"Status",?71,"Case No.",!
|
---|
| 86 | W LINE,$E(DISPLAY,1,80),!
|
---|
| 87 | S VALMBCK="R"
|
---|
| 88 | I '$$READ^TIUU("Y","Do you wish to begin attaching","NO","Enter 'Y' or 'N'") W ! I $$READ^TIUU("EA","Press <RETURN> to continue") Q
|
---|
| 89 | S VALMBCK="Q"
|
---|
| 90 | S TIUADD="" F S TIUADD=$O(TIUADD(TIUADD)) Q:TIUADD=""!(+TIUADD'>0) D
|
---|
| 91 | . N TIUDA
|
---|
| 92 | . S TIUDA=TIUADD(TIUADD)
|
---|
| 93 | . W !!,"Attaching #",TIUDA," to #",PARENT," ... "
|
---|
| 94 | . D ATNOW(PARENT,TIUDA)
|
---|
| 95 | W ! I $$READ^TIUU("EA","Press <RETURN> to continue")
|
---|
| 96 | Q
|
---|
| 97 | ATNOW(PARENT,ADDENDUM) ;
|
---|
| 98 | N FDA,FDARR,IENS,FLAGS,TIUMSG,TIUA0,TIUA12,TIUP0,TIUP12,TIUWARN
|
---|
| 99 | S TIUP0=$G(^TIU(8925,PARENT,0)),TIUA0=$G(^TIU(8925,ADDENDUM,0))
|
---|
| 100 | S TIUP12=$G(^TIU(8925,PARENT,12)),TIUA12=$G(^TIU(8925,ADDENDUM,12))
|
---|
| 101 | I $P(TIUP0,U,2)'=$P(TIUA0,U,2) W !,"ERROR: Parent and Addendum have different patients!" S TIUWARN=1
|
---|
| 102 | I $P(TIUA12,U)'>$P(TIUP12,U) W !,"ERROR: The addendum's ENTRY DATE/TIME precedes the parent's ENTRY DATE/TIME!" S TIUWARN=1
|
---|
| 103 | I +$G(TIUWARN) Q
|
---|
| 104 | S IENS=""""_ADDENDUM_",""",FDARR="FDA(8925,"_IENS_")",FLAGS="K"
|
---|
| 105 | S @FDARR@(.06)=PARENT
|
---|
| 106 | S @FDARR@(1405)=$$GET1^DIQ(8925,PARENT,1405,"I")
|
---|
| 107 | D FILE^DIE(FLAGS,"FDA","TIUMSG")
|
---|
| 108 | I $D(TIUMSG) D Q
|
---|
| 109 | . N LINE S LINE=""
|
---|
| 110 | . F S LINE=$O(TIUMSG("DIERR",1,"TEXT",LINE)) Q:LINE="" W !,TIUMSG("DIERR",1,"TEXT",LINE)
|
---|
| 111 | W ?29," success!"
|
---|
| 112 | Q
|
---|
| 113 | SAVEADD ;
|
---|
| 114 | S TIUADD=0
|
---|
| 115 | F S TIUADD=$O(TIUDOCS(TIUADD)) Q:TIUADD="" S TIUADD(TIUADD)=TIUDOCS(TIUADD),TIUADD($$GET1^DIQ(8925,TIUADD(TIUADD),.02))=""
|
---|
| 116 | Q
|
---|
| 117 | PREP ;
|
---|
| 118 | N DA,DIC,DIK,X,Y
|
---|
| 119 | S DIC="^SD(409.61,",DIC(0)="X"
|
---|
| 120 | F X="TIU UNK ADDENDA ATTACH","TIU UNK ADDENDA CLEANUP" D
|
---|
| 121 | . D ^DIC I +Y D
|
---|
| 122 | .. S DA=+Y,DIK=DIC D ^DIK
|
---|
| 123 | Q
|
---|