[613] | 1 | SDPPADD1 ;ALB/CAW - Patient Profile - Add/Edits ; 10/26/99 1:55pm
|
---|
| 2 | ;;5.3;Scheduling;**2,6,140,132,180**;Aug 13, 1993
|
---|
| 3 | ;
|
---|
| 4 | EN1 ; Set up variables
|
---|
| 5 | N SDPPBEG,SDPPEND,SDPPQ
|
---|
| 6 | S SDPPBEG=$S($G(SDBEG):SDBEG,$G(SDBD):SDBD,1:2850101)
|
---|
| 7 | S SDPPEND=$S($G(SDEND):SDEND,1:SDED)
|
---|
| 8 | D OPEN^SDQ(.SDPPQ)
|
---|
| 9 | D INDEX^SDQ(.SDPPQ,"PATIENT/DATE","SET")
|
---|
| 10 | D PAT^SDQ(.SDPPQ,DFN,"SET")
|
---|
| 11 | D DATE^SDQ(.SDPPQ,SDPPBEG,SDPPEND,"SET")
|
---|
| 12 | D SCANCB^SDQ(.SDPPQ,"D CB^SDPPADD1(Y,Y0,.SDSTOP)","SET")
|
---|
| 13 | D ACTIVE^SDQ(.SDPPQ,"TRUE","SET")
|
---|
| 14 | D SCAN^SDQ(.SDPPQ,"BACKWARD")
|
---|
| 15 | D CLOSE^SDQ(.SDPPQ)
|
---|
| 16 | Q
|
---|
| 17 | ;
|
---|
| 18 | CB(SDOE,SDOE0,SDSTOP) ; -- callback
|
---|
| 19 | IF $P(SDOE0,U,8)'=2 G CBQ ; -- use only if stop addition type
|
---|
| 20 | ;
|
---|
| 21 | IF $D(SDY),$P(SDOE0,U,3)'=SDY G CBQ ; -- check for specific stop code
|
---|
| 22 | ;
|
---|
| 23 | N SDPPCPT,SDVCPT,SDVCPT0,SDDT,SDIV,SDDV,SDFST,SDSEC,X,SDOPE
|
---|
| 24 | S SDFST=16,SDSEC=58
|
---|
| 25 | D GETCPT^SDOE(SDOE,"SDPPCPT")
|
---|
| 26 | ;
|
---|
| 27 | ; Date/Time and Last Edited By
|
---|
| 28 | S X="",X=$$SETSTR^VALM1("Date/Time:",X,5,10)
|
---|
| 29 | S X=$$SETSTR^VALM1($TR($$FMTE^XLFDT(+SDOE0,"5F")," ","0"),X,SDFST,24)
|
---|
| 30 | S X=$$SETSTR^VALM1("Last Edited By:",X,42,15)
|
---|
| 31 | S X=$$SETSTR^VALM1($P($G(^VA(200,+$P(SDOE0,U,99),0)),U),X,SDSEC,23)
|
---|
| 32 | D SET(X)
|
---|
| 33 | ;
|
---|
| 34 | ; Stop Code and Appt. Type
|
---|
| 35 | S X="",X=$$SETSTR^VALM1("Stop Code:",X,5,10)
|
---|
| 36 | S X=$$SETSTR^VALM1($P($G(^DIC(40.7,+$P(SDOE0,U,3),0)),U),X,SDFST,24)
|
---|
| 37 | S X=$$SETSTR^VALM1("Appt. Type:",X,46,11)
|
---|
| 38 | S X=$$SETSTR^VALM1($P($G(^SD(409.1,+$P(SDOE0,U,10),0)),U),X,SDSEC,23)
|
---|
| 39 | D SET(X)
|
---|
| 40 | ;
|
---|
| 41 | ; Associated Clinic and Eligibility for Visit
|
---|
| 42 | S X="",X=$$SETSTR^VALM1("Assoc. Clinic:",X,1,14)
|
---|
| 43 | S X=$$SETSTR^VALM1($P($G(^SC(+$P(SDOE0,U,4),0)),U),X,SDFST,24)
|
---|
| 44 | S X=$$SETSTR^VALM1("Elig. for Visit:",X,41,16)
|
---|
| 45 | S X=$$SETSTR^VALM1($P($G(^DIC(8,+$P(SDOE0,U,13),0)),U),X,SDSEC,23)
|
---|
| 46 | D SET(X)
|
---|
| 47 | ;
|
---|
| 48 | ;*** Retrieve Procedures (CPT codes)***
|
---|
| 49 | I $D(SDPPCPT) D
|
---|
| 50 | . N CPTINFO,MODINFO,MODCODE,MODPTR,PTR
|
---|
| 51 | . S X=""
|
---|
| 52 | .; S X=$$SETSTR^VALM1("Procedure(s): ",X,2,14)
|
---|
| 53 | . S SDVCPT=0
|
---|
| 54 | . F S SDVCPT=$O(SDPPCPT(SDVCPT)) Q:'SDVCPT D
|
---|
| 55 | . . S X=$$SETSTR^VALM1("Procedure(s): ",X,2,14)
|
---|
| 56 | . .; S SDVCPT0=SDPPCPT(SDVCPT)
|
---|
| 57 | . .; S:X="" X=$$SETSTR^VALM1(" ",X,2,14)
|
---|
| 58 | . .; S X=X_$P($G(^ICPT(+SDVCPT0,0)),U)_" x "_+$P(SDVCPT0,U,16)
|
---|
| 59 | . . S CPTINFO=$$CPT^ICPTCOD(+$G(SDPPCPT(SDVCPT)),,1)
|
---|
| 60 | . . Q:CPTINFO'>0
|
---|
| 61 | . . S X=X_$P(CPTINFO,"^",2)_" x "_$P($G(SDPPCPT(SDVCPT)),"^",16)_" "_$P(CPTINFO,"^",3)
|
---|
| 62 | . . S:X="" X=$$SETSTR^VALM1(" ",X,2,14)
|
---|
| 63 | . . ;S:$O(SDPPCPT(SDVCPT)) X=X_", "
|
---|
| 64 | . .; IF $L(X)>(IOM-10) D SET(X) S X=""
|
---|
| 65 | . . D SET(X) S X=""
|
---|
| 66 | . .;
|
---|
| 67 | . .;Retrieve Procedure (CPT) Codes and associated Modifiers
|
---|
| 68 | . . S PTR=0
|
---|
| 69 | . . F S PTR=$O(SDPPCPT(SDVCPT,1,PTR)) Q:'PTR D
|
---|
| 70 | . . . S MODPTR=$G(SDPPCPT(SDVCPT,1,PTR,0))
|
---|
| 71 | . . . S MODINFO=$$MOD^ICPTMOD(MODPTR,"I",,1)
|
---|
| 72 | . . . Q:MODINFO'>0
|
---|
| 73 | . . . S MODTEXT=$P(MODINFO,"^",3)
|
---|
| 74 | . . . S MODCODE="-"_$P(MODINFO,"^",2)
|
---|
| 75 | . . . S X=$$SETSTR^VALM1(MODCODE,X,18,21)
|
---|
| 76 | . . . S X=$$SETSTR^VALM1(MODTEXT,X,27,45)
|
---|
| 77 | . . . D SET(X) S X=""
|
---|
| 78 | . D:X]"" SET(X)
|
---|
| 79 | ;
|
---|
| 80 | S X=""
|
---|
| 81 | S SDOPE=$S($P(SDOE0,U,6):$P(SDOE0,U,6),1:SDOE)
|
---|
| 82 | S SDSTATUS=$P($G(^SD(409.63,+$P($G(^SCE(SDOPE,0)),U,12),0)),U)
|
---|
| 83 | S X=$$SETSTR^VALM1("Status:",X,7,13)
|
---|
| 84 | S X=$$SETSTR^VALM1(SDSTATUS,X,SDFST,24)
|
---|
| 85 | ;
|
---|
| 86 | S SDIV=+$P(SDOE0,U,11)
|
---|
| 87 | I SDIV D
|
---|
| 88 | . S SDDV=$P($G(^DG(40.8,SDIV,0)),U)
|
---|
| 89 | . S X=$$SETSTR^VALM1("Division:",X,48,15)
|
---|
| 90 | . S X=$$SETSTR^VALM1(SDDV,X,SDSEC,23)
|
---|
| 91 | D:X'="" SET(X)
|
---|
| 92 | D SET("")
|
---|
| 93 | CBQ Q
|
---|
| 94 | ;
|
---|
| 95 | SET(X) ; Set in ^TMP global for display
|
---|
| 96 | ;
|
---|
| 97 | S SDLN=SDLN+1,^TMP("SDPPALL",$J,SDLN,0)=X
|
---|
| 98 | Q
|
---|