| 1 | PRSEED14 ;HISC/MD-E/E MI ATTENDANCE BY MULTIPLE EMPLOYEES ;JUN 93
 | 
|---|
| 2 |  ;;4.0;PAID;**5,18,20**;Sep 21, 1995
 | 
|---|
| 3 | EN1 ;PRSE-MI-MULT
 | 
|---|
| 4 |  S X=$G(^PRSE(452.7,1,"OFF")) I X=""!X D MSG6^PRSEMSG Q
 | 
|---|
| 5 |  D EN2^PRSEUTL3($G(DUZ)) I PRSESER=""&'(DUZ(0)="@") D MSG3^PRSEMSG G Q1
 | 
|---|
| 6 |  K ^TMP("PRSE",$J),^TMP($J) S (NOUT,NSW)=0,(PRSEQWIK,PRSESW)=1,PRSESRCE="VA",PRSEGF="G",PRSELCL="L",PRSEPURP="IMPROVE PRESENT PERFORMANCE",PRSELOC=$P($G(^PRSE(452.7,1,0)),U,2),PRSECOD="N",PRSEROU="R"
 | 
|---|
| 7 |  S (PRSEBAD,NOUT,POUT)=0,Y=DT D D^DIQ S %DT("B")=Y
 | 
|---|
| 8 | DT K POUT D DATE G Q1:$G(POUT)
 | 
|---|
| 9 | MI S (NOUT,POUT)=0 K ^TMP("PRSE",$J),^TMP($J) S PRSESEL="M" D NAM^PRSEED1 I $D(POUT)!'($G(VA200DA)) G DT
 | 
|---|
| 10 |  S SSN=$P($G(^VA(200,+$G(VA200DA),1)),U,9),VA450DA=$O(^PRSPC("SSN",SSN,0)) S PRSESER("TX")=$P($G(^PRSP(454.1,+PRSESER,0)),U) I $G(PRSESER("TX"))="",(+$G(PRSPDA(1))>0) D MSG3^PRSEMSG G Q1
 | 
|---|
| 11 |  I '+$O(^PRSE(452.6,"B","MANDATORY TRAINING",0)) S:'$D(^PRSE(452.6,0)) ^(0)="PRSE SVC REASONS FOR TRAINING^452.6^0^0" S X="MANDATORY TRAINING",DIC(0)="L",DIC="^PRSE(452.6,",DLAYGO=452.6 K DD,DO D FILE^DICN
 | 
|---|
| 12 |  S PRSDA=0 D GRPEDT
 | 
|---|
| 13 |  G MI
 | 
|---|
| 14 | Q1 D ^PRSEKILL K ^TMP("PRSE",$J),^TMP($J)
 | 
|---|
| 15 |  Q
 | 
|---|
| 16 | DATE W ! S %DT("A")="Date Class Attended: ",%DT="AET",%DT(0)=-DT D ^%DT K %DT I Y<0 S POUT=1 Q
 | 
|---|
| 17 |  S (PRSEED,PRSEDT)=Y Q
 | 
|---|
| 18 | GRPEDT ;CREDIT CLASSES
 | 
|---|
| 19 |  I '$O(^PRSPC(+VA450DA,6,0)),(+$G(PRSPDA(1))>0) W !?3,"NO MANDATORY CLASSES ASSIGNED TO THIS EMPLOYEE!!",! S DIR(0)="E" D ^DIR K DIR Q:Y'>0  D ASK1 Q
 | 
|---|
| 20 |  S DIK="^PRSPC(+VA450DA,6," F I=0:0 S I=$O(^PRSPC(+VA450DA,6,"B",I)) Q:I'>0  I $G(^PRSE(452.1,+I,0))=""!($P($G(^(0)),U,7)'="M") S DA(1)=VA450DA,DA=$O(^PRSPC(+VA450DA,6,"B",I,0)) D ^DIK
 | 
|---|
| 21 |  D DISP
 | 
|---|
| 22 | STUFF S (PRSEII,NDA)=0 F  S PRSEII=$O(^TMP("PRSE",$J,PRSEII)) Q:PRSEII'>0!($G(POUT))  S NDA=+$G(^TMP("PRSE",$J,PRSEII)) I $P($G(^PRSE(452.1,+NDA,0)),U)'="" S PRSENAM="`"_+NDA D
 | 
