cICHKSG ;CONTROLE GELIJKHEID BESTANDEN ;%ICHKSG; [ 02/22/00 9:01 AM ] ; T0 ;CONTROLE GELIJKHEID BESTANDEN ; T1 ;De voorbereiding voor uci ; is nog niet ten einde.; werd niet gestart.; T2 ;Even geduld...; T3 ;Bestand Systeem Checksum Aantal nodes Vglsch.; T4 ;Totaal ;bestanden; T5 ;De systemen staan exact gelijk.; T6 ;CONTROLE OP BESTANDEN OPSTARTEN\".[] = ja -[] = neen P[] = drukken"; T7 ;GELIEVE EERST ^cLOG(";","CHECK","G") OP TE ZETTEN; T8 ;Uci |;| werd niet gevonden.; T9 ;Schema ; T10 ; [] = vervolg: ; T11 ;HUIDIG SYSTEEM:; T12 ;Vergelijkingschema's : ; T13 ;Tonen resultaat compare\"[] = ja -[] = neen"; ; T0F ;CONTROLE EGALITE DES FICHIERS ; T1F ;La préparation pour uci ; n'a pas encore terminée.; n'a pas été démarrée.; T2F ;Un instant...; T3F ;Fichier Système Checksum Nombres d'ind. Sch.Comp.; T4F ;Total ;fichiers; T5F ;Les systèmes sont des copies identiques.; T6F ;DEMARRER LE CONTROLE DES FICHIERS\".[] = oui -[] = non P[] = imprimer"; T7F ;VEUILLEZ D'ABORD INITIALISER ^cLOG(";","CHECK","G"); T8F ;Uci |;| n'a pas été trouvé.; T9F ;Schema ; T10F ; [] = suite: ; T11F ;SYSTEME ACTUEL:; T12F ;Schemas de comparaison : ; T13F ;Visualisation des resultats de la comparation\"[] = oui -[] = non"; ; 1 D INI^cQ6,MASTER^cQ5 K S,G D HFD S LOG="^|home|ZZLOG(""CHECK"",""G"")",%LOG="^cLOG(cs,""CHECK"",""G"")" I '$D(@%LOG) S R=$P($T(@("T7"_QT)),U,2)_cs_$P($T(@("T7"_QT)),U,3) D MS G YZ S S="" F S S=$O(@%LOG@(S)) Q:S="" D . S home=$G(@%LOG@(S,"HOME")),UCIL=$G(@%LOG@(S,"UCI")),G=$G(@%LOG@(S,"GLOBALS"),"*") . K COMP . S FP=301 W @F,@F1," ",$P($T(@("T9"_QT)),U,2),S," -> ",$TR(G,D," ") . D UCHECK(home) I SW Q . K UCS S IU=0 F I=1:1:$L(UCIL,D) S K=$P(UCIL,D,I) I $L(K) S IU=IU+1,UCS(IU)=K . I IU D LOCK,ASK:SW2,SHOW:'SW1,UNLOCK,ASK:'SW1 S FP=2201 W @F,! S FP=124 W @FS S FP=2301 W @F G YZ ; YZ Q ; HFD S K=$P($T(@("T0"_QT)),";",2)_QN_" ",FP=203+$L(K) W @F61,@F11,@F1,@F,@F5 S FP=202 W @F,@F4,K,@F5 S FP=257 W @F,@F92,$P($T(@("T11"_QT)),U,2)," ",cs,@F93 I $L($G(S)),$L($G(G)) S FP=301 W @F,@F1," ",$P($T(@("T9"_QT)),U,2),S," -> ",$TR(G,D," ") Q ; LOCK S (SW1,SW2)=0 F I=1:1:IU D . L +@LOG@(S,0,UCS(I)):0 E W !?2,$P($T(@("T1"_QT)),U,2)_UCS(I)_$P($T(@("T1"_QT)),U,3) S SW1=1 Q . I '$D(@LOG@(S,0,UCS(I))) W !?2,$P($T(@("T1"_QT)),U,2)_UCS(I)_$P($T(@("T1"_QT)),U,4) S SW2=1 I SW1 S R="K\24\2\[] = ok\\1\" D R0 LOCKZ Q ; UNLOCK S IU=$G(IU) F I=1:1:IU L -@LOG@(S,0,UCS(I)) UNLOCKZ Q ; START(S,COMP) ; S = schema ; COMP = moet automatisch de compare opgestart worden ; S %UCI=$ZU(5),D="\",U=";" K C D UCILIB^cQMSMSW,MASTER^cQ5,^cQDDPCIR(.C) S LOG="^|home|ZZLOG(""CHECK"",""G"")",%LOG="^cLOG(cs,""CHECK"",""G"")" S home=$G(@%LOG@(S,"HOME")),UCIL=$G(@%LOG@(S,"UCI")),G=$G(@%LOG@(S,"GLOBALS"),"*") S I="" F S I=$O(@LOG@(S,0,"COMPARE",I)) Q:I="" K ^|home|ZZLOG("COMPARE","G",$P(^(I),U)) S IU=0 K UCS,@LOG@(S,0) F I=1:1:$L(UCIL,D) S K=$P(UCIL,D,I) I $L(K) S IU=IU+1,UCS(IU)=K F I=1:1:IU D . L +@LOG@(S,0,UCS(I)):2 E Q . S C="",UCI=UCS(I) F S C=$O(C(C)) Q:C="" I (","_$P(C(C),D,5)_",")[(","_$P(UCI,",",2)_",") S UCI=UCI_","_C . S $ZT="STARTERR^"_$T(+0) . J ^cICHKGLO(home,UCIL,G,S,cs,$G(COMP))[UCI]::2 S X=$ZB . L -@LOG@(S,0,UCS(I)) D IN^cQMSMSW(%UCI) STARTZ Q ; STARTERR ;trap start errors D ^cA105,^cA106 S @LOG@(S,0,UCS(I))=$ZE_D_D_DT_D_TD_D_DT_D_TD L -@LOG@(S,0,UCS(I)) Q ; ASK D UNLOCK S SW1=1 S R="K\22\3\"_$P($T(@("T6"_QT)),U,2)_"\1\\"".-P""[K&$L(K)\\\1" D R0 Q:K="-" I K="P" D ^cICHKSGP Q D START(S) Q ; SHOW S FP=402 W @F,@F1,$P($T(@("T2"_QT)),U,2),!! D CLEAN^cICHKGLO K ERROR F I=1:1:IU I $P($G(@LOG@(S,0,UCS(I))),D)'?1.N S ERROR=1 ; S (%G,K)="",$P(K,"-",78)="-",FP=402 W @F,@F1,$P($T(@("T3"_QT)),U,2),!?1,K,! S FP=508 W @F," ",@F92 F II=1:1:IU W UCS(II) W:II'=IU " - " W @F93," " S FP=623 W @FS S FP=580 W @F,@F1,! S $Y=6 S COMP="" F I=1:1 S COMP=$O(@LOG@(S,0,"COMPARE",COMP)) Q:COMP="" D . S K=^(COMP) . I I=1 W !,$P($T(@("T12"_QT)),U,2) S V=$L($P($T(@("T12"_QT)),U,2))+1 . W ?V,$P(K,U)," ",$P(K,U,2),! I I>1 W ! S COMP=1 I $Y>20 W ?1,$P($T(@("T10"_QT)),U,2),@F2 R K S $Y=6 W $C(13) S $X=0 I K="-" G SHOWV ; F S %G=$O(@LOG@(S,%G)) Q:%G="" D Q:K="-" . W ?1,$S(%G=0:$P($T(@("T4"_QT)),U,2),1:%G_$J("",10-$L(%G))) . F I=1:1:IU I $D(@LOG@(S,%G,UCS(I))) D .. S K=^(UCS(I)) .. W ?26,UCS(I)," " .. I $P(K,D)'?1.N W $P(K,D) .. I $P(K,D)?1.N D ... W $$INTERP^cQ9($P(K,D),0,16)," " ... W $$INTERP^cQ9($P(K,D,2),0,$S(%G=0:6,1:12)) ... W " ",$P($P(K,D,3),",",1,$L($P(K,D,3),",")-1) .. I %G=0 D ... I $P(K,D)?1.N W $P($T(@("T4"_QT)),U,3) ... W !?33,$P(K,D,3)," ",$P(K,D,4)," -> ",$P(K,D,5)," ",$P(K,D,6) .. W ! . I $Y>20 W ?1,$P($T(@("T10"_QT)),U,2),@F2 R K S $Y=6 W $C(13) S $X=0 . I '$G(ERROR),$O(@LOG@(S,0))="" W !!!?1,$P($T(@("T5"_QT)),U,2) SHOWV S FP=124 W @FS I $G(COMP),'SW1&'SW2 S R="K\22\3\"_$P($T(@("T13"_QT)),U,2)_"\1\\""-""[K" D R0 I '$L(K) D COMPARE(S) D HFD G SHOW I SW1 S R="K\24\2\[] = ok\\1\" D R0 SHOWZ Q ; COMPARE(S) ; tonen compare van de data N (%Q1,D,DD,DJ,DM,DT,F,F0,F1,F11,F12,F2,F3,F4,F5,F55,F56,F57,F58,F6,F60,F61,F62,F7,F70,F71,F8,F9,F90,F91,F92,F93,F94,F95,FDL,FG,FIN,FS,Q,QD,QM,QN,QP,QS,QT,QTU,QZ,TD,U,boot,bootrvg,client,cs,k,l,master,slave,workst,S,LOG,home,K) S COMP="" F S COMP=$O(@LOG@(S,0,"COMPARE",COMP)) Q:COMP="" D . S I=^(COMP) . N LOG . D S^cICMPSG($P(I,U),1) Q ; MS S FP=2403 W @F,@F2,@F4,R," [] = ok ",@F5,@F0 R K MSZ Q ; R0 S R0=$P(R,D,5) I $L(R0),R0'["""" S $P(R,D,5)=R0_"^"_$T(+0) R0A S R0=$P(R,D,7) I $L(R0),R0'="DCTR" S $P(R,D,7)="",R1=$P(R,D,8),R0=$P($T(@R0),U,2,99) S:$L(R1) R0=R0_"&("_R1_")" S $P(R,D,8)=R0 R0Z S $P(R,D,12)=$T(+0) K R0,R1 D ^cA100 Q ; v11 30.05.94 ; UCHECK(K) S SW=0 I '$L($ZU($P(K,","),$P(K,",",2))) S $ZT="UERR^"_$T(+0),J=$O(^|K|%) UCHECKZ Q ; UERR I $ZE[""!($ZE["NOSYS") S R=$P($T(@("T8"_QT)),U,2)_K_$P($T(@("T8"_QT)),U,3) UERRZ S SW=1 D MS G UCHECKZ ; ZZ ; 13.03.00 - 17 u 31 * V7.3