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

APCDVM2.m

Go to the documentation of this file.
  1. APCDVM2 ; IHS/CMI/LAB - VISIT MERGE ;
  1. ;;2.0;IHS PCC SUITE;**8**;MAY 14, 2009;Build 2
  1. ;
  1. ; Given the 'from' visit DFN in APCDVMF and the 'to' visit DFN in
  1. ; APCDVMT merge two visits. Variables passed are left alone. If
  1. ; an error is encountered APCDVMQF will exist upon exit. VISITs must
  1. ; be for the same patient.
  1. ;
  1. K APCDVMQF
  1. S U="^"
  1. I '$D(APCDVMF)!('$D(APCDVMT)) S APCDVMQF=21 Q
  1. I 'APCDVMF!('APCDVMT)!(APCDVMF=APCDVMT) S APCDVMQF=22 Q
  1. I '$D(^AUPNVSIT(APCDVMF,0)) S APCDVMQF=23 Q
  1. I '$D(^AUPNVSIT(APCDVMT,0)) S APCDVMQF=24 Q
  1. I $P(^AUPNVSIT(APCDVMF,0),U,5)'=$P(^AUPNVSIT(APCDVMT,0),U,5) S APCDVMQF=25 Q
  1. S APCDVMUX=1 ;for trigger cross references
  1. S APCDVMFL=9000010 F APCDVML=0:0 S APCDVMFL=$O(^DIC(APCDVMFL)) Q:APCDVMFL>9000010.99!(APCDVMFL'=+APCDVMFL) D PROCESS
  1. S AUPNVSIT=APCDVMT D MOD^AUPNVSIT
  1. I $T(A42^BTSEVENT)]"" S APCDHLER=$$A42^BTSEVENT(APCDVMF,APCDVMT) K APCDHLER ;IHS/Daou/CJS - for HL7
  1. K APCDVMFL,APCDVMG,APCDVML,APCDVMN,APCDVMX,APCDVMUX
  1. Q
  1. ;
  1. PROCESS ; PROCESS ONE V FILE
  1. S APCDVMG=^DIC(APCDVMFL,0,"GL")
  1. Q:'$D(@(APCDVMG_"""AD"","_APCDVMF_")"))
  1. W:'$D(ZTQUEUED) !,APCDVMFL
  1. S APCDVMN="" F APCDVML=0:0 S APCDVMN=$O(@(APCDVMG_"""AD"","_APCDVMF_",APCDVMN)")) Q:APCDVMN="" D PROCESS2
  1. Q
  1. PROCESS2 ; PROCESS ONE V FILE ENTRY
  1. W:'$D(ZTQUEUED) "."
  1. S DIK=APCDVMG,DA=APCDVMN,X=2 D DD^DIK,1^DIK1 K DIK,DA
  1. S $P(@(APCDVMG_APCDVMN_",0)"),U,3)=APCDVMT
  1. S DIK=APCDVMG,DA=APCDVMN,X=1 D DD^DIK,1^DIK1 K DIK,DA
  1. ;S APCDVMX=0 F APCDVML=0:0 S APCDVMX=$O(^DD(APCDVMFL,.03,1,APCDVMX)) Q:APCDVMX'=+APCDVMX S DA=APCDVMN,X=APCDVMF X ^DD(APCDVMFL,.03,1,APCDVMX,2)
  1. ;S $P(@(APCDVMG_APCDVMN_",0)"),U,3)=APCDVMT
  1. ;S APCDVMX=0 F APCDVML=0:0 S APCDVMX=$O(^DD(APCDVMFL,.03,1,APCDVMX)) Q:APCDVMX'=+APCDVMX S DA=APCDVMN,X=APCDVMT X ^DD(APCDVMFL,.03,1,APCDVMX,1)
  1. Q