Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: SCCVEDI3

SCCVEDI3.m

Go to the documentation of this file.
  1. SCCVEDI3 ;ALB/RMO,TMP - Disposition Conversion cont.; [ 04/05/95 8:12 AM ]
  1. ;;5.3;Scheduling;**211**;Aug 13, 1993
  1. ;
  1. SET(SCCVEVT,SCLOG,DFN,SCOE,SCCV) ;Set variables
  1. ; Input -- SCCVEVT Conversion event
  1. ; SCLOG Scheduling conversion log IEN
  1. ; DFN Patient IEN
  1. ; Output -- SCOE Outpatient encounter IEN
  1. ; SCCV Conversion array:
  1. ; SCCV("EVT") Conversion event
  1. ; ("LOG") Scheduling conversion log IEN
  1. ; ("NEW") Outpatient encounter
  1. ; created by conversion flag
  1. ; 0 = no new encounter or visit
  1. ; 1 = new encounter and visit
  1. ; 2 = new visit only
  1. ; ("OE",0) Outpatient encounter 0th node
  1. ; ("DISP",0) Disposition log-in date/time 0th node
  1. ; ("ERR") Code for specific error, if any
  1. ; ("VST") Visit file IEN
  1. N SCOE0
  1. S SCCV("EVT")=SCCVEVT
  1. S SCCV("LOG")=+SCLOG,SCCV("ORG")=3
  1. S SCCV("DISP",0)=$G(^DPT(DFN,"DIS",9999999-SCDTM,0))
  1. I $D(SCCVDIS) D ;Find default disp. clinic for division
  1. . S SCCV("LOC")=+$G(SCCVDIS(+$P(SCCV("DISP",0),U,4)))
  1. . I 'SCCV("LOC"),$G(SCCVDIS(0)) S SCCV("LOC")=SCCVDIS(0)
  1. S SCOE=+$P(SCCV("DISP",0),U,18),SCOE0=$G(^SCE(SCOE,0))
  1. ;
  1. ; On re-convert, delete previously converted data
  1. I SCCVEVT=2 D
  1. . ; only delete for reconvert if we created the encounter or completed
  1. . ; the conversion by adding the visit
  1. . Q:'$$CCREATE^SCCVU(SCOE)
  1. . ;
  1. . D RECNVT^SCCVEAP3(SCOE,SCOE0,.SCCONS)
  1. . S SCOE0=$G(^SCE(SCOE,0)) S:SCOE0="" SCOE=0
  1. ;
  1. S SCCV("NEW")=$S('SCOE:1,'$P(SCOE0,U,5):2,1:0)
  1. ;
  1. I 'SCCV("NEW") G SETQ ;Already has enctr and visit
  1. ;
  1. ; If estimating, increment total number of encounters that would be
  1. ; created by the conversion
  1. I 'SCCVEVT D INCRTOT^SCCVEGU1(.SCTOT,SCCV("NEW")+6,1) D EN^SCCVZZ("DIS-"_(SCCV("NEW")+6),SCOE,SCDTM)
  1. ;
  1. G:'SCCVEVT SETQ ;Estimate exits here
  1. ;
  1. I 'SCOE D ;Needs both encounter and visit
  1. . N SCCVT
  1. . D SETSCCVT^SCCVEAP2(.SCCVT,.SCCONS)
  1. . S SCOE=$$GETDISP^SDVSIT2(DFN,SCDTM)
  1. . S:SCOE SCTOT(1.02)=$G(SCTOT(1.02))+1
  1. . ;Check if child add/edits were auto-added (no children should be auto-created)
  1. . I SCOE,$O(^SCE("APAR",SCOE,0)) D
  1. .. N SCOEC,SCOE00
  1. .. 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
  1. ... N SCCV
  1. ... S SCCV("NEW")=1
  1. ... D ENC^SCCVEDI1(SCOEC,.SCCV)
  1. ;
  1. S SCCV("OE")=SCOE
  1. S SCCV("OE",0)=$G(^SCE(SCOE,0))
  1. S SCCV("VST")=$P(SCCV("OE",0),U,5)
  1. S SCCV("REF")=9999999-SCDTM
  1. ;
  1. I 'SCCV("VST"),SCCV("NEW")'=1 D
  1. . S SCCV("VST")=$$VISIT^SCCVEAP2(SCDTM,.SCCV) ; create visit only
  1. ;
  1. I SCCVEVT,'$G(SCCV("VST")),'$P(SCCV("OE",0),U,4) S SCCV("ERR")=8
  1. SETQ Q
  1. ;