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

SDC1.m

Go to the documentation of this file.
  1. SDC1 ;ALB/GRR - PRINT CLINIC PRE-CANCELLATION LIST ; 6/30/05 10:15am
  1. ;;5.3;PIMS;**379,398,439,478,1015,1016**;JUN 30, 2012;Build 20
  1. ;IHS/ANMC/LJF 11/30/2000 changed $N to $O
  1. ; 12/13/2000 added date to report heading
  1. K ^TMP("SDC1",$J) S DGVAR="SD^SC^SDTIME",DGPGM="START^SDC1" D ZIS^DGUTQ Q:POP
  1. START U IO S SDCNT=0 K DUOUT,DTOUT N SDBADD,SNODE S SDBADD=0,SNODE=""
  1. ; sd*5.3*439 FOR loop changed to exclude if different clinic
  1. F J=SD:0 S J=$O(^SC(SC,"S",J)) Q:J=""!(J\1-SD)!$D(DTOUT)!$D(DUOUT) D
  1. . S J2=0 F S J2=$O(^SC(SC,"S",J,1,J2)) Q:J2=""!$D(DTOUT)!$D(DUOUT) D
  1. .. I '$D(^SC(SC,"S",J,1,J2,0)) I $D(^("C")) D DELETE Q ;SD*545 if corrupt node delete
  1. .. I '+$G(^SC(SC,"S",J,1,J2,0)) D DELETE Q ;SD*545 if DFN missing delete record
  1. .. S DFN=+^SC(SC,"S",J,1,J2,0),SDLE=$P(^(0),U,2)
  1. .. Q:'$D(^DPT(DFN,"S",J,0)) S SNODE=^(0)
  1. .. Q:$P(SNODE,U,1)'=SC&($P(SNODE,U,14)'=SDTIME)
  1. .. I $P(SNODE,U,2)'["C"!($P(SNODE,U,14)=SDTIME) D PLST Q:$D(DTOUT)!$D(DUOUT)
  1. G:$D(DUOUT)!$D(DTOUT) EXIT I SDCNT=0 S NOAP=1 W !,"NO APPOINTMENTS SCHEDULED"
  1. I SDBADD D
  1. . W !!,"* THIS PATIENT HAS BEEN FLAGGED WITH A BAD ADDRESS INDICATOR, NO LETTER"
  1. . W !,"WILL BE PRINTED."
  1. I $E(IOST,1,2)'="C-" W @IOF
  1. EXIT K DUOUT,DTOUT,I,J,J2,X,DFN,SNODE,SDLE,SDCNT,^TMP("SDC1",$J) W !! D CLOSE^DGUTQ Q ; sd*5.3*439 added local vars to kill
  1. PLST I SDCNT=0!($Y+2>IOSL) S DIR(0)="E" D:$E(IOST,1,2)="C-" ^DIR K DIR Q:$D(DTOUT)!$D(DUOUT) D HED
  1. ;
  1. ;CHECK FOR DUPLICATE ENTRY IN FILE 44 - SD*5.3*379
  1. ;
  1. I $D(^TMP("SDC1",$J,J,DFN)) Q
  1. S ^TMP("SDC1",$J,J,DFN)=""
  1. ;
  1. N VA D PID^VADPT6
  1. N CSLNK S CSLNK=$P($G(^SC(SC,"S",J,1,J2,"CONS")),U) ;SD/478
  1. W ! I $$BADADR^DGUTL3(+DFN) W "*" S SDBADD=1
  1. W $P(^DPT(DFN,0),"^",1),?30,VA("PID") S X=J D TM^SDROUT0 W ?43,$J(X,8),?52,$S(CSLNK'="":"CONS",1:""),?58,SDLE W:$D(^DPT(DFN,.13)) ?64,$P(^(.13),"^",1) ;SD/478
  1. S SDCNT=SDCNT+1 Q
  1. HED ;W @IOF,!,$P(^SC(SC,0),"^",1)," Clinic Pre-cancellation list",!,"PATIENT NAME",?34,"ID",?43,"APPT TIME",?56,"LENGTH",?64,"TELEPHONE" ;IHS/ANMC/.LJF 12/13/2000
  1. W @IOF,!,$P(^SC(SC,0),"^",1)," Clinic Pre-cancellation list for ",$$FMTE^XLFDT(SD,"D"),!,"PATIENT NAME",?34,"ID",?43,"APPT TIME",?56,"LENGTH",?64,"TELEPHONE" ;IHS/ANMC/LJF 12/13/2000
  1. W ! F I=1:1:79 W "-"
  1. Q
  1. ;
  1. DELETE ;SD*5.3*545 when applicable, delete corrupt appt sub-record
  1. S DA(2)=SC,DA(1)=J,DA=J2
  1. S DIK="^SC("_DA(2)_",""S"","_DA(1)_",1," D ^DIK
  1. K DA,DIK
  1. Q