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

SCCVCST2.m

Go to the documentation of this file.
  1. SCCVCST2 ; ALB/TMP - SCHED VSTS RE-CONVERSION - DELETE ENCOUNTER; 25-NOV-97
  1. ;;5.3;Scheduling;**211**;Aug 13, 1993
  1. ;
  1. DELE(SDOE) ;Delete Encounter on re-convert
  1. ; Input -- SDOE Outpatient Encounter file IEN
  1. ;
  1. N DA,DFN,DE,DIE,DR,SDCL,SDDA,SDOE0,SDOEP,SDORG,SDT,SDVSAV,SDCNV
  1. ;
  1. D SET(SDOE,.SDOE0,.SDT,.DFN,.SDCL,.SDORG,.SDDA,.SDCNV)
  1. ;
  1. ; Only delete encounter if created originally from conversion
  1. G:'SDCNV DELEQ
  1. ;
  1. D DELPTR(DFN,SDT,SDDA,SDORG,SDOE)
  1. ;
  1. ; -- delete child data for appts and dispos
  1. I "^1^3^"[("^"_SDORG_"^") D CHLD(SDOE)
  1. ;
  1. D OE(SDOE)
  1. ;
  1. DELEQ Q
  1. ;
  1. CHLD(SDOEP) ;Delete child encounters
  1. ; SDOEP := Parent encounter ien
  1. ;
  1. N DFN,SDCL,SDDA,SDOE0,SDOEC,SDORG,SDT,SDCNV
  1. S SDOEC=0
  1. F S SDOEC=$O(^SCE("APAR",SDOEP,SDOEC)) Q:'SDOEC D
  1. . D SET(SDOEC,.SDOE0,.SDT,.DFN,.SDCL,.SDORG,.SDDA,.SDCNV)
  1. . Q:'SDCNV ;Only delete encounter if created by the conversion
  1. . D DELPTR(DFN,SDT,SDDA,SDORG,SDOEC)
  1. . D OE(SDOEC)
  1. Q
  1. ;
  1. SET(SDOE,SDOE0,SDT,DFN,SDCL,SDORG,SDDA,SDCNV) ;Set Variables
  1. ;
  1. S SDOE0=$G(^SCE(+SDOE,0)),SDT=+SDOE0,DFN=+$P(SDOE0,"^",2),SDCL=+$P(SDOE0,"^",4),SDORG=+$P(SDOE0,"^",8),SDDA=$P(SDOE0,"^",9)
  1. S SDCNV=$G(^SCE(+SDOE,"CNV"))
  1. Q
  1. ;
  1. DELPTR(DFN,SDT,SDDA,SDORG,SDOE) ; -- delete pointers to encounters in scheduling files
  1. ; DFN == patient ien
  1. ; SDT == encounter date/time
  1. ; SDDA == extended reference from encounter 9th piece
  1. ; SDORG == flag for origin of encounter
  1. ; SDOE == encounter ien
  1. ;
  1. N DA,DIE,DR,SDI,SDCS,SDVIEN
  1. IF SDORG=1,$P($G(^DPT(DFN,"S",SDT,0)),U,20)=SDOE D Q
  1. .S DA(1)=DFN,DA=SDT,DIE="^DPT("_DFN_",""S"",",DR="21///@" D ^DIE
  1. ;
  1. S SDVIEN=$$SDVIEN^SCCVU(DFN,SDT)
  1. IF SDORG=2 F SDI=1:1:$L(SDDA,":") D Q
  1. . S SDCS=+$P(SDDA,":",SDI)
  1. . IF SDCS,$P($G(^SDV(SDVIEN,"CS",SDCS,0)),U,8)=SDOE D
  1. . . S DA(1)=SDT,DA=SDCS,DIE="^SDV("_SDVIEN_",""CS"",",DR="8///@" D ^DIE
  1. ;
  1. IF SDORG=3,$P($G(^DPT(DFN,"DIS",+SDDA,0)),U,18)=SDOE D Q
  1. .S DA(1)=DFN,DA=+SDDA,DIE="^DPT("_DFN_",""DIS"",",DR="18///@" D ^DIE
  1. ;
  1. Q
  1. ;
  1. OE(SDOE) ;Delete Outpatient Encounter
  1. ; SDOE := Encounter ien
  1. ;
  1. N DA,DIK
  1. S DA=SDOE,DIK="^SCE(" D ^DIK
  1. Q
  1. ;
  1. DEL(SDOE,SDFL) ;Delete Classification - NOT NEEDED - no data existed for the
  1. ; periods allowed to be converted
  1. ; SDOE := Encounter ien
  1. ; SDFL := Internal file # of entry to delete
  1. ;
  1. Q
  1. N DA,DIK,SDI
  1. S DIK="^SDD("_SDFL_",",SDI=0
  1. F S SDI=$O(^SDD(SDFL,"AO",SDOE,SDI)) Q:'SDI S DA=+$O(^(SDI,0)) D ^DIK
  1. Q
  1. ;
  1. CO(SDOE) ;Delete Classification - NOT NEEDED - no data existed for the
  1. ; periods allowed to be converted
  1. ; SDOE := Encounter ien
  1. ;
  1. G COQ
  1. N DA,DIK,SDFL,SDI
  1. I $P($G(^SCE(SDOE,0)),"^",6) G COQ
  1. I $O(^SDD(409.42,"AO",SDOE,0))>0 D DEL(SDOE,409.42)
  1. COQ Q
  1. ;