1 | PRCUTL1 ;WISC/AKS-Utility to update file 410.1 ;5-11-92/08:04
|
---|
2 | ;;5.1;IFCAP;;Oct 20, 2000
|
---|
3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | EN1(X) ;X, THE TRANSACTION NUMBER ROOT, MUST BE IN THE FOLLOWING FORMATS:
|
---|
5 | ; 1. 3N "-" 2N "-" 3.4N
|
---|
6 | ; 2. 3N "-" 6AN
|
---|
7 | ; 3. 3N "-FC"
|
---|
8 | ; 4. 3N "-RQ"
|
---|
9 | ; 5. 3N "-" 2N "-" N "-" 3.4N "-" 6N
|
---|
10 | ; 6. 3N "-" 2N "-" N "-" 3.4N "-NONE"
|
---|
11 | ;
|
---|
12 | ;THIS ROUTINE WILL:
|
---|
13 | ; 1. IF THE ROOT EXISTS THE COUNT FIELD WILL BE INCREMENTED AND
|
---|
14 | ; THE NEW COUNT WILL BE CONCATINATED TO THE ROOT.
|
---|
15 | ; 2. IF THE ROOT DOESN'T EXIST IT WILL BE ADDED AS A NEW RECORD
|
---|
16 | ; AND COUNT WILL BE SET TO 1. THE COUNT WILL BE CONCATINATED
|
---|
17 | ; TO THE ROOT.
|
---|
18 | ; 3. IF THERE IS SOMETHING WRONG THE ROOT WILL BE SET TO "".
|
---|
19 | ;THE CONCATINATED COUNT WILL BE 4N WITH LEADING ZEROS AS NEEDED.
|
---|
20 | ;
|
---|
21 | ;FOR ANY CHANGE TO COUNT (INCREMENTING IT OR SETTING IT TO 1) THE
|
---|
22 | ;DATE FIELD WILL BE SET TO TODAY.
|
---|
23 | ;
|
---|
24 | N REPINO,Y,COUNT,CL1,DIC
|
---|
25 | S REPINO=X
|
---|
26 | K DR S DIC="^PRCS(410.1,",DIC(0)="LZ",DLAYGO=410.1 D ^DIC K DIC,DLAYGO I Y>0 S COUNT=$S($P(Y,"^",3):1,1:$P(Y(0),"^",2)+1),DA=+Y
|
---|
27 | I Y'>0 W !!,"'TRANSACTION NUMBER' file is corrupt.",!,"Duplicate enteries found for entry "_X S X="" Q
|
---|
28 | S DIE="^PRCS(410.1,",DR="1///^S X=COUNT;2///TODAY" D ^DIE K DIE,DA,DR
|
---|
29 | S COUNT="0000"_COUNT,CL1=$L(COUNT),COUNT=$E(COUNT,CL1-3,CL1),X=REPINO_"-"_COUNT
|
---|
30 | QUIT
|
---|
31 | EN2(X) ;THIS ENTRY POINT DOES THE SAME THING AS EN1 EXCEPT WITHOUT ANY LOCAL
|
---|
32 | ;OUTPUT TO THE CRT.
|
---|
33 | N REPINO,Y,COUNT,CL1,DIC
|
---|
34 | S REPINO=X
|
---|
35 | K DR S DIC="^PRCS(410.1,",DIC(0)="LZ",DLAYGO=410.1 D ^DIC K DIC,DLAYGO I Y>0 S COUNT=$S($P(Y,"^",3):1,1:$P(Y(0),"^",2)+1),DA=+Y
|
---|
36 | I Y'>0 S X="" Q
|
---|
37 | S DIE="^PRCS(410.1,",DR="1///^S X=COUNT;2////^S X=DT" D ^DIE K DIE,DA,DR
|
---|
38 | S COUNT="0000"_COUNT,CL1=$L(COUNT),COUNT=$E(COUNT,CL1-3,CL1),X=REPINO_"-"_COUNT
|
---|