cAN0082 ;Gelijkhouden bestanden ;%AN0082 ; [ 11/05/01 10:10 AM ] Q ; T0 ;Gelijkhouden bestanden ; ; T0F ;Interaction des fichiers ; ; T0E ;Gelijkhouden bestanden ; ; ; ================================================ ; eerste bestand: ^D_GL("string",GL_".A",UI1,0) ; ================================================ ; tweede bestand: ^_Q_GL(index,0) ; ================================================ ; linken via: 148 = intern nummer eerste bestand ; 149 = Q-waarde tweede bestand ; 150 = index tweede bestand ; ================================================ ; CNV ; converteer bepaalde velden bij overgang KL.A naar KL, LE.A naar LE, AR.A ... ; algemene wijzigingen die gelden voor alle bestanden en zowel voor oud (KL) als nieuw (KL.A) I '$L($P(B(1),D,49)) S $P(B(1),D,49)=Q ; Q-waarde S $P(B(1),D,48)=UI1 ; intern nummer eerste bestand I UFU="O" D . S $ZT="TRAP^cAN000" . N UQC,USC,UI1 . S UQC=$P(^DMS(DMSQ,DMS,2),D),USC=$P(^(2),D,2) . S UI1=$P(B(1),D,50) . I '$L(UI1) D .. S $ZT="TRAP^cAN000" .. N Q .. S Q=$P(B(1),D,49) .. S UI1=$$NR^cAN000 . S $P(B(1),D,50)=UI1 I UFU="W" D . S $ZT="TRAP^cAN000" . N UQC,USC . S UQC=$P(^DMS(DMSQ,DMS,2),D),USC=$P(^(2),D,2) . I $P(^DMC(UQC,USC,"DATA"),D)=2 S $P(B(1),D,50)=$P(B(1),D)_" " Q . I $P(^DMC(UQC,USC,"DATA"),D)=1 S $P(B(1),D,50)=$$DI^cAN000($P(B(1),D,2),$P(B(1),D)) Q ; hierna volgen velden die afwijken tussen de 2 bestanden (codebestanden) CNVA M NB=B,NA=A I $P(B(1),D,30)=0 S $P(NB(1),D,30)="" ; Niveau I $P(A(1),D,30)=0 S $P(NA(1),D,30)="" ; Niveau I $L($P($G(^DMS(DMSQ,DMS,2)),D,3)) X $P(^(2),D,3) ; specifieke xecutes CNVZ Q ; ------------------------------------------------------------- ; OPENEN ; Deze functie wordt opgeroepen vanuit $P(^DMA(UQA,USA,0,2),D) ; ------------------------------------------------------------- O S $ZT="TRAP^cAN000" I $G(EXTTOOL) G OZ N DMS,DMSQ,NB,NA,UQC,USC S DMS=^DMA(UQA,USA,0,"DMS") S DMSQ=$$DMSQ^cAN008(DMS) I DMSQ="" G OZ D CNV ; converteren velden in B-tabel S UQC=$P(^DMS(DMSQ,DMS,2),D),USC=$P(^(2),D,2) I $L(UQC),$L(USC) D . S $ZT="TRAP^cAN000" . N B,A,UI1,Q . M B=NB,A=NA . S Q=$P(B(1),D,49) ; KU : 18.10.06 . S UI1=$P(B(1),D,50) . N SW2,ULOG S SW2=1 D U^cAN000 K dummy OZ S OK=2 Q ; ; ; ------------------------------------------------------------- ; WIJZIGEN ; Deze functie wordt opgeroepen vanuit $P(^DMA(UQA,USA,0,3),D) ; ------------------------------------------------------------- W S $ZT="TRAP^cAN000" I $G(EXTTOOL) G WZ N DMS,DMSQ,NB,NA,MEM,UQC,USC S DMS=^DMA(UQA,USA,0,"DMS") S DMSQ=$$DMSQ^cAN008(DMS) I DMSQ="" G WZ M MEM=ULOG D CNV ; converteren velden in B-tabel S UQC=$P(^DMS(DMSQ,DMS,2),D),USC=$P(^(2),D,2) I $L(UQC),$L(USC) D . S $ZT="TRAP^cAN000" . N UREF,B,A,UI1,Q . M B=NB,A=NA . S Q=$P(B(1),D,49) ; KU : 18.10.06 . S UI1=$P(A(1),D,50) ; oude key ophalen . S UREF=^DMC(UQC,USC,"DATA","REF") . S OK=$$PLUS^cANLOCK(UREF,2,"",$S($G(EXTWIJZ):0,1:2)) I 'OK Q . D U^cAN000 K dummy . L -@UREF S OK=2 K ULOG M ULOG=MEM WZ S OK=2 Q ; ; ; ---------------------------------------------------------------- ; VERWIJDEREN (niv.2) ; Deze functie wordt opgeroepen vanuit $P(^DMA(UQA,USA,0,4),D,2) ; ---------------------------------------------------------------- V S $ZT="TRAP^cAN000" I $G(EXTTOOL) G VZ N DMS,DMSQ,NB,NA,MEM,UQC,USC S DMS=^DMA(UQA,USA,0,"DMS") S DMSQ=$$DMSQ^cAN008(DMS) I DMSQ="" G VZ M MEM=ULOG D CNV ; converteren velden in B-tabel S UQC=$P(^DMS(DMSQ,DMS,2),D),USC=$P(^(2),D,2) I $L(UQC),$L(USC) D . S $ZT="TRAP^cAN000" . N UREF,B,A,UI1,Q . M B=NB,A=NA . S Q=$P(B(1),D,49) ; KU : 18.10.06 . S UI1=$P(B(1),D,50) . S UREF=^DMC(UQC,USC,"DATA","REF") . S OK=$$PLUS^cANLOCK(UREF,2,"",$S($G(EXTWIJZ):0,1:2)) I 'OK Q . D U^cAN000 K dummy . L -@UREF K ULOG M ULOG=MEM VZ Q ; ; ; ---------------------------------------------------------------- ; VERWIJDEREN (kill) ; Deze functie wordt opgeroepen vanuit $P(^DMA(UQA,USA,0,4),D,2) ; ---------------------------------------------------------------- X S $ZT="TRAP^cAN000" I $G(EXTTOOL) G XZ N DMS,DMSQ,NB,NA,MEM,UQC,USC S DMS=^DMA(UQA,USA,0,"DMS") S DMSQ=$$DMSQ^cAN008(DMS) I DMSQ="" G XZ M MEM=ULOG D CNV ; converteren velden in B-tabel S UQC=$P(^DMS(DMSQ,DMS,2),D),USC=$P(^(2),D,2) I $L(UQC),$L(USC) D . S $ZT="TRAP^cAN000" . N UREF,B,A,UI1,Q . M B=NB,A=NA . S Q=$P(B(1),D,49) ; KU : 18.10.06 . S UI1=$P(B(1),D,50) . S UREF=^DMC(UQC,USC,"DATA","REF") . S OK=$$PLUS^cANLOCK(UREF,2,"",$S($G(EXTWIJZ):0,1:2)) I 'OK Q . D U^cAN000,K^cAN000 K dummy . L -@UREF K ULOG M ULOG=MEM XZ Q ; ZZ ; 19.03.07 - 15 u 31 * V8.08