1 | DDBR1 ;SFISC/DCL-VA FILEMAN BROWSER PROTOCOLS ;NOV 04, 1996@13:47
|
---|
2 | ;;22.0;VA FileMan;;Mar 30, 1999
|
---|
3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | Q
|
---|
5 | GOTO N X
|
---|
6 | GTR S X(1)=$G(X(1)),X(2)="GoTo >" W $$WS(.X) D G:X=""!(X=U) OUT
|
---|
7 | .D EN^DIR0($P(DDBSY,";",3)-1,$L($G(X(2)))+2,30,1,"",100,"","","KPW",.X)
|
---|
8 | .K DIR0
|
---|
9 | .Q
|
---|
10 | I $E(X)="?" S X(1)="* Screen (default), line"_$S('DDBRHTF:" or column",1:"")_" number preceeded by 'S', 'L'"_$S('DDBRHTF:" or 'C'",1:"")_" *" G GTR
|
---|
11 | I X S X=X*DDBSRL G LINE
|
---|
12 | S $E(X)=$TR($E(X),"bclst","BCLST")
|
---|
13 | I X["S",$TR($P(X,"S",2)," ") S X=$TR($P(X,"S",2)," ")*DDBSRL G LINE
|
---|
14 | I X["L",$TR($P(X,"L",2)," ") S X=$TR($P(X,"L",2)," ") G LINE
|
---|
15 | I X["C",'DDBRHTF,$TR($P(X,"C",2)," ") S X=$TR($P(X,"C",2)," ") I X>0&(X<256) S DDBSF=X G COLENT^DDBR0
|
---|
16 | I $E(X)="T" G TOP^DDBR0
|
---|
17 | I $E(X)="B" G BOT^DDBR0
|
---|
18 | G OUT
|
---|
19 | LINE S DDBL=$S(X'>DDBSRL:0,X>DDBTL:DDBTL,1:X) D PSR^DDBR0()
|
---|
20 | Q
|
---|
21 | NOOF N N
|
---|
22 | S N=1 I $D(DDBFNO) N D,X G FNO
|
---|
23 | S X(1)=" * [ NO PREVIOUS FIND STRING AVAILABLE ] *"
|
---|
24 | N Q S N=0 G BPR
|
---|
25 | FIND N D,Q,X
|
---|
26 | N N
|
---|
27 | S N=0
|
---|
28 | BPR S X(1)=$G(X(1)),X(2)="Find What: " W $$WS(.X) D G:X="" OUT
|
---|
29 | .N Y
|
---|
30 | .D EN^DIR0($P(DDBSY,";",3)-1,$L($G(X(2)))+2,30,1,$P($G(DDBFNO),U,3,255),100,"","","KPW",.X,.Y)
|
---|
31 | .K DIR0
|
---|
32 | .S:$P($G(Y),U)="U" X=X_"/U"
|
---|
33 | .Q
|
---|
34 | S Q=$TR($E(X,$L(X)-1,$L(X)),"u","U")
|
---|
35 | S D=$S(Q="/U":-1,1:1)
|
---|
36 | S:D=-1 X=$E(X,1,$L(X)-2)
|
---|
37 | Q:X=""
|
---|
38 | I $E(X)="?" S X(1)=" * [ Please enter any characters <cr>, '^' <cr> (exit) ] *" G BPR
|
---|
39 | FNO N I,MATCHI,MATCHX
|
---|
40 | I N S D=$P(DDBFNO,"^",2),X=$P(DDBFNO,"^",3,255)
|
---|
41 | S X(1)="",X(2)=" * [ ...Searching "_$S(D=1:"'DOWN'",1:"'UP'")_" for "_X_"... ] *" W $$WS(.X)
|
---|
42 | D S:I<0 I=0
|
---|
43 | .I N&(D=1) S I=DDBL Q
|
---|
44 | .I N S I=DDBL-(DDBSRL-1) Q
|
---|
45 | .I D=1 S I=DDBL-DDBSRL Q
|
---|
46 | .S I=DDBL+1
|
---|
47 | .Q
|
---|
48 | D
|
---|
49 | .N XUC
|
---|
50 | .S XUC=$$U(X)
|
---|
51 | .I DDBDM D Q
|
---|
52 | ..I DDBZN D Q
|
---|
53 | ...F S I=$O(^TMP("DDB",$J,I),D) Q:I'>0 I $$U($G(^(I,0)))[XUC S MATCHI=I,MATCHX=^(0) Q
|
---|
54 | ...Q
|
---|
55 | ..F S I=$O(^TMP("DDB",$J,I),D) Q:I'>0 I $$U(^(I))[XUC S MATCHI=I,MATCHX=^(I) Q
|
---|
56 | ..Q
|
---|
57 | .I DDBZN D Q
|
---|
58 | ..F S I=$O(@DDBSA@(I),D) Q:I'>0 I $$U($G(@DDBSA@(I,0)))[XUC S MATCHI=I,MATCHX=@DDBSA@(I,0) Q
|
---|
59 | ..Q
|
---|
60 | .F S I=$O(@DDBSA@(I),D) Q:I'>0 I $$U(@DDBSA@(I))[XUC S MATCHI=I,MATCHX=@DDBSA@(I) Q
|
---|
61 | .Q
|
---|
62 | I $G(MATCHI) D S DDBFNO=DDBL_"^"_D_"^"_X Q
|
---|
63 | .S DDBSF=1,DDBST=IOM F Q:$F(MATCHX,X)'>DDBST D
|
---|
64 | ..S DDBSF=$O(@DDBC@(DDBSF)) S:DDBSF="" DDBSF=$O(@DDBC@(""))
|
---|
65 | ..S DDBST=DDBSF+(IOM-1)
|
---|
66 | ..Q
|
---|
67 | .I I+(DDBSRL)>DDBTL S I=DDBTL-(DDBSRL-1)
|
---|
68 | .I DDBTL'>DDBSRL S I=1
|
---|
69 | .S DDBL=I-1 D SDLRH(I,X),RCLSI^DDBR0
|
---|
70 | .Q
|
---|
71 | S X(1)="",X(2)=" * [ NO"_$S(N:" OTHER ",1:" ")_"MATCH FOUND ] *" W $C(7),$$WS(.X) H 3
|
---|
72 | D PSRH
|
---|
73 | Q
|
---|
74 | OUT D PSR^DDBR0()
|
---|
75 | Q
|
---|
76 | PSRH S DDBL=$S(DDBL'>DDBSRL:0,1:DDBL-DDBSRL)
|
---|
77 | D SDLRH(DDBL+1,X)
|
---|
78 | Q
|
---|
79 | SDL ;
|
---|
80 | SDLRH(L,HLS) N I,J,SFR,STO
|
---|
81 | S DX=0,SFR=$P(DDBSY,";",2),STO=$P(DDBSY,";",3),J=L
|
---|
82 | S DY=SFR X IOXY
|
---|
83 | I DDBZN F I=SFR:1:STO D
|
---|
84 | .W:I'=SFR !
|
---|
85 | .W $P(DDGLCLR,DDGLDEL)
|
---|
86 | .I J=L,$D(@DDBSA@(L)) W $$HL($$HTD^DDBR0(@DDBSA@(L,0),L),HLS,$P(DDGLVID,DDGLDEL,6),$P(DDGLVID,DDGLDEL,7)) S DDBL=DDBL+1,L=L+1
|
---|
87 | .S J=J+1
|
---|
88 | .Q
|
---|
89 | I 'DDBZN F I=SFR:1:STO D
|
---|
90 | .W:I'=SFR !
|
---|
91 | .W $P(DDGLCLR,DDGLDEL)
|
---|
92 | .I J=L,$D(@DDBSA@(L)) W $$HL($$HTD^DDBR0(@DDBSA@(L),L),HLS,$P(DDGLVID,DDGLDEL,6),$P(DDGLVID,DDGLDEL,7)) S DDBL=DDBL+1,L=L+1
|
---|
93 | .S J=J+1
|
---|
94 | .Q
|
---|
95 | Q
|
---|
96 | HL(X,S,ON,RS,F) S X=$G(X),S=$G(S),F=$G(F)=1
|
---|
97 | G:F CS
|
---|
98 | N C,I,P,T,XU,SU,SL,TL,XL
|
---|
99 | S XU=$$U(X),SU=$$U(S),SL=$L(S),C=$L(XU,SU)-1,T="",XL=0
|
---|
100 | Q:'C X
|
---|
101 | F I=1:1:C S P=$F(XU,SU,XL),T=T_$E(X,XL,P-SL-1)_ON_$E(X,P-SL,P-1)_RS,XL=P
|
---|
102 | S T=T_$E(X,XL,255)
|
---|
103 | Q T
|
---|
104 | U(X) Q $TR(X,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
|
---|
105 | CS Q:$L(X,S)'>1 X
|
---|
106 | N C,I,P,T
|
---|
107 | S T="",C=$L(X,S)
|
---|
108 | F I=1:1:C S P=$P(X,S,I),T=T_P_$S(I'=C:ON_S_RS,1:"")
|
---|
109 | Q T
|
---|
110 | HELPS N DDBHELPS
|
---|
111 | S DDBHELPS=$S(DDBFLG["A":83,1:71)+DDBSRL
|
---|
112 | HELP I $E(DDBSA,1,11)="^DI(.84,920" S DDBL=0 D SDLR^DDBR0(1),RLPIR^DDBR0 Q
|
---|
113 | N DDBHA S DDBHA=$S(DDBFLG["A":"^DI(.84,9202,2)",1:"^DI(.84,9201,2)")
|
---|
114 | I $D(^TMP("DDBLST",$J,"J")) D
|
---|
115 | .K ^TMP("DDBLST",$J,"JS")
|
---|
116 | .M ^TMP("DDBLST",$J,"JS")=^TMP("DDBLST",$J,"J")
|
---|
117 | .K ^TMP("DDBLST",$J,"J")
|
---|
118 | .Q
|
---|
119 | D BROWSE^DDBR(DDBHA,"PNH"_$S(DDBFLG["A":"A",1:""),"VA FileMan Help Document",$G(DDBHELPS),"",IOTM-1,IOBM+1)
|
---|
120 | K ^TMP("DDBLST",$J,"J")
|
---|
121 | I $D(^TMP("DDBLST",$J,"JS")) M ^TMP("DDBLST",$J,"J")=^TMP("DDBLST",$J,"JS") K ^TMP("DDBLST",$J,"JS")
|
---|
122 | W @IOSTBM
|
---|
123 | D PSR^DDBR0(1)
|
---|
124 | Q
|
---|
125 | LC(L,C) Q:$G(L)'>0 ""
|
---|
126 | S C=$G(C,"-")
|
---|
127 | Q $TR($J("",L)," ",C)
|
---|
128 | WS(X) S DX=0,DY=$P(DDBSY,";",3)-3 X IOXY
|
---|
129 | W $P(DDGLGRA,DDGLDEL)
|
---|
130 | W $TR($J("",IOM)," ",$P(DDGLGRA,DDGLDEL,3))
|
---|
131 | W $P(DDGLGRA,DDGLDEL,2)
|
---|
132 | W !,$P(DDGLCLR,DDGLDEL),$G(X(1))
|
---|
133 | W !,$P(DDGLCLR,DDGLDEL),$G(X(2))
|
---|
134 | W !,$P(DDGLCLR,DDGLDEL),$G(X(3))
|
---|
135 | S DY=$P(DDBSY,";",3),DX=$L($G(X(2)))+2 X IOXY
|
---|
136 | Q ""
|
---|