cAN002 ;Controle indexen ;%AN002 ; [ 01/05/01 2:55 PM ] G 1 ; T0 ;Controle indexen ; T1 ; Controle indexbestanden ; T2 ;Uw keuze\"-[] = einde programma"; T3 ;Bevestiging\".[] = ok ,[] = hernemen"; T4 ;Enkel B-index is toegelaten !; ; T0F ;Contrôle des index ; T1F ; Contrôle des fichiers d'index ; T2F ;Votre choix\"-[] = fin du programme"; T3F ;Confirmation\".[] = ok ,[] = reprendre"; T4F ;Seulement B-index est permis !; ; T0E ;Check index files ; T1E ; Check index files ; T2E ;Your choice\"-[] = end program"; T3E ;Confirmation\".[] = ok ,[] = retry"; T4E ;Only B-index is permitted !; ; S1(UQC,USC,LIJN,CONT) ; controle bestand voor alle indexen ; CONT=1 : controle op integriteit S1A N A,B,ATL,I,J,IREF,L,LOGTAB,Q2,SW3,TOT,UDD,UFU,UI1,UREF,USL,IREF2 S1B S LOGTAB=$G(^DMC(UQC,USC,"LOGTAB")) I $L(LOGTAB) S LOGTAB=$NA(@LOGTAB) S UDD=^DMC(UQC,USC,"DATA"),UREF=^("DATA","REF"),IREF=^("INDEX"),IREF2=$G(^("INDEX2")) ; oude indexbestanden verwijderen S1C I UDD<3,'$G(CONT) S Q2=$G(^("OUD")) I $L(Q2) K @Q2 I $L(LOGTAB) D LD^cAN000("K",$ZR) S1D S SW3=1,I="" F S I=$O(^DMC(UQC,USC,"INDEX",I)) Q:I="" S J=^(I) D . S J=$P(J,D) I '$G(CONT) K @IREF@(J) I $L(LOGTAB) D LD^cAN000("K",$ZR) . I J\100>SW3 S SW3=J\100 S I="" F S I=$O(^DMC(UQC,USC,"INDEX2",I)) Q:I="" S J=^(I) D . S J=$P(J,D) I '$G(CONT) K @IREF2@(J) I $L(LOGTAB) D LD^cAN000("K",$ZR) . I J\100>SW3 S SW3=J\100 S1E S I="" F S I=$O(^DMC(UQC,USC,"MULTI",I)) Q:I="" S J=I D . I '$G(CONT) K @IREF@(J) I $L(LOGTAB) D LD^cAN000("K",$ZR) . F L=1:1 Q:'$D(^DMC(UQC,USC,"MULTI",I,L)) S J=$P(^(L),D) I J\100>SW3 S SW3=J\100 S I="" F S I=$O(^DMC(UQC,USC,"MULTI2",I)) Q:I="" S J=I D . I '$G(CONT) K @IREF2@(J) I $L(LOGTAB) D LD^cAN000("K",$ZR) . F L=1:1 Q:'$D(^DMC(UQC,USC,"MULTI2",I,L)) S J=$P(^(L),D) I J\100>SW3 S SW3=J\100 S1F I '$G(CONT) D . K @IREF@("BAR") I $L(LOGTAB) D LD^cAN000("K",$ZR) . I $L(IREF2) K @IREF2@("BAR") I $L(LOGTAB) D LD^cAN000("K",$ZR) . I $L(LOGTAB) D OPB^cANLOG(LOGTAB) ; nieuwe indexbestanden opzetten S1G S UFU=$S($G(CONT):"C",1:"I"),USL=D,$P(USL,D,30)=D F I=1:1:SW3 S A(I)=USL S1H S TOT=$G(^DMC(UQC,USC,"DIN")) I $L(TOT) S TOT=$G(@TOT) I UFU="C" D START^cAN009 S1I S (ATL,UI1)=$S(UDD=4:"",1:0) F S UI1=$O(@UREF) Q:UI1="" D . D R^cAN000,U^cAN000 . S ATL=ATL+1 I ATL=1,UDD>2,UI1'?1.N1"E"1.N.E S TOT=TOT-UI1 . I $G(LIJN),ATL#10=1,$P(B(1),D,30)'=2 W /CUP(LIJN,3) D W /WDSP .. I UDD>2,ATL2:UI1,1:$TR($P(B(1),D,1,2),D," ")),/WCML S1J I $G(LIJN) W /CUP(LIJN,3),"100 %",/WCML,/WDSP I UFU="C" D STOP^cAN009 S1Z Q ; ; aantal bestanden 1 D P^cA612(2,1,20,80,1,1,0,0,$P($T(@("T1"_QT)),U,2),0,0,7,1,1) ; ; keuze bestand 2 S Q1=$$^cANSYN("DMS","",$G(Q1),0,0,"","I $$O^cAN007(UI1)") I K="-" G YZ 21 D DMS^cAN000("UQC","USC",Q1) 23 S K=$P(^DMC(UQC,USC,"TAAL",$E(QT_"N")),D,2) 25 W /CUP(2,3),$$UC^cAFA1($E(K)),$E(K,2,99),/WCMD 27 S R="K\22\3\"_$P($T(@("T3"_QT)),U,2)_"\1\\""-,.""[K&$L(K)" D R0 I K="." D S1(UQC,USC,4,0) 29 G 2 ; YZ D C^cA612 Q ; R0 S $P(R,D,12)=$T(+0) D ^cAN1000 Q ; v12 23.01.95 ; S2(UQC,USC,LIJN,BI,NOLOGTAB,CONT) ; controle bestand voor slechts 1 B-index (BI) ; CONT=1 : controle op integriteit S2A N A,B,ATL,I,J,IREF,L,LOGTAB,Q2,SW3,TOT,UDD,UFU,UI1,UREF,USL,IREF2 I BI'?3N W !!,$P($T(@("T4"_QT)),U,2) G S2Z S2B S LOGTAB=$G(^DMC(UQC,USC,"LOGTAB")) I $L(LOGTAB) S LOGTAB=$NA(@LOGTAB) S UDD=^DMC(UQC,USC,"DATA"),UREF=^("DATA","REF"),IREF=^("INDEX"),IREF2=$G(^("INDEX2")) ; oud indexbestand verwijderen S2D S SW3=1,I="" F S I=$O(^DMC(UQC,USC,"INDEX",I)) Q:I="" S J=^(I) D . S J=$P(J,D) I J'=BI Q . I '$G(CONT) K @IREF@(J) I $L(LOGTAB) D LD^cAN000("K",$ZR) . I J\100>SW3 S SW3=J\100 S I="" F S I=$O(^DMC(UQC,USC,"INDEX2",I)) Q:I="" S J=^(I) D . S J=$P(J,D) I J'=BI Q . I '$G(CONT) K @IREF2@(J) I $L(LOGTAB) D LD^cAN000("K",$ZR) . I J\100>SW3 S SW3=J\100 S I="" F S I=$O(^DMC(UQC,USC,"MULTI",I)) Q:I="" D . S L="" F S L=$O(^DMC(UQC,USC,"MULTI",I,L)) Q:L="" D .. S J=$P(^(L),D) I J'=BI Q .. I '$G(CONT) K @IREF@(I) I $L(LOGTAB) D LD^cAN000("K",$ZR) .. I J\100>SW3 S SW3=J\100 S I="" F S I=$O(^DMC(UQC,USC,"MULTI2",I)) Q:I="" D . S L="" F S L=$O(^DMC(UQC,USC,"MULTI2",I,L)) Q:L="" D .. S J=$P(^(L),D) I J'=BI Q .. I '$G(CONT) K @IREF2@(I) I $L(LOGTAB) D LD^cAN000("K",$ZR) .. I J\100>SW3 S SW3=J\100 I '$G(CONT),BI="BAR" D . K @IREF@("BAR") I $L(LOGTAB) D LD^cAN000("K",$ZR) . I $L(IREF2) K @IREF2@("BAR") I $L(LOGTAB) D LD^cAN000("K",$ZR) S2F I '$G(CONT),$L(LOGTAB) D OPB^cANLOG(LOGTAB) ; nieuw indexbestand opzetten S2G S UFU=$S($G(CONT):"C",1:"I")_D_BI,USL=D,$P(USL,D,30)=D F I=1:1:SW3 S A(I)=USL I $P(UFU,D)="C" D START^cAN009 S2H S TOT=$G(^DMC(UQC,USC,"DIN")) I $L(TOT) S TOT=$G(@TOT) S2I S (ATL,UI1)=$S(UDD=4:"",1:0) F S UI1=$O(@UREF) Q:UI1="" D . D R^cAN000,U^cAN000 . S ATL=ATL+1 I ATL=1,UDD>2,UI1'?1.N1"E"1.N.E S TOT=TOT-UI1 . I $G(LIJN),ATL#10=1,$P(B(1),D,30)'=2 W /CUP(LIJN,3) D W /WDSP .. I UDD>2,ATL2:UI1,1:$TR($P(B(1),D,1,2),D," ")),/WCML S2J I $G(LIJN) W /CUP(LIJN,3),"100 %",/WCML,/WDSP I $P(UFU,D)="C" D STOP^cAN009 S2Z Q ; ; balk tonen S3(LYN,KOL,PCT) W /CUP(LYN,KOL),/SGR(7) N I F I=1:1:PCT\2 W " " W /SGR(0) F I=PCT\2+1:1:50 W "." S3Z Q ; ZZ ; 24.02.06 - 9 u 54 * V8.06