1 | PRS8TL ;HISC/MRL-DECOMPOSITION, SELECTIVE T&L ;2/19/93 13:12
|
---|
2 | ;;4.0;PAID;;Sep 21, 1995
|
---|
3 | ;
|
---|
4 | ;This routine is used to decompose, or re-decompose, all entries
|
---|
5 | ;for a specific T&L for a selective Pay Period. Entries which
|
---|
6 | ;have already been transmitted will not be affected by this process.
|
---|
7 | ;
|
---|
8 | ;Called by Routines: PRS8
|
---|
9 | ;
|
---|
10 | S QUIT=0
|
---|
11 | PP ; --- get Pay Period
|
---|
12 | S SEE=1 D PY^PRS8 ;get pay period
|
---|
13 | Q:QUIT G END:'OK S PY(0)=$P(^PRST(458,+PY,0),"^",1)
|
---|
14 | ;
|
---|
15 | SHOW ; --- show only
|
---|
16 | W !!,"Want to just SEE what's stored already and not decompose"
|
---|
17 | S %=2 D YN^DICN I %<0 G END
|
---|
18 | I %,%>0 S SHOW=$S(%=2:0,1:1),SHOW(1)=$S(SHOW:"SEE",1:"DECOMPOSE") G DECOM:'SHOW S DECOM=0 G ASK
|
---|
19 | W !?4,"Answer YES if you wish to display what's been previously decomposed."
|
---|
20 | W !?4,"Respond NO if you actually want to decompose records."
|
---|
21 | D OUT G SHOW
|
---|
22 | ;
|
---|
23 | DECOM ; --- decompose even if done
|
---|
24 | W !!,"Should I decompose only those records which have not been decomposed" S %=2 D YN^DICN
|
---|
25 | S DECOM=0 I % G END:%<0 S DECOM=%-1 G ASK
|
---|
26 | W !?4,"Answer YES if you wish to decompose only records not previously decomposed."
|
---|
27 | W !?4,"Respond NO to decompose all records which have been released to payroll but",!?4,"have not yet been transmitted." D OUT G DECOM
|
---|
28 | ASK ; --- loop thru all T&L's
|
---|
29 | W !!,"Want to ",SHOW(1)," all T&L's for Pay Period ",PY(0) S %=2 D YN^DICN
|
---|
30 | I %,QUIT Q
|
---|
31 | I %=1 S PRS8("DES")="Decomposition of all T&L's for PP ",PRS8("PGM")="TLA^PRS8TL" G DEV
|
---|
32 | I % G END:%=-1,TL
|
---|
33 | W !?4,"Answer YES if you wish to ",SHOW(1)," all records for PP ",PY(0),"."
|
---|
34 | W !?4,"Respond NO if you wish to ",SHOW(1)," records for specific T&L's."
|
---|
35 | D OUT G ASK
|
---|
36 | ;
|
---|
37 | TL ; --- Specific T&L Selection
|
---|
38 | W ! S CT=0 K TLU
|
---|
39 | F PRS8=1:1 D Q:+Y'>0
|
---|
40 | .S DIC="^PRST(455.5,",DIC(0)="AEQMZ",DIC("A")="Select T&L Unit: "
|
---|
41 | .I CT S DIC("A")="Select ANOTHER: "
|
---|
42 | .D ^DIC
|
---|
43 | .I Y>0,$D(TLU(Y(0,0))) W !?4,"T&L has already been selected!!",*7 Q
|
---|
44 | .I $D(^PRST(455.5,+Y,0)) S CT=CT+1,TLU(Y(0,0))=""
|
---|
45 | I $O(TLU(0))="" W !?4,"No T&L's have been selected!",*7 Q:QUIT G END
|
---|
46 | W !! S (CT,CT1)=0,J="" F I=0:0 S J=$O(TLU(J)) Q:J="" D
|
---|
47 | .S CT=CT+1,CT1=CT1+1 I CT1=7 S CT1=1 W !
|
---|
48 | .S X=(CT1*10-CT1) W ?X,J
|
---|
49 | ;
|
---|
50 | OK ; --- are the selections ok
|
---|
51 | W !!,$S(CT=1:"Is this the T&L",1:"Are these the T&L's")
|
---|
52 | W " to be processed" S %=2 D YN^DICN
|
---|
53 | I %,QUIT Q
|
---|
54 | I % G TL1:%=1,TL:%=2,END
|
---|
55 | W !?4,"Answer YES if these are the T&L's you want to ",SHOW(1),"."
|
---|
56 | W !?4,"Answer NO if you wish to select another T&L (or set of T&L's)."
|
---|
57 | D OUT G OK
|
---|
58 | ;
|
---|
59 | TL1 ; --- T&L's are ok, let's go on
|
---|
60 | S PRS8("DES")="Decomposition of Specific T&L's",PRS8("PGM")="TL2^PRS8TL" G DEV
|
---|
61 | ;
|
---|
62 | TL2 ; --- entry point from QUEUE for running specific T&L's
|
---|
63 | D COVER^PRS8TL1
|
---|
64 | S TLU="" F TLU1=0:0 S TLU=$O(TLU(TLU)),NAME="" Q:TLU=""!(PRS8("QUIT")) D ^PRS8TL1
|
---|
65 | I 'PRS8("QUIT") S PRS8("QUIT")=1 D TOP^PRS8TL1
|
---|
66 | G END
|
---|
67 | ;
|
---|
68 | TLA ; --- entry point from QUEUE for running all T&L's
|
---|
69 | D COVER^PRS8TL1
|
---|
70 | S TLU1="ATL00" F S TLU1=$O(^PRSPC(TLU1)),NAME="" Q:TLU1'?1"ATL".E!(PRS8("QUIT")) S TLU=$E(TLU1,4,6) D ^PRS8TL1
|
---|
71 | I 'PRS8("QUIT") S PRS8("QUIT")=1 D TOP^PRS8TL1
|
---|
72 | G END
|
---|
73 | ;
|
---|
74 | OUT ; --- write exit comment
|
---|
75 | W !?4,"You may enter an up-arrow [""^""] if you wish to QUIT now!",*7 Q
|
---|
76 | ;
|
---|
77 | DEV ; --- select output device
|
---|
78 | W !!,"WARNING: This report is designed to run with a 132-column Right Margin!"
|
---|
79 | S PRS8("DES")=PRS8("DES")_" "_PY(0),PRS8("VAR")="PY^PY(^SHOW^DECOM^TLU(" D ^PRS8UT
|
---|
80 | ;
|
---|
81 | END ; --- all done here
|
---|
82 | G ALL^PRS8CV
|
---|