| [613] | 1 | PRSECAL ;HISC/MH-CALENDAR OF CLASSES BY SERVICE AND DATE ;9/17/1998
 | 
|---|
 | 2 |  ;;4.0;PAID;**44**;Sep 21, 1995
 | 
|---|
 | 3 | EN1 ;ENTRY POINT FOR PRSE-CAL
 | 
|---|
 | 4 |  S X=$G(^PRSE(452.7,1,"OFF")) I X=""!(X=1) D MSG6^PRSEMSG Q
 | 
|---|
 | 5 |  D EN2^PRSEUTL3($G(DUZ)) I PRSESER=""&'(DUZ(0)="@") D MSG3^PRSEMSG G Q
 | 
|---|
 | 6 |  S (PRSECAL,NQ,NQT,NSW1,NPC,NOUT,PSPC,PSP)=0,NSW2=1
 | 
|---|
 | 7 |  D DATSEL^PRSEUTL G Q:$G(POUT) D SRT^PRSEUTL1 G Q:$G(POUT)
 | 
|---|
 | 8 |  I $$EN4^PRSEUTL3($G(DUZ))!(DUZ(0)["@") D EN3^PRSEUTL1 G Q:$G(POUT)
 | 
|---|
 | 9 |  I $G(PSP)=0,$G(PSPC)=0 S PSPC=PRSESER("TX")
 | 
|---|
 | 10 |  W ! S ZTRTN="START^PRSECAL" D L,DEV^PRSEUTL G:POP!($D(ZTSK)) Q
 | 
|---|
 | 11 | START ;
 | 
|---|
 | 12 |  K ^TMP("PRSE",$J)
 | 
|---|
 | 13 |  S PRSE132=$S(IOM'<132:1,1:0)
 | 
|---|
 | 14 |  F DA=0:0 S DA=$O(^PRSE(452.8,DA)) Q:DA'>0  I $P($G(^PRSE(452.8,DA,0)),U,21)'=""!(DUZ(0)="@") D SORT
 | 
|---|
 | 15 |  S X=$O(^TMP("PRSE",$J,0)) I X="" D NHDR W !,"THERE IS NO DATA FOR THIS REPORT" G QUIT
 | 
|---|
 | 16 |  D NPRINT
 | 
|---|
 | 17 | QUIT ;
 | 
|---|
 | 18 | Q K ^TMP("PRSE",$J) D CLOSE^PRSEUTL,^PRSEKILL
 | 
|---|
 | 19 |  Q
 | 
|---|
 | 20 | NPRINT ;
 | 
|---|
 | 21 | NO S PRSESP1="" F I=0:0 S PRSESP1=$O(^TMP("PRSE",$J,"L",PRSESP1)) Q:PRSESP1=""  D NP Q:NQT
 | 
|---|
 | 22 |  Q
 | 
|---|
 | 23 | NP S PRSESP2="" F  S PRSESP2=$O(^TMP("PRSE",$J,"L",PRSESP1,PRSESP2)) Q:PRSESP2=""  S NSORT=$G(^TMP("PRSE",$J,"L",PRSESP1,PRSESP2)) D:NSORT NP1 Q:NQT
 | 
|---|
 | 24 |  Q
 | 
|---|
 | 25 | NP1 S PRSETYP="" F  S PRSETYP=$O(^TMP("PRSE",$J,"L1",NSORT,PRSETYP)) Q:PRSETYP=""  D NQ Q:NQT
 | 
|---|
 | 26 |  Q
 | 
|---|
 | 27 | NQ S PRSELNG=0 F  S PRSELNG=$O(^TMP("PRSE",$J,"L1",NSORT,PRSETYP,PRSELNG)) Q:PRSELNG'>0  D NR Q:NQT
 | 
|---|
 | 28 |  Q
 | 
|---|
 | 29 | NR S PRSELOC="" F  S PRSELOC=$O(^TMP("PRSE",$J,"L1",NSORT,PRSETYP,PRSELNG,PRSELOC)) Q:PRSELOC=""  D NS Q:NQT
 | 
|---|
 | 30 |  Q
 | 
|---|
 | 31 | NS S PRSESVC="" F  S PRSESVC=$O(^TMP("PRSE",$J,"L1",NSORT,PRSETYP,PRSELNG,PRSELOC,PRSESVC)) Q:PRSESVC=""  D NPPRINT Q:NQT
 | 
|---|
 | 32 |  Q
 | 
|---|
 | 33 | NPPRINT I ($Y>(IOSL-9)!('NSW1)) D NHDR Q:NQT
 | 
|---|
 | 34 |  S Y=$S(PRSESEL="D":PRSESP1,PRSESEL="C":PRSESP2,1:0)
 | 
|---|
 | 35 |  S Y=$E(Y,4,5)_"/"_$E(Y,6,7)_"/"_$E(Y,2,3)_$S((+$P(Y,".",2)>0):"@"_$P(Y,".",2),1:"") I +$P(Y,"@",2)>0 S $P(Y,"@",2)=$S($P(Y,"@",2)?2N:$P(Y,"@",2)_"00",$P(Y,"@",2)?1N:$P(Y,"@",2)_"0",$P(Y,"@",2)?3N:$P(Y,"@",2)_"0",1:$P(Y,"@",2))
 | 
|---|
 | 36 |  I PRSE132 D
 | 
|---|
 | 37 |  . I PRSESEL="D" W:Y'="" !,Y W:'(PRSESP2="  BLANK") ?19,$E(PRSESP2,1,36)
 | 
|---|
 | 38 |  . I PRSESEL="C" W:PRSESP2'="  BLANK" !,$E(PRSESP1,1,36) W:'(Y="") ?40,Y
 | 
|---|
 | 39 |  . W:PRSELNG'="  BLANK" ?58,PRSELNG
 | 
|---|
 | 40 |  . W:PRSETYP'="  BLANK" ?68,PRSETYP
 | 
|---|
 | 41 |  . W:PRSELOC'="  BLANK" ?73,$E(PRSELOC,1,25)
 | 
|---|
 | 42 |  . W:PRSESVC'="  BLANK" ?101,PRSESVC
 | 
|---|
 | 43 |  . Q
 | 
|---|
 | 44 |  E  D
 | 
|---|
 | 45 |  . I PRSESEL="D" W:Y'="" !,Y W:'(PRSESP2="  BLANK") ?14,$E(PRSESP2,1,19)
 | 
|---|
 | 46 |  . I PRSESEL="C" W:PRSESP2'="  BLANK" !,$E(PRSESP1,1,19) W:'(Y="") ?24,Y
 | 
|---|
 | 47 |  . W:PRSETYP'="" ?38,PRSETYP
 | 
|---|
 | 48 |  . W:PRSELNG'="  BLANK" ?42,PRSELNG
 | 
|---|
 | 49 |  . W:PRSELOC'="  BLANK" ?48,$E(PRSELOC,1,15)
 | 
|---|
 | 50 |  . W:PRSESVC'="  BLANK" ?64,$E(PRSESVC,1,15)
 | 
|---|
 | 51 |  . Q
 | 
|---|
 | 52 |  Q
 | 
|---|
 | 53 | NHDR I 'NOUT I 'NQ,NSW1,$E(IOST)="C" D ENDPG^PRSEUTL S NQT=+POUT Q:NQT
 | 
|---|
 | 54 |  S NPC=NPC+1,NSW1=1 W:$E(IOST)="C"!(NPC>1) @IOF S X="T" D ^%DT D:+Y D^DIQ
 | 
|---|
 | 55 |  I PRSE132 D
 | 
|---|
 | 56 |  . W Y,?52,"CLASS REGISTRATION CALENDAR",?120,"PAGE: ",NPC,!!
 | 
|---|
 | 57 |  . W:PRSESEL="D" "START DATE",?19,"CLASS TITLE"
 | 
|---|
 | 58 |  . W:PRSESEL="C" "CLASS TITLE",?40,"START DATE"
 | 
|---|
 | 59 |  . W ?58,"LENGTH",?66,"TYPE",?73,"LOCATION",?101,"SERVICE",!
 | 
|---|
 | 60 |  . Q
 | 
|---|
 | 61 |  E  D
 | 
|---|
 | 62 |  . W Y,?26,"CLASS REGISTRATION CALENDAR",?68,"PAGE: ",NPC,!!
 | 
|---|
 | 63 |  . W:PRSESEL="D" "START DATE",?14,"CLASS TITLE",?35,"TYPE"
 | 
|---|
 | 64 |  . W:PRSESEL="C" "CLASS TITLE",?22,"START DATE",?35,"TYPE"
 | 
|---|
 | 65 |  . W ?40,"LENGTH",?48,"LOCATION",?64,"SERVICE",!
 | 
|---|
 | 66 |  . Q
 | 
|---|
 | 67 |  S NI="",$P(NI,"-",$S(PRSE132:133,1:81))="" W NI,!
 | 
|---|
 | 68 |  Q
 | 
|---|
 | 69 | L F X="PRSECLS","PRSESEL","PRSESER","NSW2","NOUT","NQ","NQT","NSW1","PSPC","NPC","PSP" S ZTSAVE(X)=""
 | 
|---|
 | 70 |  Q
 | 
|---|
 | 71 | SORT ; SORT SERVICE DATA
 | 
|---|
 | 72 |  W:$E(IOST,1,2)="C-"&('$R(100)) "."
 | 
|---|
 | 73 |  S N0=$P($G(^PRSE(452.8,+DA,0)),U),DATA=$G(^PRSE(452.1,+N0,0))
 | 
|---|
 | 74 |  ;I $P(DATA,U,8)'=PRSESER&$P(DATA,U,9)!($G(DATA)="") Q
 | 
|---|
 | 75 |  I PRSESEL="C" S PRSESP1=$S($D(^PRSE(452.1,+N0,0)):$P($G(^(0)),U),1:"  BLANK")
 | 
|---|
 | 76 |  I PRSESEL="D" S PRSESP2=$S($D(^PRSE(452.1,+N0,0)):$P($G(^(0)),U),1:"  BLANK")
 | 
|---|
 | 77 |  S PRSELNG=$S('($P($G(^PRSE(452.8,DA,0)),U,18)=""):$P(^(0),U,18),1:"  BLANK"),PRSETYP=$S('($P($G(^(0)),U,5)=""):$P(^(0),U,5),1:"  BLANK")
 | 
|---|
 | 78 |  S N1=$P($G(^PRSE(452.8,DA,0)),U,21),PRSESVC=$S($D(^PRSP(454.1,+N1,0)):$P($G(^(0)),U),1:"  BLANK")
 | 
|---|
 | 79 |  I '$G(PSP),PRSESVC'=PSPC,$P($G(DATA),U,9) Q
 | 
|---|
 | 80 |  F D1=0:0 S D1=$O(^PRSE(452.8,DA,3,D1)) Q:D1'>0  D SET
 | 
|---|
 | 81 |  Q
 | 
|---|
 | 82 | SET ;
 | 
|---|
 | 83 |  S:TYP="S"!(YRST<DT) YRST=DT I +(^PRSE(452.8,DA,3,D1,0)<YRST)!(+^PRSE(452.8,DA,3,D1,0)>YREND) Q
 | 
|---|
 | 84 |  I $D(^PRSE(452.8,DA,3,D1,0)),PRSESEL="D" S PRSESP1=$S((+^(0)>0):+^(0),1:0)
 | 
|---|
 | 85 |  I $D(^PRSE(452.8,DA,3,D1,0)),PRSESEL="C" S PRSESP2=$S((+^(0)>0):+^(0),1:0)
 | 
|---|
 | 86 |  S PRSELOC=$S('($P(^PRSE(452.8,DA,3,D1,0),U,2)=""):$P(^(0),U,2),1:"  BLANK") D SAVE
 | 
|---|
 | 87 |  Q
 | 
|---|
 | 88 | SAVE S:PRSESP1="" PRSESP1=" " S:PRSESP2="" PRSESP2=" "
 | 
|---|
 | 89 |  S:$G(NSORT)="" NSORT=1
 | 
|---|
 | 90 |  N X S X=$G(^TMP("PRSE",$J,"L",PRSESP1,PRSESP2))
 | 
|---|
 | 91 |  I X="" S X=NSORT,NSORT=NSORT+1,^TMP("PRSE",$J,"L",PRSESP1,PRSESP2)=X
 | 
|---|
 | 92 |  S ^TMP("PRSE",$J,"L1",X,PRSETYP,PRSELNG,PRSELOC,PRSESVC)=""
 | 
|---|
 | 93 |  Q
 | 
|---|