|---|
| 23 |  .S PRSELNG=+$P($G(^PRSE(452.1,NDA,0)),U,3),PRSDA=+$O(^PRSE(452.8,"B",NDA,0))
 | 
|---|
| 24 |  .S PRSECAT="" I ($P($G(^PRSE(452.1,NDA,0)),U,9)=0!($$EN3^PRSEUTL3($G(VA200DA))=$P($G(^PRSE(452.8,PRSDA,0)),U,21))) S PRSECAT=$P($G(^PRSE(452.4,+$P($G(^PRSE(452.8,PRSDA,0)),U,10),0)),U)
 | 
|---|
| 25 |  .W ! S (NSW,NDUPSW)=0 D RECHK^PRSEED7 Q:NOUT  I 'NDUPSW W ! S DIC("S")="I $D(^PRSPC(VA450DA,6,""B"",+Y))" D ADD^PRSEED12 Q:$G(POUT)  S NSW=1 W !?9,$P($G(^PRSE(452.1,+NDA,0)),U),"  ",PRSESTUD,"  " S Y=PRSEDT D DT^DIQ
 | 
|---|
| 26 |  Q
 | 
|---|
| 27 | ASK1 ;
 | 
|---|
| 28 |  I $D(^PRSE(452,"AA","M",VA200DA)) D NOMIHLP
 | 
