cABVBK10 ;Functies Class Definition-properties ; cABVBK10 ; T1 ;Ext.naam;Kolomtitel;Label;Prompt DMA; T2 ;Sleutel bij de talen is niet ingevuld, opslaan onmogelijk.; T3 ;Fout bij openen taal ;Fout bij wijzigen taal ;Fout bij verwijderen taal ; T4 ;Persistent; T5 ;Logging enkel beschikbaar voor tabpagina Def. per taal; T6 ;Klasse;Groep;Interne naam;Property T7 ;Kopie van een afwijking is niet toegestaan; T8 ;Taal; T9 ;Combinatie Interne naam/Afwijking is niet uniek binnen deze klasse. T10 ;Er zijn reeds definities opgezet voor deze propertie. T11 ;Mogen deze overschreven worden door die van de data dictionary?;Overschrijven;Behouden; T12 ;Methode ";" niet kunnen aanmaken; ; T1E ;Ext.naam;Kolomtitel;Label;Prompt DMA; T2E ;Key in languages is empty, save impossible.; T3E ;Error creating language ;Error changing language ;Error deleting language ; T4E ;Persistent; T5E ;Logging only available for tabpage Lang.def.; T6E ;Class;Group;Internal name;Property T7E ;Copy of a deviation is not allowed; T8E ;Language; T9E ;Combination Internal name/Deviation is not unique in this class . T10E ;There are already set up definitions for this property. T11E ;May these be overwritten by those from the data dictionary?;Overwrite;Keep; T12E ;Failed to create method ";"; ; YZ Q ; ;DDICProp-DefPerTaalGrid mtemp opbouwen BTEMP(GRIDID,DCPID,COPY,DDID,DDPSW) ; GRIDID: volgnr van de grid : indien '' : volgnummer ophalen ; DCPID : intern nr van ^DDD(0,"DD" waaruit data moet opgehaald worden ; COPY : Het gaat om het kopiëren van een DataDictionary-record ; DDID: Data dictionary-id (def. per taal hiervan overnemen) ; DDPSW: 0=Definities uit ^DDC halen (klassen) ; 1=Definities uit ^DDP halen (programmeurs) S $ZT="ERR^cAFVBF01" N @$$INITVAR^cAFVBA01("GRIDID,DCPID,COPY,DDID,DDPSW") ; F i="GRIDID","DCPID","COPY","DDID","DDPSW" S @i=$G(@i) I '$L(GRIDID) S GRIDID=$$GRIDID^cAFVBF01() K ^mtemp99(GRIDID,"COMMON") S OK=GRIDID ; S DMS="DC.PROP.TAAL" I DDPSW S DMS="DP.PROP.TAAL" D DMS^cAN000("UQC","USC",DMS,1) I '$L(UQC)!'$L(USC) G BTEMPZ ; ; Indien data dictionary gegevens overnemen I $L(DDID) D . S DDGRIDID=$$BTEMP^cABVBD1("",DDID,"") . S i="" F S i=$O(^mtemp99(DDGRIDID,"COMMON",i)) Q:'$L(i) D .. S DD($e(i,$l(i)-2,$l(i)) )=$P(^(i,0),D,5,99) . K ^mtemp99(DDGRIDID) ; S UREF=^DMC(UQC,USC,"DATA","REF") S TKI1="" F S TKI1=$O(^DTEXT(0,"TEXT.9000",TKI1)) Q:TKI1="" D ; aflopen taalcodes . S TKB=^(TKI1,0) . I $P(TKB,D,30) Q ; BG of verwijderd . S TK=TKI1 ;$P(TKB,D) . S UI1=DCPID_" "_TK . S B(1)=$G(@UREF@(0)),B(2)=$G(^(1)) . ; SRT = 1 : Property . ; SRT = 2 : Grid . ; SRT = 3 : Form . ; SRT = 4 : DMA . S VOLG="4213" ; Volgorde van de lijnen in de grid . F SRT=1:1:4 D .. S B=$S(COPY=1:"",1:$S($L(B(1)):UI1,1:""))_D_TK_D_SRT ; key (ingevuld als rec. bestaat)_D_taalcode_D_srt .. S $P(B,D,4)=$P($T(@("T1"_QT)),U,1+SRT) ; omschrijving soort .. I $L(DDID) S $P(B,D,5,99)=$G(DD(TK_" "_$E(VOLG,SRT,SRT))) ; Definities van Data Dictionary overnemen .. I '$L(DDID) D ... S $P(B,D,5)=$P(B(2),D,SRT-1*10+1) ; Naam, Titel, Label, Prompt ... S $P(B,D,6)=$P(B(2),D,SRT-1*10+2) ; Commentaar, Tooltip ... I SRT=1 S $P(B,D,7)=$P(B(2),D,3) ; Property : SLQ-kolom ... I SRT=2 S $P(B,D,7)=$P(B(2),D,13) ; Grid : titel indien foreing key .. S UI1T=$P(B,D) I '$L(UI1T) S UI1T=" "_TK .. S ^mtemp99(GRIDID,"COMMON",UI1T_" "_$E(VOLG,SRT,SRT),0)=B BTEMPZ Q OK ; ; gewijzigde rij in VB.NET opslaan in de mtemp (CDEF-DefPerTaalGrid) SAVEROW(SELECTEDID,NAAM,COMMENT,EXTRA) N (SELECTEDID,NAAM,COMMENT,EXTRA) S $ZT="^dmERROR",OUT=1,D="\",U=";" I SELECTEDID="" G SAVEROWZ S GRIDID=$P(SELECTEDID,"||") S SELECTEDID=$P(SELECTEDID,"||",2) S $P(^mtemp99(GRIDID,"COMMON",SELECTEDID,0),D,5)=$G(NAAM) S $P(^mtemp99(GRIDID,"COMMON",SELECTEDID,0),D,6)=$G(COMMENT) S $P(^mtemp99(GRIDID,"COMMON",SELECTEDID,0),D,7)=$G(EXTRA) SAVEROWZ Q OUT ; ; STEMP(GRIDID,DCPID,SWDD) ; Drukken op OK-button (DCProp-DefPerTaalGrid), opslaan van de mtemp in de ^DDC(,"DC.PROP.TAAL" ; GRIDID: volgnr van de grid : indien '' : volgnummer ophalen ; DCPID : intern nr van ^DDC(,"DC.PROP.TAAL" ; SWDD: Switch data dict. ; 0= Geen data dict. of data dict. is overschreven ; 1= Gegevens komen uit de data dict. ; ; Q, QT en QU komen vanuit Methode via de methodgenerator ; S $ZT="ERR^cAFVBF01" N @$$INITVAR^cAFVBA01("GRIDID,DCPID,SWDD") S OK=1 I '$L($G(GRIDID)) G STEMPZ I '$L($G(DCPID)) S OK="0\"_$P($T(@("T2"_QT)),U,2) G STEMPZ ; ; Indien gegevens uit data dict. komen: mtemp99 NIET opslaan I $G(SWDD) G STEMPX ; S I1="" STEMPA S I1=$O(^mtemp99(GRIDID,"COMMON",I1)) I I1="" G STEMPZ S B=^(I1,0) S UI1=$P(B,D) ; key S TK=$P(B,D,2) ; taalkode S SRT=$P(B,D,3) ; SRT S B(101)=DCPID,B(102)=TK S B(SRT-1*10+201)=$P(B,D,5) ; Naam, Titel, Label, Prompt S B(SRT-1*10+202)=$P(B,D,6) ; Commentaar, Tooltip I SRT=1 S B(203)=$P(B,D,7) ; Property : SLQ-kolom I SRT=2 S B(213)=$P(B,D,7) ; Grid : titel indien foreing key I $E(I1,$L(I1),$L(I1))'=4 G STEMPA K TAB I $L($P(B,D)) G STEMPC STEMPB ; openen ; B(101), B(102) omvormen naar TAB(1), TAB(2) ... S UI1=B(101)_" "_B(102) S I="" F S I=$O(B(I)) Q:I="" S $P(TAB(I\100),D,I#100)=B(I) D P^cAN220("DC.PROP.TAAL","",UI1,"TAB","") I K="-" S OK="0\"_$P($T(@("T3"_QT)),U,2)_TK G STEMPZ G STEMPA STEMPC ; wijzigen S UI1=$P(B,D) M TAB=B D B^cAN220("DC.PROP.TAAL","",UI1,"TAB") I K="-" S OK="0\"_$P($T(@("T3"_QT)),U,3)_TK G STEMPZ G STEMPA ; verwijderen STEMPX D DMS^cAN000("UQC","USC","DC.PROP.TAAL",1) I '$L(UQC)!'$L(USC) G STEMPZ S UREF=^DMC(UQC,USC,"DATA","REF") S UI1=DCPID F S UI1=$O(@(UREF)) Q:($P(UI1," ",1,2)'=DCPID) D Q:'OK . D X^cAN220("DC.PROP.TAAL","",UI1) I K="-" S OK="0\"_$P($T(@("T3"_QT)),U,4)_TK ; STEMPZ Q OK ; ; DMAO ; Uit te voeren bij het openen van een property ; Volgnummer opzetten S $P(B(1),D,2)=$P(UI1," ",$L(UI1," ")) ; Origineel D DMAO^cABVBD1 ; Indien gelinkt aan een DD-item en niet overschreven, wordt node 1 niet opzet I $L($P(B(1),D,5))&'$P(B(1),D,11) S B(2)="" ; Properties met een subscript zijn verplicht I $L($P(B(1),D,7)) S $P(B(1),D,14)=1 ; Variabele OK opzetten S OK=2 DMAOZ Q ; ; DMAW ; Uit te voeren bij het wijzigen van een property ; Indien gelinkt aan een DD-item en niet overschreven, wordt node 1 niet opzet I $L($P(B(1),D,5))&'$P(B(1),D,11) S B(2)="" ; Properties met een subscript zijn verplicht I $L($P(B(1),D,7)) S $P(B(1),D,14)=1 ; Variabele OK opzetten S OK=2 DMAWZ Q ; ; HDRDCP(CLASSID,AFWIJK,VOLGNR,INTNAAM,NOCLASS) ; header Class definition-property N HCLASSID,HAFWIJK,HVOLGNR,HINTNAAM,CGROEP,CINTNAAM S $ZT="^dmERROR" S U=";" D QT^cAFVBO01 I '$L(CLASSID),('$L(AFWIJK)),('$L(VOLGNR)),('$L(INTNAAM)) S HCLASSID=..B101.DCId,HAFWIJK=..B132,HVOLGNR=..B102,HINTNAAM=..B103 G HDRDCPA S HCLASSID=CLASSID,HAFWIJK=AFWIJK,HVOLGNR=VOLGNR,HINTNAAM=INTNAAM HDRDCPA S CGROEP=$P(^DDC(0,"KLASSE",HCLASSID,0),"\",3) I $L(CGROEP) S CGROEP=$$DATA^cAFVBO01("DKODE",0,"CODE.9022",CGROEP,101) S CINTNAAM=$P(^DDC(0,"KLASSE",HCLASSID,0),"\") S OUT="\\" I 'NOCLASS S OUT=OUT_"\"_$P($T(@("T6"_QT)),U,2)_";"_HCLASSID_" "_CGROEP_" "_CINTNAAM_"; \\\" S OUT=OUT_"\"_$P($T(@("T6"_QT)),U,5)_";"_$S($L(HAFWIJK):HAFWIJK_" ",1:"")_HVOLGNR_" "_HINTNAAM_"; \\\" HDRDCPZ Q OUT ; HDRDCPL() ; header Class definition-Property-DefPerTaal-logging N OUT S $ZT="^dmERROR" S OUT=$$HDRDCP(..B101.B101.DCId,..B101.B132,..B101.B102,..B101.B103,"0") S OUT=OUT_"\"_$P($T(@("T8"_QT)),";",2)_";" X "S R=..B102."_$P("OmschrijvingNederlands#OmschrijvingFrans#OmschrijvingEngels#OmschrijvingDuits","#",QTU) S OUT=OUT_R_";" HDRDCPLZ Q OUT ; NR(Q,DMS,UI1C,AFW,VV) ; ophalen eerst volgend vrij nummer ; UI1C = UI1 van de klasse S $ZT="^dmERROR" I '$L($G(Q)) G NRZ I $L($G(AFW)),$L(UI1C," ")>1,AFW'=$P(UI1C," ") G NRZ N @$$INITVAR^cAFVBA01("DMS,UI1C,AFW,VV") D DMS^cAN000("UQC","USC",DMS,1) I '$L(UQC)!'$L(USC) G NRZ S DIN=^DMC(UQC,USC,"DIN"),UREF=^("DATA","REF") ; KU 25.10.05 : AFW verdwijnt ; I $L($G(AFW)),$L(UI1C," ")=1 S UI1C=AFW_" "_UI1C L +@DIN@(UI1C) S SPEC='$$PAR^cABVBD1(201) ; specifieke database ? S NR=$$PAR^cABVBD1(202) I 'NR S NR=500000 ; specifiek volgnummer ? S UI1=UI1C_" 900000" I $G(VV) S UI1=UI1C_" z" S UI1=$O(@UREF,-1),VNR=$P(UI1," ",$L(UI1," "))+1 I $E(UI1,1,$L(UI1C)+1)'=(UI1C_" ") S VNR=1000 S:SPEC VNR=NR I SPEC,VNR