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

APCDEL.m

Go to the documentation of this file.
  1. APCDEL ; IHS/CMI/LAB - NO DESCRIPTION PROVIDED 21-SEP-1996 ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;; ;
  1. START ;
  1. W:$D(IOF) @IOF
  1. F J=1:1:5 S X=$P($T(TEXT+J),";;",2) W !?80-$L(X)\2,X
  1. K X,J
  1. W !!
  1. S APCDPAT="" D GETPAT
  1. I APCDPAT="" W !!,"No PATIENT selected!" D EOJ Q
  1. D GETVISIT
  1. I APCDVSIT="" W !!,"No VISIT selected!" D EOJ Q
  1. D ^APCDEIN
  1. D EN,FULL^VALM1,EXIT K APCDPAT
  1. D EOJ
  1. Q
  1. GETPAT ; GET PATIENT
  1. W !
  1. S APCDPAT=""
  1. S DIC="^AUPNPAT(",DIC(0)="AEMQ" D ^DIC K DIC
  1. Q:Y<0
  1. S APCDPAT=+Y
  1. Q
  1. ;
  1. GETVISIT ;
  1. S APCDLOOK="",APCDVSIT=""
  1. K APCDVLK
  1. D ^APCDVLK
  1. I APCDLOOK S AUPNVSIT=APCDLOOK D MOD^AUPNVSIT
  1. S DIE="^AUPNPAT(",DR=".16///TODAY",DA=APCDPAT D ^DIE
  1. Q
  1. ;
  1. EN ;PEP -- main entry point for APCDELM PCC DATA ENTRY
  1. ;APCDPAT must = patient ien
  1. ;APCDVSIT must = visit ien
  1. ;caller must set APCDVSIT,APCDPAT
  1. ;caller must kill APCDVSIT,APCDPAT and must call
  1. ;D ^APCDEKL to clean up d/e variables
  1. Q:'$G(APCDPAT)
  1. Q:'$G(APCDVSIT)
  1. Q:'$D(^AUPNVSIT(APCDVSIT))
  1. Q:$P(^AUPNVSIT(APCDVSIT,0),U,11)
  1. Q:'$D(^DPT(APCDPAT))
  1. D ^APCDEIN
  1. D EN^VALM("APCD EL PCC DATA ENTRY")
  1. D CLEAR^VALM1
  1. K APCDDISP,APCDSEL,^TMP("APCDEL",$J),C,X,I,K,J,APCDHIGH,APCDCUT,APCDCSEL,APCDCNTL
  1. D ^XBFMK
  1. Q
  1. ;
  1. HDR ;EP -- header code
  1. S VALMHDR(2)="Patient Name: "_IORVON_$P(^DPT(APCDPAT,0),U)_IOINORM_" DOB: "_$$FTIME^VALM1($P(^DPT(APCDPAT,0),U,3))_" Sex: "_$P(^DPT(APCDPAT,0),U,2)
  1. S VALMHDR(2)=VALMHDR(2)_" HRN: "_$S($D(^AUPNPAT(APCDPAT,41,DUZ(2),0)):$P(^AUPNPAT(APCDPAT,41,DUZ(2),0),U,2),1:"????")
  1. I $G(APCDVSIT) S VALMHDR(3)="Visit Date: "_$$FMTE^XLFDT($P(^AUPNVSIT(APCDVSIT,0),U))_" Clinic: "_$$VAL^XBDIQ1(9000010,APCDVSIT,.08)
  1. Q
  1. ;
  1. INIT ;EP -- init variables and list array
  1. D GATHER ;gather up all problems
  1. S APCDOVRR="" ;for provider narrative lookup
  1. Q
  1. ;
  1. GATHER ;EP
  1. K APCDDISP,APCDSEL,APCDHIGH,^TMP("APCDEL",$J),APCDCUT
  1. S APCDHIGH=0,X=0 F S X=$O(^APCDTKW("AD",X)) Q:X'=+X S Y=$O(^APCDTKW("AD",X,"")) S APCDHIGH=APCDHIGH+1,APCDSEL(APCDHIGH)=Y
  1. ;S APCDCUT=((APCDHIGH/3)+1)\1
  1. S APCDCUT=APCDHIGH/3 S:APCDCUT'=(APCDCUT\1) APCDCUT=(APCDCUT\1)+1
  1. S (C,I)=0,J=1,K=1 F S I=$O(APCDSEL(I)) Q:I'=+I!($D(APCDDISP(I))) D
  1. .S C=C+1,^TMP("APCDEL",$J,C,0)=I_") "_$S($D(APCDCSEL(I)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(I),0),U,12)="":$E($P(^(0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(I)="",^TMP("APCDEL",$J,"IDX",C,C)=""
  1. .S J=I+APCDCUT I $D(APCDSEL(J)),'$D(APCDDISP(J)) S $E(^TMP("APCDEL",$J,C,0),28)=J_") "_$S($D(APCDCSEL(J)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(J),0),U,12)="":$E($P(^APCDTKW(APCDSEL(J),0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(J)=""
  1. .S K=J+APCDCUT I $D(APCDSEL(K)),'$D(APCDDISP(K)) S $E(^TMP("APCDEL",$J,C,0),55)=K_") "_$S($D(APCDCSEL(K)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(K),0),U,12)="":$E($P(^APCDTKW(APCDSEL(K),0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(K)=""
  1. K APCDDISP,APCDCUT
  1. S VALMCNT=C
  1. Q
  1. ;
  1. INIT2 ;EP
  1. K APCDDISP,APCDSEL,APCDHIGH,^TMP("APCDEL",$J)
  1. S APCDHIGH=0,X=0 F S X=$O(^APCDTKW("ASEC",X)) Q:X'=+X S Y=$O(^APCDTKW("ASEC",X,"")) S APCDHIGH=APCDHIGH+1,APCDSEL(APCDHIGH)=Y
  1. ;S APCDCUT=((APCDHIGH/3)+1)\1
  1. S APCDCUT=APCDHIGH/3 S:APCDCUT'=(APCDCUT\1) APCDCUT=(APCDCUT\1)+1
  1. S (C,I)=0,J=1,K=1 F S I=$O(APCDSEL(I)) Q:I'=+I!($D(APCDDISP(I))) D
  1. .S C=C+1,^TMP("APCDEL",$J,C,0)=I_") "_$S($D(APCDCSEL(I)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(I),0),U,12)="":$E($P(^(0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(I)="",^TMP("APCDEL",$J,"IDX",C,C)=""
  1. .S J=I+APCDCUT I $D(APCDSEL(J)),'$D(APCDDISP(J)) S $E(^TMP("APCDEL",$J,C,0),28)=J_") "_$S($D(APCDCSEL(J)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(J),0),U,12)="":$E($P(^APCDTKW(APCDSEL(J),0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(J)=""
  1. .S K=J+APCDCUT I $D(APCDSEL(K)),'$D(APCDDISP(K)) S $E(^TMP("APCDEL",$J,C,0),55)=K_") "_$S($D(APCDCSEL(K)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(K),0),U,12)="":$E($P(^APCDTKW(APCDSEL(K),0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(K)=""
  1. K APCDDISP,APCDOTHR
  1. S VALMCNT=C
  1. Q
  1. ;
  1. INIT3 ;EP
  1. K APCDDISP,APCDSEL,APCDHIGH,^TMP("APCDEL",$J)
  1. S APCDHIGH=0,X=0 F S X=$O(^APCDTKW("AH",X)) Q:X'=+X S Y=$O(^APCDTKW("AH",X,"")) S APCDHIGH=APCDHIGH+1,APCDSEL(APCDHIGH)=Y
  1. S APCDCUT=((APCDHIGH/3)+1)\1
  1. S (C,I)=0,J=1,K=1 F S I=$O(APCDSEL(I)) Q:I'=+I!($D(APCDDISP(I))) D
  1. .S C=C+1,^TMP("APCDEL",$J,C,0)=I_") "_$S($D(APCDCSEL(I)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(I),0),U,12)="":$E($P(^(0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(I)="",^TMP("APCDEL",$J,"IDX",C,C)=""
  1. .S J=I+APCDCUT I $D(APCDSEL(J)),'$D(APCDDISP(J)) S $E(^TMP("APCDEL",$J,C,0),28)=J_") "_$S($D(APCDCSEL(J)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(J),0),U,12)="":$E($P(^APCDTKW(APCDSEL(J),0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(J)=""
  1. .S K=J+APCDCUT I $D(APCDSEL(K)),'$D(APCDDISP(K)) S $E(^TMP("APCDEL",$J,C,0),55)=K_") "_$S($D(APCDCSEL(K)):"*",1:" ")_$S($P(^APCDTKW(APCDSEL(K),0),U,12)="":$E($P(^APCDTKW(APCDSEL(K),0),U),1,20),1:$P(^(0),U,12)) S APCDDISP(K)=""
  1. K APCDDISP,APCDOTHR
  1. S VALMCNT=C
  1. Q
  1. ;
  1. HELP ; -- help code
  1. S X="?" D DISP^XQORM1 W !!
  1. Q
  1. ;
  1. EXIT ; -- exit code
  1. K DISP,APCDSEL,APCHIGH,APCDCUT,APCDANS,APCDC,APCDI,APCDX,APCDY,APCDCRIT,APCDTEXT,APCDMOD,APCDMODE,APCDMNE,APCDVLK,APCDLOOK
  1. Q
  1. ;
  1. EOJ ;
  1. K VALMHDR,VALMCNT
  1. D EN1^APCDEKL
  1. D EN2^APCDEKL
  1. D ^XBFMK
  1. K APCDPAT,APCDVSIT,APCDCUT,APCDHIGH,APCDSEL,APCDDISP,APCDANS,APCDC,APCDI
  1. K X,Y,C,I
  1. D KILL^AUPNPAT
  1. Q
  1. EXPND ; -- expand code
  1. Q
  1. ;
  1. TEXT ;
  1. ;;Patient Care Component (PCC)
  1. ;;
  1. ;;************************************************
  1. ;;***** PCC DATA ENTRY UPDATE VISIT BY ITEM *****
  1. ;;************************************************
  1. ;;
  1. Q