1 | XBDHDSP ; IHS/ADC/GTH - PUTS SPACES BETWEEN HEADERS ; [ 02/07/97 3:02 PM ]
|
---|
2 | ;;4.0;XB;;Jul 20, 2009;Build 2
|
---|
3 | ;
|
---|
4 | NEW ;
|
---|
5 | NEW XBDHCHN1,XBDHI,XBDHTH,XBDHREP
|
---|
6 | INIT ;
|
---|
7 | S XBDHTH=XBDHCHN-1,XBDHNSL=XBDHTHLW-XBDHCHLW
|
---|
8 | I $P(^TMP("XBDH",$J,"HEADER",1),V,8)>0 G EXIT
|
---|
9 | S $P(^TMP("XBDH",$J,"HEADER",XBDHTH),V,8)=0
|
---|
10 | W !!,"IT IS NOW TIME TO INSERT SPACES BETWEEN HEADER FIELDS",!
|
---|
11 | CQ ;
|
---|
12 | S DIR(0)="SO^1:REPATITIVE SPACING;2:MANUAL SPACING;3:AUTOMATIC SPACING",DIR("A")="Your choice",DIR("B")=1,DIR("?")="Automatic spacing puts maximum no. of spaces possible between fields."
|
---|
13 | D ^DIR
|
---|
14 | KILL DIR
|
---|
15 | S XBDHX=Y
|
---|
16 | I XBDHX="" G AUTO
|
---|
17 | I XBDHX=1 G REP
|
---|
18 | MANUAL ;
|
---|
19 | S XBDHCHN1=""
|
---|
20 | F XBDHL=0:0 S XBDHCHN1=$O(^TMP("XBDH",$J,"HEADER",XBDHCHN1)) G:XBDHCHN1=XBDHTH!(XBDHCHN1="") EXIT D MAN
|
---|
21 | EXIT ;
|
---|
22 | S DIR("B")="NO",DIR(0)="YO",DIR("A")="Want to make any more spacing changes"
|
---|
23 | D ^DIR
|
---|
24 | KILL DIR
|
---|
25 | I Y=1 W !! G CQ
|
---|
26 | I Y=U S XBDHQUIT="" Q
|
---|
27 | Q
|
---|
28 | ;
|
---|
29 | MAN ;
|
---|
30 | S XBDHY=$C(64+XBDHCHN1),XBDHZ=^TMP("XBDH",$J,"HEADER",XBDHCHN1)
|
---|
31 | W !!,"PUT SPACES AFTER HEADER """,$C(64+XBDHCHN1),""""
|
---|
32 | W !,"TOTAL NUMBER OF UNUSED COLUMNS LEFT: ",XBDHNSL
|
---|
33 | W !,"TOTAL NUMBER OF HEADERS LEFT: ",XBDHTH+1-XBDHCHN1,!
|
---|
34 | SP ;
|
---|
35 | S DIR(0)="NO^::",DIR("A")="How many spaces do you want after field "_$C(64+XBDHCHN1)
|
---|
36 | S:$G(DIR("B"))]"" DIR("B")=XBDHX
|
---|
37 | D ^DIR
|
---|
38 | KILL DIR
|
---|
39 | S XBDHX=Y
|
---|
40 | I XBDHX="" S XBDHCHN1=XBDHTH-1 Q
|
---|
41 | I XBDHX?1"^"1U,$E(XBDHX,2)']$C(64+XBDHTH),($A(XBDHX)-64)'=XBDHTH S XBDHCHN1=$A($E(XBDHX,2))-64 G MAN
|
---|
42 | I XBDHX'=+XBDHX W *7,*7,*13,$J("",IOM),*13 G SP
|
---|
43 | I (XBDHX-$P(^TMP("XBDH",$J,"HEADER",XBDHCHN1),V,8))>XBDHNSL W *7,*7,*13,$J("",IOM),*13 G SP
|
---|
44 | S XBDHY=$P(^TMP("XBDH",$J,"HEADER",XBDHCHN1),V,8),$P(^TMP("XBDH",$J,"HEADER",XBDHCHN1),V,8)=XBDHX,XBDHNSL=XBDHNSL-XBDHX+XBDHY
|
---|
45 | D ^XBDHD1
|
---|
46 | Q
|
---|
47 | ;
|
---|
48 | AUTO ;
|
---|
49 | S XBDHNSL=(XBDHTHLW-XBDHCHLW),XBDHY=XBDHNSL\(XBDHTH-1),XBDHZ=XBDHNSL-(XBDHY*(XBDHTH-1)),XBDHCHN1=""
|
---|
50 | F XBDHI=1:1 S XBDHCHN1=$O(^TMP("XBDH",$J,"HEADER",XBDHCHN1)) Q:XBDHCHN1=XBDHTH!(XBDHCHN1="") S XBDHX=XBDHY S:XBDHI'>XBDHZ XBDHX=XBDHX+1 S $P(^TMP("XBDH",$J,"HEADER",XBDHCHN1),V,8)=XBDHX
|
---|
51 | S XBDHNSL=0
|
---|
52 | D ^XBDHD1
|
---|
53 | G EXIT
|
---|
54 | ;
|
---|
55 | REP ;
|
---|
56 | W !
|
---|
57 | S XBDHNSL=(XBDHTHLW-XBDHCHLW),XBDHREP=XBDHNSL\(XBDHTH-1),XBDHCHN1=""
|
---|
58 | EREP ;
|
---|
59 | S DIR(0)="NO^0:"_XBDHREP_":",DIR("A")="How many spaces between each header field",DIR("B")=XBDHREP
|
---|
60 | D ^DIR
|
---|
61 | KILL DIR
|
---|
62 | S XBDHX=Y
|
---|
63 | I XBDHX'=+XBDHX W *7,*7,*13,$J("",IOM),*13 G EREP
|
---|
64 | I XBDHX>XBDHREP W *7,*7,*13,$J("",IOM),*13 G EREP
|
---|
65 | I XBDHX="" S XBDHX=0
|
---|
66 | F XBDHI=1:1 S XBDHCHN1=$O(^TMP("XBDH",$J,"HEADER",XBDHCHN1)) Q:XBDHCHN1=XBDHTH!(XBDHCHN1="") S:XBDHCHN1'["." $P(^TMP("XBDH",$J,"HEADER",XBDHCHN1),V,8)=XBDHX,XBDHNSL=XBDHNSL-XBDHX
|
---|
67 | D ^XBDHD1
|
---|
68 | G EXIT
|
---|
69 | ;
|
---|
70 | NOTES ;
|
---|
71 | ; PUTS SPACES BETWEEN FIELDS ON THE HEADER LINE
|
---|
72 | ; INPUT = XBDHCHLW,XBDHTHLW,XBDHCHN
|
---|
73 | ; OUTPUT = 8TH PIECE OF ^TMP("XBDH",$J,"HEADER",XBDHCHN)
|
---|
74 | ; IGNORES PURE MUMPS EXPRESSION AS DESIGNATED BY DECIMAL XBDHCHN
|
---|