cQFC ;Check Globals ;cQFC; ; FCC ;Find Control Characters N V D GD^cQVGGLO($ZU(5),.V) S G="" K A F S G=$O(V(G)) Q:G="" I $E(G,1,2)'="^%" D Cone(G) ; W !,"Globals containing control characters ",! ZW A W !! FCCZ Q ; FC1(X,Y,Z) ;Find character X and replace with Y if Z N A,B,C,DATA,G,K,SW,V S X=+$G(X),Y=+$G(Y),Z=+$G(Z) Q:'X I Z Q:'Y K A,B,V S DBP=$ZU(5) D NS^cQ21(.A) S B=A(DBP,"globals") D DB^cQ21(.A) S DBP=A(B) K A K A D GD^cQVGGLO(DBP,.A) S $P(DBP,"\",$L(DBP,"\")-1)=0 K B D GD^cQVGGLO(DBP,.B) M V=A,V=B K A,B S K="^CacheStream\^CacheTemp\^DWORD\^ERROR\^HULP\^RGTEG\^ROUTINE\^SQL\^TEMP\^TKF\^TMP\^mtemp\^odd\^r",B="" F I=1:1:$L(K,"\") F S B=$O(V(B)) Q:B="" I $E(B,1,$L($P(K,"\",I)))=$P(K,"\",I) K V(B) F S B=$O(V(B)) Q:B="" I $E(B,1,2)'="^%" S G=B D . F S G=$Q(@G) Q:G="" S DATA=@G,SW=0 D .. I G[$C(X) S A(G)=G_" Globalreference",SW=1 .. I DATA[$C(X) S A(G)=G_"="_DATA_" Globaldata",SW=1 I Z S @G=$TR(DATA,$C(X),$C(Y)) .. I SW S A(G)=A(G)_" contains $C("_$G(X)_")" W !,A(G) I Z W !,"Changed to $C(",Y,")" FC1Z Q ; ISO15(X) ;If X=1, change data S X=+$G(X,0) D FC1(128,164,X) D FC1(130,39,X) D FC1(132,39,X) D FC1(133,46,X) D FC1(145,39,X) D FC1(146,39,X) D FC1(147,39,X) D FC1(148,39,X) D FC1(152,39,X) ISO15Z Q ; FSTR(B) ;Find data B S G="" K A F S G=$O(^$G(G)) Q:G="" I ($E(G,1,2)'="^%")&(G'="^rOBJ") D Cone(G,B) ; W !,"Globals containing ",B,! ZW A W !! FSTRZ Q ; GLO(R) ;find null subscripts in globals N X S R=$G(R),X=$ZU(68,1,1) ;Allow null subscripts I '$L(R) D GD^cQVGGLO($ZU(5),.V) S X="" F S X=$O(V(X)) Q:X="" D GLO1(X) E D GLO1(R) S X=$ZU(68,1,0) ;Disallow null subscripts GLOZ Q ; GLO1(R) S G=$G(R) Q:'$L(G) F S G=$QUERY(@G) Q:G="" D . R *K:0 IF K'=-1 W !,"Currently at ",G . F I=1:1:$QL(G) S FOUND=$L($QS(G,I))=0 I FOUND W !,"Null subscript found in ",G,"=",@G Q GLO1Z Q ; Cone(G,X) ;Check Global G N SW S SW=0 F S G=$Q(@G) Q:G="" S DATA=@G D Q:SW . I '$L($G(X)) D .. I G?.E1C.E S A(G)=G_" Globalreference",SW=1 .. I DATA?.E1C.E S A(G)=G_"="_DATA_" Globaldata",SW=1 .. I SW S A(G)=A(G)_" contains control characters" W !,A(G) . I $L($G(X)) D .. I G[X S A(G)=G_" Globalreference",SW=1 .. I DATA[X S A(G)=G_"="_DATA_" Globaldata",SW=1 .. I SW S A(G)=A(G)_" contains "_$G(X) W !,A(G) ConeZ Q ; ZZ ; 17.01.2012 - 15:58 * Cache-r6.4.9