|---|
| 29 | ASK2 S NOUT=0 W ! S DIC=452.1,DIC(0)="AEQ",DIC("A")="Select Mandatory Training Class: ",DIC("S")="S PRS=^(0) I ($P(PRS,U,8)=PRSESER!($P(PRS,U,9)=0)),$P(PRS,U,7)=""M""" D ^DIC K DIC I $D(DTOUT)!($D(DUOUT))!("^^"[X) S NOUT=1 Q
 | 
|---|
| 30 |  I +Y'>0 G ASK1:X?1"?".E,ASK2
 | 
|---|
| 31 |  S PRSENAM="`"_+Y,PRSELNG=$P($G(^PRSE(452.1,+Y,0)),U,3),PRSDA=+$O(^PRSE(452.8,"B",+Y,0)),(NSW,NDUPSW)=0
 | 
|---|
| 32 |  S PRSECAT="" I ($P($G(^PRSE(452.1,+Y,0)),U,9)=0!($$EN3^PRSEUTL3($G(VA200DA))=$P($G(^PRSE(452.8,PRSDA,0)),U,21))) S PRSECAT=$P($G(^PRSE(452.4,+$P($G(^PRSE(452.8,PRSDA,0)),U,10),0)),U)
 | 
|---|
| 33 |  D RECHK^PRSEED7 G:NOUT ASK2 I 'NDUPSW D ADD^PRSEED12 Q:$G(POUT)
 | 
|---|
| 34 |  I 'NDUPSW,'NSW W !?9,PRSENAM(0),"   ",PRSESTUD,"   " S Y=PRSEDT D DT^DIQ S NSW=1
 | 
|---|
| 35 |  Q
 | 
|---|
| 36 | DISP K PRSETAB,PSV,PSVC S (PRSCLAS,PRSEMAX)=0,PRSCLAS(1)=""
 | 
|---|
| 37 |  F  S PRSCLAS=$O(^PRSPC(+VA450DA,6,"B",PRSCLAS)) Q:PRSCLAS'>0  I $P($G(^PRSE(452.1,+PRSCLAS,0)),U)'="" S ^TMP($J,"PSV",$P($G(^(0)),U))=+PRSCLAS
 | 
|---|
| 38 |  F  S PRSCLAS(1)=$O(^TMP($J,"PSV",PRSCLAS(1))) Q:PRSCLAS(1)=""  S PRSEMAX=PRSEMAX+1,^TMP($J,"PSVC",PRSEMAX)=+^TMP($J,"PSV",PRSCLAS(1))_U_PRSCLAS(1)
 | 
|---|
| 39 |  S PRSEMAX=PRSEMAX+1,PRSESTRT=1,^TMP($J,"PSVC",PRSEMAX)="ALL^ALL"
 | 
|---|
| 40 |  F  D DSP I $G(PRSEDONE)!$G(POUT) Q
 | 
|---|
| 41 |  Q
 | 
|---|
| 42 | DSP ;
 | 
|---|
| 43 |  D HDR S PRSEAQ=$Y
 | 
|---|
| 44 |  F PRSE=PRSESTRT:1:PRSEMAX S PRSEI=PRSE,PRSETAB=4 D  I $Y>(IOSL+PRSEAQ-7),PRSE'=PRSEMAX S PRSESTRT=PRSE+1 Q
 | 
|---|
| 45 |  .Q:$D(^TMP($J,"PSVC",PRSEI))[0
 | 
|---|
| 46 |  .W:PRSETAB=4 ! W:^TMP($J,"PSVC",PRSEI)'="" ?PRSETAB,$J(PRSEI,2),". ",$P($G(^TMP($J,"PSVC",PRSEI)),U,2) D LASTDAT
 | 
|---|
| 47 |  S PRSEDONE=(PRSE=PRSEMAX)
 | 
|---|
| 48 |  W:'PRSEDONE !,"<<More>>"
 | 
|---|
| 49 | ASK ;
 | 
|---|
| 50 |  W !!,?5,"Select TRAINING Class(es) to be added: " R PRX:DTIME
 | 
|---|
| 51 |  I '$T!(PRX=U) S PRX=U I PRX[U S:$E(PRX)=U POUT=1 Q
 | 
|---|
| 52 |  I PRX=PRSEMAX!(PRX="A")!(PRX="ALL") D LOOP Q
 | 
|---|
| 53 |  D VALENT^PRSEED7 I (PRX["?"!(PRSEBAD)) G DSP:PRX?2."?",ASK
 | 
|---|
| 54 |  F PRSEI=1:1 S PRSECLA=$P(PRX,",",PRSEI) Q:PRSECLA=""  S PRSESL=$P(PRSECLA,"-",2)_"+"_PRSECLA F PRSECNT=+PRSECLA:1:PRSESL I $D(^TMP($J,"PSVC",PRSECNT)) S ^TMP("PRSE",$J,PRSECNT)=+^TMP($J,"PSVC",PRSECNT)
 | 
|---|
| 55 |  Q
 | 
|---|
| 56 | NOMIHLP ;
 | 
|---|
| 57 |  D HDR S DA(2)="" F  S DA(2)=$O(^PRSE(452,"AA",PRSESEL,VA200DA,DA(2))) Q:DA(2)=""  S D2=$O(^PRSE(452,"AA",PRSESEL,VA200DA,DA(2),0)) Q:D2'>0  D
 | 
|---|
| 58 |  .S D1=$O(^PRSE(452,"AA",PRSESEL,VA200DA,DA(2),D2,0)) Q:D1'>0  I $D(^PRSE(452,D1,0)),'($P(^(0),U,2)="") S PRSEDATA=^(0) D
 | 
|---|
| 59 |  ..I $P(PRSEDATA,U,2)'="" W !?9,$P(PRSEDATA,U,2) S Y=(9999999-$O(^PRSE(452,"AA",PRSESEL,VA200DA,$P(PRSEDATA,U,2),""))) D D^DIQ W ?63,$E(Y,1,12)
 | 
|---|
| 60 |  Q
 | 
|---|
| 61 | LASTDAT ;LAST ATTENDED
 | 
|---|
| 62 |  Q:$P($G(^TMP($J,"PSVC",+PRSEI)),U,2)=""  I +$O(^PRSE(452,"AA",PRSESEL,VA200DA,$P(^TMP($J,"PSVC",PRSEI),U,2),0))>0 S Y=(9999999-$O(^PRSE(452,"AA",PRSESEL,VA200DA,$P(^TMP($J,"PSVC",PRSEI),U,2),0))) D D^DIQ W ?63,$E(Y,1,12)
 | 
|---|
| 63 |  Q
 | 
|---|
| 64 | HDR K X S $P(X,"-",80)="" W @IOF,!,?1,"MANDATORY TRAINING CLASS",?60,"DATE LAST ATTENDED",!,X,!
 | 
|---|
| 65 |  Q
 | 
|---|
| 66 | LOOP S PRSEI=0 F  S PRSEI=$O(^TMP($J,"PSVC",PRSEI)) Q:PRSEI>(PRSEMAX-1)  I $D(^TMP($J,"PSVC",PRSEI)) S ^TMP("PRSE",$J,+PRSEI)=+^TMP($J,"PSVC",PRSEI)
 | 
|---|
| 67 |  Q
 | 
|---|