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

ACMAPP1.m

Go to the documentation of this file.
  1. ACMAPP1 ; IHS/TUCSON/TMJ - ACMAPPT SUBROUTINE LISTS CURRENT APPTS ; [ 01/24/96 10:37 AM ]
  1. ;;2.0;ACM CASE MANAGEMENT SYSTEM;;JAN 10, 1996
  1. ;FINDS RESOURCE, CHECKS FOR RELATED SERVICE, ADDS NEW SERVICE AND/OR
  1. ;APPOINTMENTS, CALLED BY ACMAPPT, NO INTERNAL ENTRY POINTS
  1. EN D PRO K ACMSCNO
  1. D TEST:'$D(ACMQUIT)
  1. I '$D(ACMQUIT),$D(ACMSCNO) D CHK,EXIT Q
  1. D SVC:'$D(ACMQUIT) K DA
  1. D CHK:'$D(ACMQUIT)
  1. D EXIT
  1. Q
  1. ;
  1. PRO K ACMQUIT
  1. S DIC="^ACM(50,",DIC(0)="AEMQ",DIC("A")=" RESOURCE: "
  1. S DIC("S")="I $D(^ACM(50,+Y,""RG"",""B"",ACMRG))"
  1. W ! D ^DIC K DIC
  1. I X=""!($E(X)=U)!(Y=-1) S ACMQUIT="" Q
  1. S ACMCLNO=+Y,ACMCLNA=$P(^ACM(50,ACMCLNO,0),U)
  1. Q
  1. ;
  1. SVC K DIC,DD
  1. S DIC="^ACM(47.1,"
  1. S DIC(0)="AEMQ"
  1. S DIC("A")=" SERVICE: "
  1. S DIC("S")="I $D(^ACM(50,ACMCLNO,2,""B"",Y))"
  1. W ! D ^DIC K DIC,DD
  1. I X=U S ACMQUIT="" Q
  1. I Y=-1 W !!?10,"Enter the RELATED SERVICE for the appointment.",! G SVC
  1. S ACMSCNO=+Y,ACMSCNA=$P(Y,U,2)
  1. Q
  1. ;
  1. EXIT K ACMU,%Y,ACMCLNO,ACMCLNA,ACMSVNO,ACMSVNA,ACMSCNA,ACMSCNO,ACMQUIT
  1. Q
  1. ;
  1. CHK I '$D(^ACM(47.1,ACMSCNO,"RG","B",ACMRG)) D SVMESS
  1. S ACMU="" F ACMI=0:0 S ACMU=$O(^ACM(47,"AC",ACMRG,ACMPTNO,ACMU)) Q:'ACMU S ACMUA=^(ACMU) I +^ACM(47,ACMUA,0)=ACMSCNO S ACMSVNO=ACMUA Q
  1. I $D(ACMSVNO) D CHKS Q
  1. D ADDSERV
  1. D NEW:'$D(ACMQUIT)
  1. Q
  1. ;
  1. CHKS S:'$D(^ACM(47,ACMSVNO,"DT")) ^ACM(47,ACMSVNO,"DT")="E"
  1. I $P(^ACM(47,ACMSVNO,"DT"),U)'="E" D STAT Q:$D(ACMQUIT)
  1. S ACMU=0 F ACMI=0:0 S ACMU=$O(^ACM(49,"C",ACMPTNO,ACMU)) Q:'ACMU I $P(^ACM(49,ACMU,"DT"),U,5)=ACMSCNO D WANTNEW Q
  1. I $D(ACMNONU) K ACMNONU Q
  1. D NEW
  1. Q
  1. ;
  1. SVMESS S:'$D(^ACM(47.1,ACMSCNO,"RG")) ^ACM(47.1,ACMSCNO,"RG",0)="^9002247.12P^^"
  1. S DIC="^ACM(47.1,DA(1),""RG"",",X=ACMRG,DIC(0)="L",DA(1)=ACMSCNO
  1. K DD,DO D FILE^DICN Q
  1. W !!?10,"The ",@ACMRVON,ACMRGNA,@ACMRVOFF," register is not associated with"
  1. W !?10,"the ",@ACMRVON,ACMSCNA,@ACMRVOFF," service."
  1. W !?10,"The ",ACMRGNA," register must be added for this service."
  1. W !?10,"Use the 'Supporting Data' Option from the MAIN MENU."
  1. W !!?10,"Strike <CR> to continue." R ACMX:DTIME
  1. Q
  1. ;
  1. WANTNEW W !!?10,"Do you want to add another appointment for this service"
  1. S %=1 D YN^DICN
  1. I %=-1!($E(%Y)="N") S ACMNONU="" Q
  1. Q
  1. ;
  1. ADDSERV W !!?10,@ACMRVON,ACMPTNA2,@ACMRVOFF," is not signed up for"
  1. W !?10,@ACMRVON,ACMSCNA,@ACMRVOFF,"."
  1. W !!?10,"Want to enroll him/her for ",ACMSCNA S %=1 D YN^DICN
  1. I %Y["^" S ACMQUIT="" Q
  1. I %'=1 W !!?10,"CLIENT must be ENROLLED in the SERVICE before he/she",!?10,"can get an appointment to this provider. If you want to",!?10,"escape without enrolling this CLIENT, type '^' followed by a <CR>." G ADDSERV
  1. K DIC,DD S DIC="^ACM(47,",DIC(0)="L",X=ACMSCNO
  1. S DIC("DR")=".02////"_ACMPTNO_";.03////"_ACMRGDFN_";.04////"_ACMRG
  1. K DD,DO D FILE^DICN K DIC,DR,DD
  1. S DIE="^ACM(47,",(DA,ACMSVNO)=+Y,DR="1///E" D DIE1
  1. Q
  1. ;
  1. DIE1 D ^DIE K DIC,DIE,DR
  1. S DIE="^ACM(41,",DA=ACMRGDFN,DR="11///TODAY" D ^DIE K DIC,DIE,DR
  1. Q
  1. ;
  1. STAT W !!?10,"This CLIENT is signed up for ",@ACMRVON,ACMSCNA,@ACMRVOFF
  1. W !?10,"but his/her status is not indicated as being ENROLLED."
  1. W !?10,"Want to change the status to ENROLLED"
  1. S %=1 D YN^DICN
  1. I %'=1 W !!?10,"CLIENT must be ENROLLED for ",ACMSCNA,!?10," before he/she can get an appointment for this service.",!?10,"If you want to escape without enrolling this CLIENT, type '^' followed by a <CR>." G STAT
  1. S DA=ACMSVNO,DR="1///E",DIE="^ACM(47," D DIE1
  1. Q
  1. ;
  1. NEW W !!?10,"I will add the following appointment for this client =>"
  1. W !!?14,"Provider: ",@ACMRVON,ACMCLNA,@ACMRVOFF
  1. W !?15,"Service: ",@ACMRVON,ACMSCNA,@ACMRVOFF
  1. W !!?10,"OK" S %=1 D YN^DICN
  1. I %'=1 S ACMQUIT="" K DA Q
  1. S X=ACMCLNO
  1. K DIC,DD
  1. S DIC="^ACM(49,",DIC(0)="L"
  1. S DIC("DR")=".02////"_ACMPTNO_";.03////"_ACMRGDFN_";.04////"_ACMRG_";11////"_ACMSCNO
  1. W ! D WAIT^DICD W !
  1. K DD,DO D FILE^DICN S DA=+Y K DIC,DR,DD
  1. Q
  1. ;
  1. TEST S ACMU="" F ACMI=1:1 S ACMU=$O(^ACM(50,ACMCLNO,2,ACMU)) Q:'ACMU S X=^(ACMU,0) S:ACMI=1 ACMSCNO=X,ACMSCNA=$P(^ACM(47.1,X,0),U) I ACMI>1 Q
  1. I ACMI=1 Q
  1. K ACMSCNO,ACMSCNA
  1. Q
  1. ;