| 1 | SCCVEDI3 ;ALB/RMO,TMP - Disposition Conversion cont.; [ 04/05/95  8:12 AM ]
 | 
|---|
| 2 |  ;;5.3;Scheduling;**211**;Aug 13, 1993
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | SET(SCCVEVT,SCLOG,DFN,SCOE,SCCV) ;Set variables
 | 
|---|
| 5 |  ; Input  -- SCCVEVT  Conversion event
 | 
|---|
| 6 |  ;           SCLOG    Scheduling conversion log IEN
 | 
|---|
| 7 |  ;           DFN      Patient IEN
 | 
|---|
| 8 |  ; Output -- SCOE     Outpatient encounter IEN
 | 
|---|
| 9 |  ;           SCCV     Conversion array:
 | 
|---|
| 10 |  ;                    SCCV("EVT")       Conversion event
 | 
|---|
| 11 |  ;                        ("LOG")       Scheduling conversion log IEN
 | 
|---|
| 12 |  ;                        ("NEW")       Outpatient encounter
 | 
|---|
| 13 |  ;                                       created by conversion flag
 | 
|---|
| 14 |  ;                                       0 = no new encounter or visit
 | 
|---|
| 15 |  ;                                       1 = new encounter and visit
 | 
|---|
| 16 |  ;                                       2 = new visit only
 | 
|---|
| 17 |  ;                        ("OE",0)      Outpatient encounter 0th node
 | 
|---|
| 18 |  ;                        ("DISP",0)    Disposition log-in date/time 0th node
 | 
|---|
| 19 |  ;                        ("ERR")       Code for specific error, if any
 | 
|---|
| 20 |  ;                        ("VST")       Visit file IEN
 | 
|---|
| 21 |  N SCOE0
 | 
|---|
| 22 |  S SCCV("EVT")=SCCVEVT
 | 
|---|
| 23 |  S SCCV("LOG")=+SCLOG,SCCV("ORG")=3
 | 
|---|
| 24 |  S SCCV("DISP",0)=$G(^DPT(DFN,"DIS",9999999-SCDTM,0))
 | 
|---|
| 25 |  I $D(SCCVDIS) D  ;Find default disp. clinic for division
 | 
|---|
| 26 |  . S SCCV("LOC")=+$G(SCCVDIS(+$P(SCCV("DISP",0),U,4)))
 | 
|---|
| 27 |  . I 'SCCV("LOC"),$G(SCCVDIS(0)) S SCCV("LOC")=SCCVDIS(0)
 | 
|---|
| 28 |  S SCOE=+$P(SCCV("DISP",0),U,18),SCOE0=$G(^SCE(SCOE,0))
 | 
|---|
| 29 |  ;
 | 
|---|
| 30 |  ; On re-convert, delete previously converted data
 | 
|---|
| 31 |  I SCCVEVT=2 D
 | 
|---|
| 32 |  . ; only delete for reconvert if we created the encounter or completed
 | 
|---|
| 33 |  . ;   the conversion by adding the visit
 | 
|---|
| 34 |  . Q:'$$CCREATE^SCCVU(SCOE)
 | 
|---|
| 35 |  . ;
 | 
|---|
| 36 |  . D RECNVT^SCCVEAP3(SCOE,SCOE0,.SCCONS)
 | 
|---|
| 37 |  . S SCOE0=$G(^SCE(SCOE,0)) S:SCOE0="" SCOE=0
 | 
|---|
| 38 |  ;
 | 
|---|
| 39 |  S SCCV("NEW")=$S('SCOE:1,'$P(SCOE0,U,5):2,1:0)
 | 
|---|
| 40 |  ;
 | 
|---|
| 41 |  I 'SCCV("NEW") G SETQ ;Already has enctr and visit
 | 
|---|
| 42 |  ;
 | 
|---|
| 43 |  ; If estimating, increment total number of encounters that would be
 | 
|---|
| 44 |  ;  created by the conversion
 | 
|---|
| 45 |  I 'SCCVEVT D INCRTOT^SCCVEGU1(.SCTOT,SCCV("NEW")+6,1) D EN^SCCVZZ("DIS-"_(SCCV("NEW")+6),SCOE,SCDTM)
 | 
|---|
| 46 |  ;
 | 
|---|
| 47 |  G:'SCCVEVT SETQ ;Estimate exits here
 | 
|---|
| 48 |  ;
 | 
|---|
| 49 |  I 'SCOE D  ;Needs both encounter and visit
 | 
|---|
| 50 |  . N SCCVT
 | 
|---|
| 51 |  . D SETSCCVT^SCCVEAP2(.SCCVT,.SCCONS)
 | 
|---|
| 52 |  . S SCOE=$$GETDISP^SDVSIT2(DFN,SCDTM)
 | 
|---|
| 53 |  . S:SCOE SCTOT(1.02)=$G(SCTOT(1.02))+1
 | 
|---|
| 54 |  . ;Check if child add/edits were auto-added (no children should be auto-created)
 | 
|---|
| 55 |  . I SCOE,$O(^SCE("APAR",SCOE,0)) D
 | 
|---|
| 56 |  .. N SCOEC,SCOE00
 | 
|---|
| 57 |  .. S SCOEC=0 F  S SCOEC=$O(^SCE("APAR",SCOE,SCOEC)) Q:'SCOEC  S SCOE00=$G(^SCE(SCOEC,0)) I $P(SCOE00,U,8)=2 D
 | 
|---|
| 58 |  ... N SCCV
 | 
|---|
| 59 |  ... S SCCV("NEW")=1
 | 
|---|
| 60 |  ... D ENC^SCCVEDI1(SCOEC,.SCCV)
 | 
|---|
| 61 |  ;
 | 
|---|
| 62 |  S SCCV("OE")=SCOE
 | 
|---|
| 63 |  S SCCV("OE",0)=$G(^SCE(SCOE,0))
 | 
|---|
| 64 |  S SCCV("VST")=$P(SCCV("OE",0),U,5)
 | 
|---|
| 65 |  S SCCV("REF")=9999999-SCDTM
 | 
|---|
| 66 |  ;
 | 
|---|
| 67 |  I 'SCCV("VST"),SCCV("NEW")'=1 D
 | 
|---|
| 68 |  . S SCCV("VST")=$$VISIT^SCCVEAP2(SCDTM,.SCCV) ; create visit only
 | 
|---|
| 69 |  ;
 | 
|---|
| 70 |  I SCCVEVT,'$G(SCCV("VST")),'$P(SCCV("OE",0),U,4) S SCCV("ERR")=8
 | 
|---|
| 71 | SETQ Q
 | 
|---|
| 72 |  ;
 | 
|---|