| 1 | FSCRPCSF ;SLC/STAFF-NOIS RPC Static File ;2/21/97  17:31
 | 
|---|
| 2 |  ;;1.1;NOIS;;Sep 06, 1998
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | FILE(IN,OUT) ; from FSCRPX (RPCStaticFile)
 | 
|---|
| 5 |  N FILE,NUM
 | 
|---|
| 6 |  S FILE=$P($G(^TMP("FSCRPC",$J,"INPUT",1)),U,1)
 | 
|---|
| 7 |  I '$L(FILE) Q
 | 
|---|
| 8 |  I FILE="SPEC" D SPEC Q
 | 
|---|
| 9 |  I FILE="FORMAT_SORT" D SORT Q
 | 
|---|
| 10 |  I FILE="FORMAT_DISPLAY" D DISPLAY Q
 | 
|---|
| 11 |  I '$D(^FSC(FILE,0)) Q
 | 
|---|
| 12 |  S NUM=0 F  S NUM=$O(^FSC(FILE,NUM)) Q:NUM<1  S ^TMP("FSCRPC",$J,"OUTPUT",NUM)=NUM_U_^(NUM,0)
 | 
|---|
| 13 |  Q
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 | SPEC ;
 | 
|---|
| 16 |  N DATA,NUM,UNUM
 | 
|---|
| 17 |  S NUM=0
 | 
|---|
| 18 |  S UNUM=0 F  S UNUM=$O(^FSC("SPEC",UNUM)) Q:UNUM<1  S DATA=$G(^(UNUM,0)) I $L(DATA) D
 | 
|---|
| 19 |  .S NUM=NUM+1
 | 
|---|
| 20 |  .S ^TMP("FSCRPC",$J,"OUTPUT",NUM)=UNUM_U_$P($G(^VA(200,UNUM,0)),U)_$P(DATA,U,2,99)
 | 
|---|
| 21 |  Q
 | 
|---|
| 22 |  ;
 | 
|---|
| 23 | SORT ;
 | 
|---|
| 24 |  N DESCEND,FIELD,LINE,LINE1,NUM,SUBNUM
 | 
|---|
| 25 |  S NUM=0 F  S NUM=$O(^FSC("FORMAT",NUM)) Q:NUM<1  S LINE=$G(^(NUM,0)) I $P(LINE,U,2)="S" D
 | 
|---|
| 26 |  .S FIELD="",DESCEND=""
 | 
|---|
| 27 |  .S SUBNUM=0 F  S SUBNUM=$O(^FSC("FORMAT",NUM,2,SUBNUM)) Q:SUBNUM<1  S LINE1=$G(^(SUBNUM,0)) D
 | 
|---|
| 28 |  ..I +LINE1<1 Q
 | 
|---|
| 29 |  ..S DESCEND=$P(LINE1,U,8) I 'DESCEND S DESCEND=0
 | 
|---|
| 30 |  ..S FIELD=FIELD_$P(LINE1,U)_":"_DESCEND_";"
 | 
|---|
| 31 |  .S ^TMP("FSCRPC",$J,"OUTPUT",NUM)=NUM_U_LINE S $P(^(NUM),U,7)=FIELD
 | 
|---|
| 32 |  Q
 | 
|---|
| 33 |  ;
 | 
|---|
| 34 | DISPLAY ;
 | 
|---|
| 35 |  N FIELD,LINE,LINE1,NUM,SUBNUM
 | 
|---|
| 36 |  S NUM=0 F  S NUM=$O(^FSC("FORMAT",NUM)) Q:NUM<1  S LINE=$G(^(NUM,0)) I $P(LINE,U,2)="F" D
 | 
|---|
| 37 |  .S FIELD=""
 | 
|---|
| 38 |  .S SUBNUM=0 F  S SUBNUM=$O(^FSC("FORMAT",NUM,2,SUBNUM)) Q:SUBNUM<1  S LINE1=$G(^(SUBNUM,0)) D
 | 
|---|
| 39 |  ..I +LINE1<1 Q
 | 
|---|
| 40 |  ..S FIELD=FIELD_$P(LINE1,U)_";"
 | 
|---|
| 41 |  .S ^TMP("FSCRPC",$J,"OUTPUT",NUM)=NUM_U_LINE S $P(^(NUM),U,7)=FIELD
 | 
|---|
| 42 |  Q
 | 
|---|