cABCDL1 ; aanmaken CDL-file vanuit DMA, DMC en DMS ; cABCDL [ 03/29/01 9:41 AM ] ; ; ^TEMP(boot,$J+.888 aflopen en file op schijf wegschrijven (eerst in ^HULP("TR",Q,VNR G 1 ; T1 ;/***********************************************************************|; T2 ;| File : ; T3 ;| Author : Cache Objects Version 3.2.489.0 |; T4 ;| Date : ; T5 ;| Description : This File is Generated by Export Utility |; T6 ;|***********************************************************************/; T7 ;Bestandsnaam; T8 ;EXPORT ; ; 1 N I1,DEL,MAP,FILE,FULL,NOTIT,NOSEP,NOTOP,S4 ; DEL = delimiter ; SWITCH = switch of we naar HULP("TR",Q wegschrijven of naar het scherm ; VNR = 3de index in ^HULP("TR",Q,VNR - mag weg ; S $ZT="TRAP^cAN000" 11 S DEL=$C(9) S S4=($P($T(@("T8"_QT)),U,2))_$P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D) 13 D ^cAN3223("","1#2#4","","") G YZ:K="-" X F70 S END=0 S HD="",TIT="",SEP="$C(32)",V=0 S TAB=$S("\3\F\"'[(D_PTS_D):"",1:512) I "\3\F\"[PTS S NOTIT=1,NOSEP=1,NOTOP=1 ; indien naar file afdrukken 15 I '$D(^TEMP(boot,$J+.888)) G YZ D KOP ; hoofding wegschrijven ; 2 D WRITE(" ") 21 D KLAS ; algemene gegevens van de klasse wegschrijven S END=1 D ^cA334 X F71 ; YZ Q ; R0 S $P(R,D,12)=$T(+0) D ^cAN1000 Q ; v12 23.01.95 ; ; indexen wegschrijven INDEX N B,I1,NODE S $ZT="TRAP^cAN000" S I1="" F S I1=$O(^TEMP(boot,$J+.888,"ATTR",I1)) Q:I1="" D . S NODE=^(I1) . Q:'$P(NODE,D,11) . S B=DEL_"index " . I $P(NODE,D,5) S B=B_"Unique" . S B=B_$P(NODE,D)_"Index" . S B=B_" { " . I $L($P(NODE,D,2)) S B=B_"description = """_$P(NODE,D,2)_"""; " . S B=B_"attributes = "_$P(NODE,D,9)_$S($P(NODE,D,3)="%String"&($P(NODE,D)'="Key1")&'$P(NODE,D,5):":ALPHAUP",1:"")_"; " . S B=B_"extent = 0; " . S B=B_"idkey"_$S($P(NODE,D,8):"",1:" = 0 ")_"; " . S B=B_"primarykey = 0; " . S B=B_"unique"_$S($P(NODE,D,5):"",1:" = 0 ")_";" . S B=B_" } " . D WRITE(B) INDEXZ Q ; ; algemene klassegegevens KLAS D WRITE("class "_$P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D)) ; begin accolade van klasse D WRITE("{") D WRITE(DEL_"description = """_$P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D,3)_""";") D WRITE(DEL_"super = "_$P($P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D,2),U,2)_";") I $L($P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D,6)) D . D WRITE(DEL_"sqltablename = "_$P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D,6)_";") D WRITE(" ") D WRITE(DEL_"persistent = "_$P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D,4)_";") ; indexen D INDEX ; properties D WRITE(" ") D PROP ; methoden D WRITE(" ") D METHOD ;storage D WRITE(" ") D STOR ; ; eind-accolade van klasse D WRITE("}") KLASZ Q ; ; hoofding KOP N B D WRITE($P($T(@("T1"_QT)),U,2)) S B=$P($T(@("T2"_QT)),U,2) S B=B_$P($G(^TEMP(boot,$J+.888,"KLASSE","ALG")),D)_".CDL" S B=B_$J("|",73-$L(B)) D WRITE(B) D WRITE($P($T(@("T3"_QT)),U,2)) S B=$P($T(@("T4"_QT)),U,2)_DT_" "_TD S B=B_$J("|",73-$L(B)) D WRITE(B) D WRITE($P($T(@("T5"_QT)),U,2)) D WRITE($P($T(@("T6"_QT)),U,2)) KOPZ Q ; METHOD N B,I1,NODE,NAAM S $ZT="TRAP^cAN000" ; naam \ type \ classmethod \ (not) final \ public ( = 0) \ sqlproc \ expression S I1="" F S I1=$O(^TEMP(boot,$J+.888,"METHOD",I1)) Q:I1="" D . S NODE=^(I1) . S NAAM=$P(NODE,D) . S B="method "_NAAM_"()" . D WRITE(DEL_B) . D WRITE(DEL_"{") . D WRITE(DEL_DEL_"returntype = "_$P(NODE,D,2)_";") . D WRITE(DEL_DEL_"classmethod = "_$P(NODE,D,3)_";") . D WRITE(DEL_DEL_$S('$P(NODE,D,4):"not ",1:"")_"final;") . D WRITE(DEL_DEL_"public"_$S('$P(NODE,D,5):" = 0",1:"")_";") . D WRITE(DEL_DEL_"sqlproc"_$S('$P(NODE,D,6):" = 0",1:"")_";") . D WRITE(DEL_DEL_"expression = "_$P(NODE,D,7)_";") . D WRITE(DEL_"}") . D WRITE(" ") METHODZ Q ; properties (attributen) PROP N B,I1,NODE S $ZT="TRAP^cAN000" S I1="" F S I1=$O(^TEMP(boot,$J+.888,"ATTR",I1)) Q:I1="" D . S NODE=^(I1) . S B=DEL_"attribute " . S B=B_I1 . S B=B_" { " . S B=B_"type = "_$P(NODE,D,3) . I $P(NODE,D,6)!$P(NODE,D,7) D ; er is een min- of max-lengte gedefinieerd .. S B=B_"(" .. I $P(NODE,D,7) S B=B_"MAXLEN = "_$P(NODE,D,7) I $P(NODE,D,6) S B=B_"," .. I $P(NODE,D,6) S B=B_"MINLEN = "_$P(NODE,D,6) .. S B=B_")" . S B=B_"; " . S B=B_"calculated"_$S('$P(NODE,D,12):" = 0",1:"")_"; " . S B=B_"description = """_$P(NODE,D,2)_"""; " . S B=B_"not final; " . S B=B_"multidimensional = 0; " . S B=B_"public; " . S B=B_$S($P(NODE,D,4):"",1:"not ")_"required; " . I $P(NODE,D,12),$L($P(NODE,D,13)) D .. S B=B_" sqlcomputecode = " ; SQL-methode enkel invullen als berekend .. D WRITE(B) .. S B="" .. D WRITE(DEL_"{") .. S B=DEL_DEL_":"_$P(NODE,D,13)_";" .. D WRITE(B) .. D WRITE(DEL_"}") .. S B=DEL . S B=B_"sqlcomputed"_$S($P(NODE,D,12):"",1:" = 0")_"; " ; SQL-berekend als gewoon berekend . I $L($P(NODE,D,14)) S B=B_"sqlfieldname = "_$P(NODE,D,14)_"; " . S B=B_"transient = 0; " . S B=B_" } " . D WRITE(B) PROPZ Q ; ; opslag STOR D WRITE(DEL_"storage "_$P(^TEMP(boot,$J+.888,"KLASSE","ALG"),D,4)) D WRITE(DEL_"{") ; start storage D WRITE(DEL_DEL_"type = "_$P(^TEMP(boot,$J+.888,"KLASSE","ALG"),D,5)) D WRITE(DEL_"sql") D WRITE(DEL_DEL_"{") ; D STORD ; data D WRITE(" ") D STORI ; indexen ; D WRITE(DEL_DEL_"}") D WRITE(DEL_"}") ; einde storage STORZ Q ; ; opslag van data STORD N B,I1,INDEXEN,NODE,TEL S $ZT="TRAP^cAN000" D WRITE(DEL_DEL_DEL_"map Data") D WRITE(DEL_DEL_DEL_"{") ; begin Data D WRITE(DEL_DEL_DEL_"global = "_$P(^TEMP(boot,$J+.888,"KLASSE","STOR"),D)_";") D WRITE(DEL_DEL_DEL_"structure = delimited;") D WRITE(DEL_DEL_DEL_"type = data;") ; D WRITE(" ") ; ; subscripts S INDEXEN=$P(^TEMP(boot,$J+.888,"KLASSE","STOR"),D,2) F I1=1:1:30 D . Q:'$L($P(INDEXEN,U,I1)) . D WRITE(DEL_DEL_DEL_"subscript "_I1_" { expression = "_$P(INDEXEN,U,I1)_"; }") ; ; properties S TEL=0 S I1="" F S I1=$O(^TEMP(boot,$J+.888,"ATTR",I1)) Q:I1="" D . S TEL=TEL+1 . S NODE=^(I1) . I $L($P(NODE,D,10)) D WRITE(DEL_DEL_DEL_"data "_$S($L($P(NODE,D,14)):$P(NODE,D,14),1:$P(NODE,D))_" { delimiter = $C(92); node = "_($P(NODE,D,10)\100-1)_"; piece = "_($P(NODE,D,10)#100)_"; }") ; D WRITE(DEL_DEL_"}") ; einde Data ; STORDZ Q ; ; opslag van indexen STORI N BINDEX,I1,NAAM,NAAM1,NODE,SQLNAAM,TYPE S TRAP="$ZT^cAN000" S I1="" F S I1=$O(^TEMP(boot,$J+.888,"ATTR",I1)) Q:I1="" D . S NODE=^(I1) . Q:'$P(NODE,D,11) ; geen index . Q:$P(NODE,D,8) ; Key1 of Key2 of Key3 ... . S BINDEX=$P(NODE,D,10) . S TYPE=$P(NODE,D,3) . S NAAM=$P(NODE,D),SQLNAAM=$S($L($P(NODE,D,14)):$P(NODE,D,14),1:$P(NODE,D)) . S NAAM1="{"_SQLNAAM_"}" . I TYPE="%String" S NAAM1="$$ALPHAUP("_SQLNAAM_")" . D WRITE(" ") . D WRITE(DEL_DEL_"map Ind"_NAAM) . D WRITE(DEL_DEL_DEL_"{") ; begin indexen . D WRITE(DEL_DEL_DEL_"global = ^IND;") ; vast ^IND . D WRITE(DEL_DEL_DEL_"structure = delimited;") . D WRITE(DEL_DEL_DEL_"type = index;") . ; . D WRITE(" ") . S INDEXEN=$P(^TEMP(boot,$J+.888,"KLASSE","STORI"),D,2) . F I2=1:1 Q:'$L($P(INDEXEN,U,I2)) D .. Q:'$L($P(INDEXEN,U,I2)) .. D WRITE(DEL_DEL_DEL_"subscript "_I2_" { expression = "_$P(INDEXEN,U,I2)_"; }") . ; . D WRITE(DEL_DEL_DEL_"subscript "_I2_" { expression = """_BINDEX_"""; }") . S I2=I2+1 D WRITE(DEL_DEL_DEL_"subscript "_I2_" { expression = "_NAAM1_"; }") . S I2=I2+1 D WRITE(DEL_DEL_DEL_"subscript "_I2_" { expression = {Key1}; }") . D WRITE(DEL_DEL_"}") ; einde Data ; STORIZ Q ; ; string K wegschrijven naar printer of bestand WRITE(K) S TXT(1)=K I "\3\F\"'[(D_PTS_D) S $P(TXT(1),D,7)="K W ?RR2+V,K" D ^cA334 WRITEZ Q ; ZZ ; 18.05.01 - 11 u 18 * V7.86