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

ACMAPPT.m

Go to the documentation of this file.
  1. ACMAPPT ; IHS/TUCSON/TMJ - EDIT OR DELETE AN APPOINTMENT ; [ 07/11/1999 7:38 PM ]
  1. ;;2.0;ACM CASE MANAGEMENT SYSTEM;*1*;JAN 10, 1996
  1. ;Patch #1 alows Edit of Existing Recall Data Date
  1. ;MAKE, DELETE OR CHANGE A RECALL DATE ENTRY
  1. ;CALLS ACMAPP1, NO INTERNAL ENTRY POINTS.
  1. EN K ACMQUIT
  1. D HEAD,CHOICE
  1. I $D(ACMAPX) K ACMAPX G EN
  1. I $D(ACMQUIT) D EXIT Q
  1. D ADD:'$D(ACMQUIT)
  1. D APPTDIE:'$D(ACMQUIT)&$D(DA)
  1. D EXIT
  1. G:'$D(ACMQUIT) EN
  1. Q
  1. ;
  1. ADD ;
  1. S DIR(0)="9002249,.01",DIR("A")="Enter Date of Recall" K DA D ^DIR K DIR
  1. Q:X="^"!(X="")
  1. S X=Y
  1. S DIC="^ACM(49,",DIC(0)="L",DIC("DR")=".02////"_ACMPTNO_";.03////"_ACMRGDFN_";.04////"_ACMRG
  1. K DD,DO D FILE^DICN
  1. S DA=+Y
  1. D APPTDIE
  1. Q
  1. Q
  1. W !!?14,"Update ",@ACMRVON,"RECALL DATES",@ACMRVOFF,!?17,"for ",@ACMRVON,ACMPTNA2,@ACMRVOFF,!!?40,"NEXT APPT",?59,"REFERRAL",!?0,"NO.",?5,"RECALL DT",?17,"PURPOSE",?40,"DATE TIME",?59,"ORG/PROVIDER"
  1. W !?0,"--- ---------",?15,"------------",?40,"-----------------",?59,"------------"
  1. S (ACMA,ACMAA)="",ACMCREG1=""
  1. F ACMCNT=1:1 S ACMA=$O(^ACM(49,"C",ACMPTNO,ACMA)) Q:'ACMA D LST
  1. S ACMCNT=ACMCNT-1 K ACMCREG,ACMCREG1
  1. Q
  1. ;
  1. CHOICE S DIR(0)="SO^A:ADD"_$S(ACMCNT>0:";C:CHANGE;D:DELETE;E:EDIT DATE ONLY",1:""),DIR("A")=" Enter CHOICE",DIR("?")="Enter 'A', 'D', or 'C' or Press <RETURN> to Exit" ;IHS/CMI/LAB
  1. D DIR
  1. I U=$E(X)!(X="") S ACMQUIT="" S:U=$E(X) ACMOUT="" Q
  1. S ACMX=Y
  1. I ACMCNT>0,"CDE"[$E(ACMX) D DD S ACMAPX="" Q ;IHS/CMI/LAB
  1. I ACMCNT<1,"A"'[$E(ACMX) W *7,!!?14,"??" S ACMAPX="" Q
  1. Q
  1. ;
  1. APPTDIE W !
  1. S DIE="^ACM(49,",DR="11T;4T;5T;3T;7T;1T;2T"
  1. I ACMX="C" S DA=$P(ACMCNT(ACMCNT1),U,3)
  1. D DIE
  1. S DIE="^ACM(41,",DA=ACMRGDFN,DR="11///TODAY"
  1. D DIE
  1. Q
  1. ;
  1. APPTDT ;
  1. ;IHS/CMI/LAB - new subroutine patch 1
  1. W !
  1. S DIE="^ACM(49,",DR=".01"
  1. I ACMX="E" S DA=$P(ACMCNT(ACMCNT1),U,3)
  1. D DIE
  1. S DIE="^ACM(41,",DA=ACMRGDFN,DR="11///TODAY"
  1. D DIE
  1. Q
  1. EXIT K ACMA,ACM1,ACM2,ACMY,ACMZ,ACMZZ,ACMX,ACMCNT,ACMCNT1,ACMQUIT,ACMPV
  1. Q
  1. ;
  1. LST I '$D(^ACM(49,ACMA,"DT")) S ACMCNT=ACMCNT-1 Q
  1. I $P(^ACM(49,ACMA,0),U,4)'=ACMRG S ACMCNT=ACMCNT-1 Q
  1. S ACMAPP1=^ACM(49,ACMA,"DT"),ACMY=$P(ACMAPP1,U),ACMZ=$P(ACMAPP1,U,5),ACMZZ=$P(ACMAPP1,U,3),ACMPV=$P(ACMAPP1,U,4),ACM1=$P(^ACM(49,ACMA,0),U)
  1. K ACMAPP1
  1. I ACMY'="" S Y=ACMY X ^DD("DD") S ACMY=Y I 1
  1. E S ACMY="NOT RECORDED"
  1. I ACMZ'="" S ACMZ=$E(ACMZ,1,22)
  1. E S ACMZ="NOT RECORDED"
  1. I ACMZZ'="" S Y=ACMZZ X ^DD("DD") S ACMZZ=Y I 1
  1. E S ACMZZ="NONE ON FILE"
  1. I ACM1 S ACM2=^ACM(49,ACMA,0),ACM2=$E(ACM2,1,7)
  1. E S ACM2="UNSPECIFIED"
  1. S ACMCNT(ACMCNT)=ACMCNT_"^"_ACM2_"^"_ACMA_"^"_ACMZ,ACMCREG=$P(^ACM(41.1,$P(^ACM(49,ACMA,0),U,4),0),U)
  1. I ACMCREG'=ACMCREG1 W ! S ACMCREG1=ACMCREG
  1. I ACM2'="" S Y=ACM2 X ^DD("DD") S ACM2=Y
  1. I ACMZZ'="" S ACMZZ=$E(ACMZZ,1,20)
  1. W !,ACMCNT,?5,ACM2,?17,ACMZ,?40,ACMY,?58,ACMZZ
  1. W !,?58,ACMPV
  1. Q
  1. ;
  1. DD S:ACMCNT=1 ACMCNT1=ACMCNT
  1. DD1 I ACMCNT>1 D
  1. .S DIR(0)="NO^1:"_ACMCNT,DIR("A")=$S(ACMX="D":"DELETE",ACMX="C":"CHANGE",ACMX="E":"EDIT DATE OF")_" WHICH RECALL DATE",DIR("?")="ENTER A NUMBER FROM 1 - "_ACMCNT
  1. .D DIR
  1. .S ACMCNT1=Y
  1. Q:ACMCNT1["^"!(ACMCNT1="")
  1. S ACM2=$P(ACMCNT(ACMCNT1),U,2),ACMA=$P(ACMCNT(ACMCNT1),U,3),ACMZ=$P(ACMCNT(ACMCNT1),U,4),ACMD=$S(ACMX="C":"APPTDIE",ACMX="D":"DELETE",ACMX="E":"APPTDT") ;IHS/CMI/LAB
  1. S Y=ACM2 X ^DD("DD") S ACM3=Y ;Recall Date Conversion
  1. W:ACMD="APPTDIE" !!?4,"RECALL DATE: ",ACM3," (PURPOSE: ",ACMZ,")"
  1. W:ACMD="APPTDT" !!,?24,"RECALL DATE: ",ACM3," (PURPOSE): ",ACMZ,")",!,?6,"Enter a New Recall Date at Current Date Display" ;IHS/CMI/LAB
  1. D @ACMD
  1. K ACMD
  1. Q
  1. ;
  1. DELETE I $P(^ACM(49,ACMA,0),U,4)'=ACMRG W *7,!!?10,"You cannot delete appointments made by another register." H 2 Q
  1. W !!,"DELETE ",@ACMRVON,ACM3,@ACMRVOFF," RECALL DATE FOR "
  1. W @ACMRVON,ACMZ,@ACMRVOFF
  1. S %=1 D YN^DICN
  1. Q:%=-1!(%=2)!(%=0)
  1. S DIE="^ACM(49,",DR=".01///@",DA=ACMA
  1. D DIE
  1. Q
  1. ;
  1. DIR D ^DIR S:$D(DIRUT) ACMQUIT="" K DIR,DIRUT,DUOUT,DTOUT Q
  1. DIE D ^DIE K DIC,DIE,DA,DR Q