| 1 | FSCUC ;SLC/STAFF-NOIS Utilities Count ;1/17/98  14:29 | 
|---|
| 2 | ;;1.1;NOIS;;Sep 06, 1998 | 
|---|
| 3 | ; | 
|---|
| 4 | CALLNUM(SITE0,DATE,CALLREF,OK) ; from FSCELID, FSCRPCNC | 
|---|
| 5 | ; constructs call number from (site,date) | 
|---|
| 6 | N COUNT S OK=0 | 
|---|
| 7 | S CALLREF="" | 
|---|
| 8 | I '$L(SITE0) Q | 
|---|
| 9 | I 'DATE Q | 
|---|
| 10 | D COUNT(DATE,.COUNT,.OK) | 
|---|
| 11 | I 'OK Q | 
|---|
| 12 | S CALLREF=$S($L($P(SITE0,U,3)):$P(SITE0,U,3),1:"ZZZ")_"-"_$E(DATE,4,5)_$E(DATE,2,3)_"-"_$S($P(SITE0,U,11):$P(SITE0,U,11),1:"N")_COUNT | 
|---|
| 13 | Q | 
|---|
| 14 | ; | 
|---|
| 15 | COUNT(DATE,COUNT,OK) ;returns the next available counting number for | 
|---|
| 16 | N DA,DIK,NUM S OK=1 | 
|---|
| 17 | S DATE=$E(DATE,1,5),NUM=+$O(^FSCD("COUNT","B",DATE,0)) | 
|---|
| 18 | D | 
|---|
| 19 | .I 'NUM D  Q | 
|---|
| 20 | ..L +^FSCD("COUNT"):30 I '$T S OK=0 Q | 
|---|
| 21 | ..S COUNT=1,NUM=1+$P(^FSCD("COUNT",0),U,3) | 
|---|
| 22 | ..F  Q:'$D(^FSCD("COUNT",NUM))  S NUM=NUM+1 | 
|---|
| 23 | ..S $P(^FSCD("COUNT",0),U,3)=NUM,$P(^(0),U,4)=$P(^(0),U,4)+1,^(NUM,0)=DATE_U_1 | 
|---|
| 24 | ..S DA=NUM,DIK="^FSCD(""COUNT""," D IX1^DIK | 
|---|
| 25 | ..L -^FSCD("COUNT") | 
|---|
| 26 | .L +^FSCD("COUNT",NUM):30 I '$T S OK=0 Q | 
|---|
| 27 | .S COUNT=$P(^FSCD("COUNT",NUM,0),U,2)+1,$P(^(0),U,2)=COUNT | 
|---|
| 28 | .L -^FSCD("COUNT",NUM) | 
|---|
| 29 | I 'OK Q | 
|---|
| 30 | S COUNT=$TR($J(COUNT,4)," ",0) | 
|---|
| 31 | Q | 
|---|