cABVBD9 ; DD-functies ivm beheertool automatisch creatie codebestanden ; T1 ;Code; T2 ;Omschrijving Nederlands;Omschrijving Frans;Omschrijving Duits;Omschrijving Engels; T3 ;Aanmaken sleutel-item;Aanmaken code-item;Aanmaken 4 omschrijving-items;Aanmaken vrije velden; T4 ;Talen invoegen voor DDD-item; T5 ;Ongeldige combinatie DMS en Nummer; T6 ;Klassedefinitie bestaat reeds! Maak de grid en/of form aan via de beheerprogramma's voor grids en forms.; T7 ;Klassedefinitie controleren;Geen bestaande klassedefinitie gevonden; ; T1F ;Code; T2F ;Description Néerlandais;Description Français;Description Allemand;Description Anglais; T3F ;Aanmaken sleutel-item;Aanmaken code-item;Aanmaken 4 omschrijving-items;Aanmaken vrije velden; T4F ;Talen invoegen voor DDD-item; T5F ;Ongeldige combinatie DMS en Nummer; T6F ;Klassedefinitie bestaat reeds! Maak de grid en/of form aan via de beheerprogramma's voor grids en forms.; T7F ;Klassedefinitie controleren;Geen bestaande klassedefinitie gevonden; ; T1D ;Code; T2D ;Umschreibung Niederländisch;Umschreibung Französisch;Umschreibung Deutsch;Umschreibung Englisch; T3D ;Aanmaken sleutel-item;Aanmaken code-item;Aanmaken 4 omschrijving-items;Aanmaken vrije velden; T4D ;Talen invoegen voor DDD-item; T5D ;Ongeldige combinatie DMS en Nummer; T6D ;Klassedefinitie bestaat reeds! Maak de grid en/of form aan via de beheerprogramma's voor grids en forms.; T7D ;Klassedefinitie controleren;Geen bestaande klassedefinitie gevonden; ; T1E ;Code; T2E ;Description Dutch;Description French;Description German;Description English; T3E ;Aanmaken sleutel-item;Aanmaken code-item;Aanmaken 4 omschrijving-items;Aanmaken vrije velden; T4E ;Talen invoegen voor DDD-item; T5E ;Ongeldige combinatie DMS en Nummer; T6E ;Klassedefinitie bestaat reeds! Maak de grid en/of form aan via de beheerprogramma's voor grids en forms.; T7E ;Klassedefinitie controleren;Geen bestaande klassedefinitie gevonden; ; YZ Q ; SAVE() ; opslaan DD-items via object ; ; Opgelet : er moet een instance van het object bestaan !! S $ZT="^dmERROR" SAVEZ Q $$SAVEDD(..Text21,..Text01,..Text02,..Text03,..Text04,..Text13,..Text15,..Text14,..Text05,..Text06,..Text07,..Text08,..Text09,..Text10,..Text11,..Text12,..Text17,..Text16,..Text18,..Text19,..Text20,..Text22,..Text23) ; SAVEDD(SWNIEUW,TYPE,NUMMER,TREFWOORD,DMS,LENCODE,LENOMS,CODEUNIEK,ENKNED,ENKFRA,ENKDUI,ENKENG,MVNED,MVFRA,MVDUI,MVENG,QVALUE,CREATEDDP,CREATEKL,CREATEGRID,CREATEFORM,MODULE,GROEP) ; opslaan van de DD-items ; Input: ; SWNIEUW : Nieuw codebestand? 1=ja,0=neen ; TYPE : type van het codebestand ; NUMMER : nummer van het codebestand ; TREFWOORD : beschrijving van het codebestand (1 woord) ; DMS : DMS van het codebestand ; LENCODE : inputlengte van de code ; LENOMS : inputlengte van de omschrijving ; CODEUNIEK : code al of niet uniek ; ENKNED : omschrijving Nederlands enkelvoud ; ENKFRA : omschrijving Frans enkelvoud ; ENKDUI : omschrijving Duits enkelvoud ; ENKENG : omschrijving Engels enkelvoud ; MVNED : omschrijving Nederlands meervoud ; MVFRA : omschrijving Frans meervoud ; MVDUI : omschrijving Duits meervoud ; MVENG : omschrijving Engels meervoud ; QVALUE : ingegeven Q-waarde ; CREATEDDP : Einddef aanmaken? 1=ja,0=neen ; CREATEKL : Klasse aanmaken en compileren? 1=ja,0=neen ; CREATEGRID : Grid aanmaken? 1=ja,0=neen ; CREATEFORM : Form aanmaken? 1=ja,0=neen ; MODULE : Module ; GROEP : intern nummer CODE.9022 ; S $ZT="^dmERROR" SAVEDDA N @$$INITVAR^cAFVBA01("SWNIEUW,TYPE,NUMMER,TREFWOORD,DMS,LENCODE,LENOMS,CODEUNIEK,ENKNED,ENKFRA,ENKDUI,ENKENG,MVNED,MVFRA,MVDUI,MVENG,QVALUE,CREATEDDP,CREATEKL,CREATEGRID,CREATEFORM,MODULE,GROEP") ; N Q S Q=QVALUE ; ; codebestand -> CODEBES = 1 ; tekstbestand -> CODEBES = 0 S CODEBES=1 ; ; controleren welk type bestand er moet aangemaakt worden I DMS=("TEXT."_NUMMER) S CODEBES=0 G SAVEDDB I DMS=("CODE."_NUMMER) S CODEBES=1 G SAVEDDB ; ; als er een nieuw codebestand wordt aangemaakt moet het voorgesteld nummer en het nummer in de DMS gelijk zijn I SWNIEUW,(($P(DMS,".",1)="CODE")!($P(DMS,".",1)="TEXT")),$P(DMS,".",2)'=NUMMER S OK=0_D_$P($T(@("T5"_QT)),U,2) W !,$P(OK,D,2) G SAVEDDZ ; ; controleren of er een klassedefinitie bestaat ; als er één bestaat wordt het programma ook gestopt SAVEDDB S OK=$$CHKKLA(DMS,CODEBES,GROEP) I 'OK G SAVEDDZ ; geen bestaande klassedefinitie gevonden W !,$P($T(@("T7"_QT)),U,3) ; ; aanmaken DMS,DMC en DMA SAVEDDC S OK=$$SAVEDMX^cABVBK9(SWNIEUW,DMS,TYPE,NUMMER,LENCODE,LENOMS,CODEUNIEK,MVNED,MVFRA,MVDUI,MVENG) I 'OK G SAVEDDZ ; S OK=1 ; aanmaken sleutel-item SAVEDDD W !,$P($T(@("T3"_QT)),U,2) S $P(TAB(1),D,1)=TREFWOORD ; Trefwoord S $P(TAB(1),D,3)=MODULE ; Module ; S $P(TAB(2),D,1)=1000 ; Datatype S $P(TAB(2),D,2)=0 ; Verplicht S $P(TAB(2),D,3)=LENCODE ; Lengte input S $P(TAB(2),D,6)=(LENCODE+LENOMS+1) ; Lengte output S $P(TAB(2),D,7)="S U3=$$COM^cAFO3("""_DMS_""",K)" ; X ivm Output I 'CODEBES S $P(TAB(2),D,7)="S U3=$$SIG^cAFA1("""_DMS_""",K,102+(QTU-1*10))" S $P(TAB(2),D,9)=0 ; Private S $P(TAB(2),D,10)=0 ; Uitlijning S $P(TAB(2),D,11)=0 ; Formatering ; D P^cAN220("DD","","","TAB","") I K="-" X "STOP" S KEYID=NUI1 S TAALTAB("N")=ENKNED,TAALTAB("F")=ENKFRA,TAALTAB("D")=ENKDUI,TAALTAB("E")=ENKENG D TAAL(.TAALTAB,NUI1,0) ; ; aanmaken code-item SAVEDDE W !,$P($T(@("T3"_QT)),U,3) K TAB S $P(TAB(1),D,1)=TREFWOORD_" Code" ; Trefwoord S $P(TAB(1),D,3)=MODULE ; Module ; S $P(TAB(2),D,1)=1000 ; Datatype S $P(TAB(2),D,2)=0 ; Verplicht S $P(TAB(2),D,3)=LENCODE ; Lengte input S $P(TAB(2),D,6)=LENCODE ; Lengte output S $P(TAB(2),D,9)=0 ; Private S $P(TAB(2),D,10)=0 ; Uitlijning S $P(TAB(2),D,11)=0 ; Formatering ; D P^cAN220("DD","","","TAB","") I K="-" X "STOP" ; omschrijving per taal invullen F i="N","F","D","E" S TAALTAB(i)=$P($T(@("T1"_$S(i="N":"",1:i))),U,2) ; opzetten proptabel met verwijzing naar DD via UI1 S PROPTAB(101)=NUI1_"\1" D TAAL(.TAALTAB,NUI1,1) ; ; aanmaken 4 omschrijvingen SAVEDDF W !,$P($T(@("T3"_QT)),U,4) F L="N","F","D","E" D . K TAB . S $P(TAB(1),D,1)=TREFWOORD_" Oms"_L ; Trefwoord . S $P(TAB(1),D,3)=MODULE ; Module . ; . S $P(TAB(2),D,1)=1000 ; Datatype . S $P(TAB(2),D,2)=0 ; Verplicht . S $P(TAB(2),D,3)=LENOMS ; Lengte input . S $P(TAB(2),D,6)=LENOMS ; Lengte output . S $P(TAB(2),D,9)=0 ; Private . S $P(TAB(2),D,10)=0 ; Uitlijning . S $P(TAB(2),D,11)=0 ; Formatering . D P^cAN220("DD","","","TAB","") I K="-" X "STOP" . F i="N","F","D","E" S TAALTAB(i)=$P($T(@("T2"_$S(i="N":"",1:i))),U,$F("NFDE",L)) . ; opzetten proptabel met verwijzing naar DD via UI1 . S PROPTAB(102+(($F("NFDE",L)-2)*10))=NUI1_"\0" . D TAAL(.TAALTAB,NUI1,1) ; ; GM - 04.03.07: Aanmaken vrije velden SAVEDDG I 'CODEBES G SAVEDDH W !,$P($T(@("T3"_QT)),U,5) F BIND=103:1:111 S PROPTAB(BIND)=11111_"\0" ; ; aanmaken klassedefinitie SAVEDDH S OK=$$SAVEKL^cABVBK9(KEYID,SWNIEUW,DMS,MVNED,MVFRA,MVDUI,MVENG,QVALUE,CREATEDDP,CREATEKL,CREATEGRID,CREATEFORM,.PROPTAB,CODEBES,GROEP) ; SAVEDDZ Q OK ; TAAL(TAALTAB,UI1,SWITEM) ; per taal een DD-item aanmaken voor DD.TAAL ; Input: ; TAALTAB : tabel met 4 beschrijvingen ; UI1 : UI1 van de items ; SW = 0 : invoegen van de sleutel ; 1 : invoegen andere items N L,TAB,K S $ZT="TRAP^cAN000" W !,$P($T(@("T4"_QT)),U,2) S L="" F S L=$O(TAALTAB(L)) Q:'$L(L) D . S $P(TAB(1),D,1)=UI1 ; UI1 van DD . S $P(TAB(1),D,2)=L ; Taalcode . ; Vreemde tekens uit de omschrijving halen . I $L(TAALTAB(L)) S $P(TAB(2),D,1)=$$DP^cABVBD1(TAALTAB(L))_$S('$G(SWITEM):"Id",1:"") ; Naam property . S $P(TAB(2),D,11)=TAALTAB(L) ; Titel in grid . S $P(TAB(2),D,21)=TAALTAB(L) ; Label in form . S $P(TAB(2),D,31)=TAALTAB(L) ; Prompt DMA . D P^cAN220("DD.TAAL","",UI1_" "_L,"TAB","") I K="-" X "STOP" TAALZ Q ; CHKKLA(DMS,CODEBES,GROEP) ; controleren of de klassedefinitie reeds bestaat of niet ; Input: ; DMS : DMS van het codebestand ; CODEBES : Al of niet codebestand ; GROEP : intern nummer groep N I1,OUT,KL,OK W !,$P($T(@("T7"_QT)),U,2) S OUT=1,OK=1 ; ; verwijder vreemde tekens uit de naam van de DMS + omzetten in hoofdletters + spatie achteraan toevoegen S KL=$$DI^cAN000(DMS,"") S I1=KL F S I1=$O(^IDDC(0,"KLASSE",101,I1)) Q:$P(I1," ")'=$P(KL," ") D I 'OK Q . I $$SIG^cAFA1("DC",^(I1),103)=GROEP S OK=0 Q I 'OK S OUT=0_D_$P($T(@("T6"_QT)),U,2) W !,$P(OUT,D,2) CHKKLAZ Q OUT ; ZZ ; 29.08.07 - 10 u 22 * V8.09