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

ASDPC.m

Go to the documentation of this file.
  1. ASDPC ; IHS/ADC/PDW/ENM - principal clinic make appt. ; [ 01/29/2003 1:20 PM ]
  1. ;;5.0;IHS SCHEDULING;**8**;MAR 25, 1999
  1. ;1/28/03 WAR - Patch 8
  1. ;
  1. I '$D(DUZ(2)) Q
  1. NEW SDPC D DT^DICRW
  1. ;
  1. S DIC="^SC(",DIC(0)="AEMZQ",DIC("A")="Select PRINCIPAL CLINIC NAME: "
  1. S DIC("S")="I $P(^(0),""^"",3)=""C"",'$D(^(9,""B"",$I)),$D(^SC(""AIHSPC"",+Y))"
  1. D ^DIC K DIC I Y<0 Q
  1. S SDPC=+Y
  1. ;
  1. EN ;EP; called by SDM with SDPC set
  1. NEW SDAY,SDX,SDN,SDD,Y,Z,SDSLOT
  1. S %DT="AE",%DT("A")="Enter EARLIEST POSSIBLE APPT DATE: "
  1. S %DT("B")="TODAY",X="" D ^%DT S SDAY=Y
  1. ;
  1. S %DT="AE",%DT("A")="Enter LATEST POSSIBLE APPT DATE: "
  1. S %DT("B")="T+15",X="" D ^%DT S SDEND=Y+.2400 W !!
  1. ;
  1. SC S (SDN,SDCNT)=0 F S SDN=$O(^SC("AIHSPC",SDPC,SDN)) Q:'SDN D DAY
  1. W ! Q
  1. ;
  1. DAY S SDD=SDAY-.001,Z="",SDSLOT=0
  1. F S SDD=$O(^SC(SDN,"ST",SDD)) Q:'SDD Q:SDD>SDEND Q:SDSLOT D
  1. . S SDX=0
  1. . F S SDX=$O(^SC(SDN,"ST",SDD,SDX)) Q:'SDX Q:+SDSLOT D
  1. ..;1/28/03 WAR changed next line from '6' to '5'
  1. ..; S Z=$E(^SC(SDN,"ST",SDD,SDX),6,$L(^SC(SDN,"ST",SDD,SDX)))
  1. .. S Z=$E(^SC(SDN,"ST",SDD,SDX),5,$L(^SC(SDN,"ST",SDD,SDX)))
  1. .. Q:Z["CANCELLED"
  1. .. I (Z'["|"),(Z'["[") Q
  1. ..;1/28/03 WAR REM'd the next 5 lines and added the $TR
  1. ..; I Z["|" S SDSLOT=$P(Z,"|",2,999) ;1/28/03 WAR REM'd
  1. ..; I Z'["|" S SDSLOT=$E(Z,6,999) ;1/28/03 WAR REM'd
  1. ..; F I="|","[","]","*"," ","0" S SDSLOT=$$STRIP^XLFSTR(SDSLOT,I)
  1. ..; F I="A","B","C","D","E","F" S SDSLOT=$$STRIP^XLFSTR(SDSLOT,I)
  1. ..; F I="j","k","l","m","n","o" S SDSLOT=$$STRIP^XLFSTR(SDSLOT,I)
  1. .. S SDSLOT=$TR(Z,"|[@#]!$* ABCDEFXjklmno",0) ;1/28/03 WAR added
  1. .. Q:+SDSLOT<1
  1. .. S Y=SDD X ^DD("DD")
  1. .. W !,$P(^SC(SDN,0),U,1),?25,Y,!,^SC(SDN,"ST",SDD,SDX)
  1. .. S SDCNT=SDCNT+2 I SDCNT>18 D
  1. ... K DIR S DIR(0)="E",DIR("A")="Press RETURN for more choices"
  1. ... D ^DIR K DIR S SDCNT=0
  1. Q