Geeft het Bruto en Netto gewicht terug in de vorm van een $LB persistent Prod.Product Prod.GAMeta.Item 0 NoSa wordt doorgegeven via de Globale variable %NoSa. 0 0 code PRNr:%Library.String,DItem:Prod.GAData.Item 0 0 %Library.String 0 Waarde Type = {N;T;B} ; Netto;Tarra;Bruto 0 0 code Type:%Library.String="N",PRNr:%Library.String,DItem:Prod.GAData.Item 0 0 %Library.String 0 0 0 code PRNr:%Library.String,DItem:Prod.GAData.Item 0 0 %Library.String 0 0 0 code PRNr:%Library.String,DItem:Prod.GAData.Item,Verkort:%Library.Boolean=0 0 0 %Library.String 0 De parameter lbKMArgs moet van de vorm zijn $LB( $LB(,) , $LB(,) , $LB(,) , ... )
Mogelijke KMArg list-items zijn:
    $LB(Kenm1,)                     : geeft de vertaling van de kenmerk-waarde van Kenm1
    $LB(Kenm2,)                     : geeft de vertaling van de kenmerk-waarde van Kenm2
    $LB(,"blabla")                  : geeft de letterlijke waarde "blabla" terug (eerste list-item="")
    $LB(Kenm3,"TranslateValue")     : geeft de vertaling van "TranslateValue" volgens meta-kenmerk Kenm3 terug
                                        (TranslateValue kan ook een expressie zijn) 
]]>
0 0 code lbKMArgs:%List,Delim:%String=";",DItem:Prod.GAData.Item,KenmGrp:%String 0 0 %String 0 "_%v_"" #define DItemGetKenmVal DItem.MetaItem.GetKenmVal(Kenm,DItem.Get("PRNr"),DItem.Get("KenmGrp")) ; De variabele "MetaArray" niet declareren !!! Set:('$D(DItem)) DItem=Self Set:('$D(KenmGrp)) KenmGrp=DItem.Get("KenmGrp") Quit:($LL($G(lbKMArgs))=0) "" ; $LL() geeft een ERROR als lbKMArgs geen ListBuild is ! New arKenmEval,KenmLijst,txt,i,Kenm,KMVal,VTL Set KenmLijst=DItem.Eval("Kenm") ; KenmLijst is een $LB() ==> omvormen tot een array For i=1:1:$LL(KenmLijst) Do . Set arKenmEval($LI($LI(KenmLijst,i),1))=$LI($LI(KenmLijst,i),2) ; Build Oms: loop through all KMArg list-items Set txt="" For i=1:1:$LL(lbKMArgs) Do . Set VTL=$$gvkVertaalKenm($LI(lbKMArgs,i)) . Quit:(VTL="") . Set txt=txt_$S(i>1:Delim,1:"")_VTL Quit txt gvkVertaalKenm(lbKMArg) Set Kenm=$LG(lbKMArg,1) Quit:(Kenm="") $LG(lbKMArg,2) ; Else : Set KMVal=$S($LD(lbKMArg,2):$LI(lbKMArg,2), '$D(arKenmEval(Kenm)):$$$DItemGetKenmVal, 1:$G(arKenmEval(Kenm))) ; Open MetaDef Object New MDef,RetVTL Set MDef=$G(MetaArray(KenmGrp_"||"_Kenm)) If '$IsObject(MDef) Do . Set MDef=##class(Prod.Kenmerk.MetaDefinitie).%OpenId(KenmGrp_"||"_Kenm) . Set MetaArray(KenmGrp_"||"_Kenm)=MDef ; Get Vertaling via MetaDef Set RetVTL=$S($IsObject(MDef):MDef.VertaalItem(KMVal,.Taal,"K",1), 1:KMVal) ; , 1:KMVal_" [?MetaDef:"_Kenm_"]") Set MDef="" ; Apply Invers (if defined) Set:($G(%arInvers("DItem","FabrOms",Kenm))=1)&&($L(RetVTL)) RetVTL=$$$MarkInvers(RetVTL) Quit RetVTL /* /// Previous code /// ============= gvkVertaalKenm(lbKMArg) Set Kenm=$LG(lbKMArg,1) Quit:(Kenm="") $LG(lbKMArg,2) ; Else : Set KMVal=$S($LD(lbKMArg,2):$LI(lbKMArg,2), '$D(arKenmEval(Kenm)):$$$DItemGetKenmVal, 1:$G(arKenmEval(Kenm))) New MDef,RetVTL If $D(MetaArray(KenmGrp_"||"_Kenm)) Do . Set MDef=MetaArray(KenmGrp_"||"_Kenm) Else Do . Set MDef=##class(Prod.Kenmerk.MetaDefinitie).%OpenId(KenmGrp_"||"_Kenm) . Set MetaArray(KenmGrp_"||"_Kenm)=MDef Quit:('MDef) KMVal_" [?MetaDef:"_Kenm_"]" ; Else : Set RetVTL=MDef.VertaalItem(KMVal,.Taal,"K",1) Set:($G(%arInvers("DItem","FabrOms",Kenm))=1) RetVTL=$$$MarkInvers(RetVTL) ;Do MDef.%Close() Quit RetVTL */ ]]>
0 0 code PRNr:%Library.String,DItem:Prod.GAData.Item 0 0 %Library.String 0 0 0 code KenmGrp:%Library.String,Kenm:%Library.List,DItem:Prod.GAData.Item 0 %Library.String 0 Valideert het product van het DataItem, als het MetaItem van de klasse "ItemPR*" is. 0 0 code DItem:Prod.GAData.Item,ParamCheck:%Library.String="CheckPR" 0 %Library.Integer 0 DItem.Get("PRLen")) Quit okPR ]]> Opties :
  • GAF : Full XML-beschrijving; i.e. met tag < PRODUCTEN >
  • GAV : VML-code toevoegen
  • GA0 : met Omschrijving van de data in de XML-tags
  • VMLH,VMLC : Opties voor VML-gedeelte: zie KaderDeur.XMLVectorWrite

    XSLURL : Toevoegen van de reference naar de XSL. Indien Leeg (""), tags worden weggelaten.]]> 0 0 code DItem:Prod.GAData.Item,DevObj:%Library.String,Taal:%Library.String,Opties:%Library.String,XSLURL:%Library.String 0 0 %Library.CacheStorage