serial ProdCataloogCNTs,ReportErrorCNTs,KeyCodesCNTs,vhLib.Macro,APPS.PM.OL.Common Default %Library.TMFormClass 0 %TMSpeedButton UnID:%String cache 0 document literal cache 0 %Library.Boolean document literal Args:%String cache 0 document literal UI.PR.Kenm.MainForm BL-klasse voor bewerkingen op Kenmerk.DataDefinities etc. BL.Kenm.ProdMulti %TMSpeedButton %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMPanel PRNr:%Integer,SelectProduct:%Boolean=1 cache 0 %Library.String document literal PRNr:%String cache 0 %Library.String document literal Groep cache 0 %Library.TMTreeNode document literal cache 0 %Library.String document literal cache 0 %Library.String document literal GroepNode,SubGroep cache 0 %Library.TMTreeNode document literal HoofdGroep,ClearProductTreeIfHGChanged cache 0 %Library.Boolean document literal NewUnID:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal %Library.String %TMBevel %TMBevel %Library.Integer %Library.Integer 35 %Library.String 0 %Library.String "PK" %Library.TMForm %Library.Integer 250 %Library.Integer 200 %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMLabel %TMPanel %TMPanel %TMPanel %TMPanel %TMPanel %Library.Boolean 0 %Library.Integer 9 %TMSplitter %TMStatusBar %Library.Integer 30 %Library.String $$%J^vhRtn1() %Library.Integer 0 %TMSpeedButton %Library.TMSpeedButton %TMSpeedButton %TMSpeedButton %TMSpeedButton %TMSpeedButton %TMSpeedButton %TMComboBox %TMComboBox %TMCheckBox %TMImageList %TMImageList %TMLabel %TMMenuItem %TMMenuItem %TMMenuItem %TMMenuItem %TMMemo %TMMemo %TMMemo %TMPopupMenu %TMPopupMenu %TMMenuItem %TMMenuItem %TMMenuItem %TMRichEdit %TMScrollBox %TMTreeView %TMEdit %TMEdit initvalue:%String cache 0 %Status document literal Msg:%String="",ShowOnStatusBar:%Boolean="False",RegularAdd="False" cache 0 document literal blnKeepSubID:%Boolean=0 cache 0 document literal combo selectie .. Do ..AddMsgToLog(" - Bezig met het openen van de bestaande DataDefinitie..."_kenmerkRunner_".") .. Set tmpDataDef=##class(Prod.Kenmerk.DataDefinitie).%OpenId(DataDefID) . Else Do .. Do ..AddMsgToLog(" - Bezig met het opbouwen van de nieuwe DataDefinitie..."_kenmerkRunner_".") .. Set tmpDataDef=##class(Prod.Kenmerk.DataDefinitie).%New() .. Do tmpDataDef.KenmerkSetObjectId(HoofdGroep_"||"_kenmerkRunner) .. Set tmpDataDef.UnID=UnID .. ;Do tmpDataDef.ProductSetObjectId(PRNr) . If tmpDataDef=$$$NULLOREF Do ..ReportError($$$reUnableToOpenObj,"DataDef: "_DataDefID) Quit //ERROR OCCURED...SHOW IT . If $LI(Local(kenmerkRunner),$$$kiMultiple)="True" Do //Waarden toekennen aan velden .. New tmpListDataPump .. Set tmpListDataPump=Local(kenmerkRunner,$$$ldListPump,1) .. Do tmpListDataPump.CopyFullSourceListToSource() //Kopiëren volldige waardenlijst .. Do tmpListDataPump.LoadDestViaList(tmpDataDef.Waarden) //Elementen in SRC LIST wo autom. verwijderd! .. Do ..SetMultipleValue(kenmerkRunner,tmpDataDef.Waarden) . Else Do .. Do ..SetNonMultipleValue(kenmerkRunner,tmpDataDef.Waarden) . Set DataDef(kenmerkRunner)=tmpDataDef If HoofdGroep="OL" Do ; Added by WimV on 12/05/2011 . Set DataDefGT=$G(DataDef("GeneratieType")) . Set GeneratieType=$S($IsObject(DataDefGT):DataDefGT.Waarden.GetAt(1), 1:"") . d WLIP^vhDBG(97,"GT="_GeneratieType) . Set ..btnGenereerAutoVarianten.Enabled = $S(GeneratieType=$$$gtMaster:"True", 1:"False") Else Do . Set ..btnGenereerAutoVarianten.Enabled = "False" Do ..AddMsgToLog() Quit ]]> cache 0 document literal Quit! //Initialiseren van BL-klasse ; Added by WimV on 18/09/2008 Do:($IsObject(..blKenm)) ..blKenm.SetMetaGroep("") ; Close previous MetaGroep + swizzled MetaDefs Set ..blKenm=##class(BL.Kenm.ProdMulti).Create(##class(Prod.Kenmerk.MetaGroep).%OpenId(Filter)) Set ..btnAddMulti.Enabled=$S(..blKenm.AllowMultiple:"True", 1:"False") //MetaDefinities voor een hoofdgroep inlezen... New RS Set RS=##class(%ResultSet).%New("Prod.Kenmerk.MetaDefinitie:FilterMetaDefsViaGroep") //Error handling voor ResultSet van daarnet If RS=$$$NULLOREF Do ..ReportError($$$reCannotCreateNewObj,"ResultSet:FilterMetaDefsViaGroep") Quit New Count,YOffs Set Count=0 Set YOffs=20 New tmpStatus Set tmpStatus=RS.Execute(Filter) //Error handling voor Execute If $$$ISERR(tmpStatus) Do ..ReportError($$$reStatusError,tmpStatus),RS.%Close() Quit //OPBOUWEN DYNAMISCHE COMPONENTEN Set ..sbKenmerken.Visible="False" Do ..BuildVVPos() //MOUSE & STATUSBAR: busy Set MApplication.ScreenCursor=$$$crHourGlass Do ..AddMsgToLog("Bezig met het opbouwen van de componenten...","True") For Quit:'RS.Next() Do // QUERY START ---------> . Quit:(RS.Get("Kenmerk")=$$$KenmMultiPRNr) . If RS.Get("Multiple")>1 Do .. Do ..AddMsgToLog(" - Bezig met het opbouwen van de multiple..."_RS.Get("Kenmerk")_".") .. Do ..CreateMultiple(.Count,.YOffs,RS) //heeft eigen count+1, alsook Yoffset regeling . Else Do .. Do ..AddMsgToLog(" - Bezig met het opbouwen van de NON multiple..."_RS.Get("Kenmerk")_".") .. Do ..CreateNonMultiple(.Count,.YOffs,RS) //heeft eigen count+1, alsook Yoffset regeling . Do ..CreateKenmerkInfo(RS) Set ..sbKenmerken.Visible="True" Do RS.%Close() // QUERY STOP --------< //Verwerken van paintmessages: Do MApplication.ProcessMessages() //MOUSE & STATUSBAR: clear Set MApplication.ScreenCursor=$$$crDefault Do ..AddMsgToLog() Quit ]]> cache 0 document literal UnID Set ^TranslationBag(..TranslationBagKey,$$$tbsUnID)=..GetSelectedUnID() Do ..AddMsgToLog(" - "_$Name(^TranslationBag(..TranslationBagKey,$$$tbsUnID))_"="_^TranslationBag(..TranslationBagKey,$$$tbsUnID)) //---> Waarden & kenmerken New VTA,Key,Loop //VTA: VertaalTransAbstract For Set kenmerkRunner=$O(Local(kenmerkRunner)) Quit:(kenmerkRunner="") Do . Set MetaDefID=HoofdGroep_"||"_kenmerkRunner . Set MetaDefExists=##class(Prod.Kenmerk.MetaDefinitie).%ExistsId(MetaDefID) . If 'MetaDefExists Do ..ReportError($$$reObjDoesNotExist,"MetaDef: "_MetaDefID) Quit //Error handling . Set tmpMetaDefObj=##class(Prod.Kenmerk.MetaDefinitie).%OpenId(MetaDefID) . If tmpMetaDefObj=$$$NULLOREF Do ..ReportError($$$reUnableToOpenObj,"MetaDef: "_MetaDefID) Quit . Set Key="" . For Set VTA=tmpMetaDefObj.VertaalTransforms.GetNext(.Key) Quit:(Key="") Do .. If VTA.IsSubstitutie() Do //-> SUBSTITUTIE geval: sleutels lezen en in bag steken ... Do ProcessSubstitutie(VTA) .. Else Do //-> GEEN SUBSTITUTIE, gewoon languages opvragen ... New Loop ... For Loop=1:1:$L(VTA.VertalingsTypes,";") Do .... Do ProcessNonSubstitutie(tmpMetaDefObj.Kenmerk,$P(VTA.VertalingsTypes,";",Loop)) . Do tmpMetaDefObj.%Close() //MOUSE & STATUSBAR: clear Do ..AddMsgToLog() Set MApplication.ScreenCursor=$$$crDefault Quit //---=[SUBSTITUTIE]=---------------------------- ProcessSubstitutie(VTA) //VTA: VertaalTransAbstract New Sleutels,SleutelLoop,tmpSleutel Set Sleutels=VTA.GetVertalingsSleutels() For SleutelLoop=1:1:$LL(Sleutels) Do . Set tmpSleutel=$LI($LI(Sleutels,SleutelLoop),2) . Do AddToBag(tmpSleutel,$LI($LI(Sleutels,SleutelLoop),1)) Quit //---=[NON SUBSTITUTIE]=---------------------------- ProcessNonSubstitutie(Kenmerk,VertalingsType) Quit:(Kenmerk="") If $LI(Local(Kenmerk),$$$kiMultiple)="True" Do . ;MULTIPLE . New tmpListPump,Loop . Set tmpListPump=Local(Kenmerk,$$$ldListPump,1) . For Loop=0:1:tmpListPump.lbDest.Items.Count-1 Do .. Do AddToBag(tmpListPump.lbDest.Items.GetStrings(Loop),VertalingsType) Else Do . ;NON MULTIPLE . New tmpCombo . Set tmpCombo=Local(Kenmerk,$$$ldKenmerkCombo,1) . Do AddToBag(tmpCombo.Text,VertalingsType) Quit //==================================================== AddToBag(Intern,VertalingsType) Quit:((Intern="") || (VertalingsType="")) Do ..AddMsgToLog(" - TranslationBag(" _ ..TranslationBagKey _ ",""" _ Intern _ ""","""_VertalingsType_""")") Set ^TranslationBag(..TranslationBagKey,Intern,VertalingsType)=1 Quit ]]> cache 0 document literal cache 0 document literal cache 0 document literal cache 0 document literal cache 0 document literal cache 0 document literal unswizzled MetaDefs . Set ..btnAddMulti.Enabled=$S(..blKenm.AllowMultiple:"True", 1:"False") New kenmerkRunner,LocalData,MultipleLoop Set (kenmerkRunner,LocalData,MultipleLoop)="" Set ..sbKenmerken.Visible="False" For Set kenmerkRunner=$O(Local(kenmerkRunner)) Quit:(kenmerkRunner="") Do . Do ..AddMsgToLog(" - Bezig met het verwijderen van de objecten..."_kenmerkRunner_".") . For Set LocalData=$O(Local(kenmerkRunner,LocalData)) Quit:(LocalData="") Do .. For Set MultipleLoop=$O(Local(kenmerkRunner,LocalData,MultipleLoop)) Quit:(MultipleLoop="") Do ... Set ORef=Local(kenmerkRunner,LocalData,MultipleLoop) ... If ORef.%IsA("%TMControl") Do //InVisible alle Components derived van TMControl .... Set ORef.Visible="False" .... Set ORef.Parent=0 ... Do ORef.%Close() Set ..sbKenmerken.Visible="True" Kill Local //MOUSE & STATUSBAR: clear Do ..AddMsgToLog() Set MApplication.ScreenCursor=$$$crDefault Quit ]]> RS:%ResultSet cache 0 document literal 1 Do . Set Multiple="True" Else Do . Set Multiple="False" //kiMultipleMax: maximum aantal in te geven waarden voor een (eventuele) multiple New MultipleMax Set MultipleMax=RS.Get("Multiple") //kiMultipleDispl: maximum aantal zichtbare waarden New MultipleDisplay Set MultipleDisplay=RS.Get("MultipleDisplay") Set Local(RS.Get("Kenmerk"))=$LB(Multiple,MultipleMax,MultipleDisplay) Quit ]]> cache 0 document literal --- . Set Label=##class(%TMLabel).%New($LB(%this.sbKenmerken.Address,0)) . Set Label.Top=YOffs+2 . Set VVSinglePos=$G(VVPos(VertalingsType),Loop) . Set Label.Left=70 + ..KenmerkLabelWidth + ..KenmerkComboWidth + ((VVSinglePos-1)*(..TaalEditWidth+15)) . Set Label.Caption=VertalingsType . Set Label.Font.Name="Tahoma" . Set Label.Font.Size=8 . Set Label.Alignment=$$$taRightJustify . Set Language(RS.Get("Kenmerk"),VertalingsType,ComponentIndex,$$$lcLabel)=Label . ;---< DYNAMIC LANGUAGE EDIT >--- . Set Edit=##class(%TMEdit).%New($LB(%this.sbKenmerken.Address,0)) . Set Edit.Top=YOffs . Set Edit.Left=Label.Left+Label.Width+1 . Set Edit.Width=..TaalEditWidth . Set Edit.ReadOnly="False" . Set Edit.Ctl3D="False" . Set Edit.Font.Size=8 . Set Edit.Font.Name="Tahoma" . Set Edit.Height=16 . Set Edit.TabStop="False" . Set Edit.Color=15461355 //een licht grijs . Set Edit.BorderStyle=$$$bsSingle . Set Language(RS.Get("Kenmerk"),VertalingsType,ComponentIndex,$$$lcEdit)=Edit Quit ]]> cache 0 document literal cache 0 document literal cache 0 document literal ; SimplePanel = False ; object btnExpandMsgs: CSpeedButton ; Left = 810 ; Top = 3 ; Width = 16 ; Height = 15 ; Anchors = [akRight, akBottom] ; Caption = 'é' ; Font.Charset = SYMBOL_CHARSET ; Font.Color = clRed ; Font.Height = -11 ; Font.Name = 'Wingdings' ; Font.Style = [] ; ParentFont = False ; OnClick = btnExpandMsgsClick ; end ; end ; object reLog: CRichEdit ; Left = 73 ; Top = 459 ; Width = 129 ; Height = 57 ; Color = clBlack ; Font.Charset = ANSI_CHARSET ; Font.Color = clYellow ; Font.Height = -11 ; Font.Name = 'Courier New' ; Font.Style = [] ; ParentFont = False ; ScrollBars = ssBoth ; TabOrder = 4 ; Visible = False ; WordWrap = False ; end ; object pnlProdMulti: CPanel ; Left = 303 ; Top = 103 ; Width = 721 ; Height = 35 ; Anchors = [akLeft, akTop, akRight] ; BevelInner = bvLowered ; TabOrder = 5 ; object lblProdMultiUnID: CLabel ; Left = 113 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object btnAddMulti: CSpeedButton ; Left = 9 ; Top = 6 ; Width = 61 ; Height = 21 ; Hint = 'Nieuwe multiple van dit product maken' ; Caption = 'Add Multi' ; OnClick = btnAddMultiClick ; end ; object lblProdMultiUnID1: CLabel ; Left = 185 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object lblProdMultiUnID2: CLabel ; Left = 257 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object lblProdMultiUnID3: CLabel ; Left = 329 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object lblProdMultiUnID4: CLabel ; Left = 401 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object lblProdMultiUnID5: CLabel ; Left = 473 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object lblActiveSubID: CLabel ; Left = 73 ; Top = 6 ; Width = 32 ; Height = 21 ; AutoSize = False ; Caption = 'SubID' ; Layout = tlCenter ; end ; object lblProdMultiUnID6: CLabel ; Left = 545 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object lblProdMultiUnID7: CLabel ; Left = 617 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object lblProdMultiUnID8: CLabel ; Left = 689 ; Top = 6 ; Width = 65 ; Height = 21 ; Alignment = taCenter ; AutoSize = False ; Caption = 'UnID' ; Color = clSilver ; ParentColor = False ; Layout = tlCenter ; OnClick = lblProdMultiUnID1Click ; end ; object btnGenereerAutoVarianten: CSpeedButton ; Left = 566 ; Top = 6 ; Width = 149 ; Height = 21 ; Hint = 'Genereer AUTO varianten voor deze master' ; Anchors = [akTop, akRight] ; Caption = 'Genereer AUTO varianten' ; Enabled = False ; OnClick = btnGenereerAutoVariantenClick ; end ; end ; object ilTreeView: CImageList ; Left = 16 ; Top = 560 ; Bitmap = 'CLSDFOLD.ICO,OPENFOLD.ICO,MISC14.ICO,MISC15.ICO,MISC16.ico' ; end ; object pmVoorbeeldTalen: CPopupMenu ; Left = 808 ; Top = 531 ; end ; object pmUtils: CPopupMenu ; Images = ilUtils ; Left = 320 ; Top = 525 ; object miCopyValues: TMenuItem ; Caption = 'Kopiëren' ; ImageIndex = 0 ; ShortCut = 112 ; OnClick = miCopyValuesClick ; end ; object miPasteValues: TMenuItem ; Caption = 'Plakken' ; ImageIndex = 1 ; ShortCut = 113 ; OnClick = miPasteValuesClick ; end ; object miClearValues: TMenuItem ; Caption = 'Wissen' ; ImageIndex = 2 ; OnClick = miClearValuesClick ; end ; object pmiSep1: TMenuItem ; Caption = '-' ; end ; object miPasteWhenEmpty: TMenuItem ; Caption = 'Plakken wanneer leeg' ; Checked = True ; OnClick = miPasteWhenEmptyClick ; end ; object pmiSep2: TMenuItem ; Caption = '-' ; end ; object pmiDeleteAllKenm: TMenuItem ; Caption = 'Verwijder alle kenmerken' ; OnClick = pmiDeleteAllKenmClick ; end ; end ; object ilUtils: CImageList ; Left = 348 ; Top = 525 ; Bitmap = 'EditCopy.bmp,EditPaste.bmp,EditCut.bmp' ; end ;end ]]> Args:%String cache 0 document literal Args:%String cache 0 document literal cache 0 document literal cache 0 document literal cache 0 document literal ListPump:UI.Lib.Dlg.ListDataPump,Kenmerk:%String cache 0 document literal ComboORef:%TMComboBox,Kenmerk:%String cache 0 document literal cache 0 document literal PRNr:%String cache 0 document literal cache 0 document literal Type:%Library.Integer=$$$ptdRawData cache 0 %Library.String document literal cache 0 document literal cache 0 %Library.String document literal Group:%Library.String,UnID:%String cache 0 %Library.Boolean document literal initvalue:%String cache 0 MApplication document literal Kenmerk:%String cache 0 %Library.Boolean document literal Args:%String cache 0 document literal Args:%String cache 0 document literal W") ;Form tonen + handling van eventuele 'Ok' press New tmpAnswer,Loop,tmpLB Set tmpAnswer=ListSortForm.Form.ShowModal() If tmpAnswer=$$$mrOk Do . If ListSortForm.lbSortList.Items.Count=0 Set Sender.Font.Style=$LB() //Interface duidelijk maken of default . Else Set Sender.Font.Style=$LB("fsBold","fsUnderline") //sortering wordt gebruikt of niet . Set tmpMetaDef.WaardenSortering="" ; Do tmpMetaDef.WaardenSortering.Clear() . ;New StrToAdd . ;For Loop=0:1:ListSortForm.lbSortList.Items.Count-1 Do . ;. Set StrToAdd=ListSortForm.lbSortList.Items.GetStrings(Loop) . ;. For Quit:($E(StrToAdd,$L(StrToAdd))'=" ") Set StrToAdd=$E(StrToAdd,1,$L(StrToAdd)-1) ; RTrim(StrToAdd) . ;. Do tmpMetaDef.WaardenSortering.Insert(StrToAdd) . Set tmpLB="" . For Loop=0:1:ListSortForm.lbSortList.Items.Count-1 Set tmpLB=tmpLB_$LB($$$RTrim(ListSortForm.lbSortList.Items.GetStrings(Loop))) . Set tmpMetaDef.WaardenSortering=tmpLB . Do ..AddMsgToLog(" - Bezig met bewaren van de sortering...") . New tmpStatus . Set tmpStatus=tmpMetaDef.%Save() . If $$$ISERR(tmpStatus) Do ..ReportError($$$reStatusError,tmpStatus) Do tmpMetaDef.%Close() ;End of user code s Args=$lb(Sender) q //============================================================================== FillSortListNonMultiple(Groep,Kenmerk,MetaDef,ListBox) Kill AvailableWaarden ;Inlezen van alle mogelijke waarden voor het kenmerk New tmpCombo,Loop,Value Set tmpCombo=Local(Kenmerk,$$$ldKenmerkCombo,1) ;For Loop=0:1:tmpCombo.Items.Count-1 Do ;. Set Value=tmpCombo.Items.GetStrings(Loop) ;. For Quit:($E(Value,$L(Value))'=" ") Set Value=$E(Value,1,$L(Value)-1) ;. Set AvailableWaarden(Value)=1 For Loop=0:1:tmpCombo.Items.Count-1 Set AvailableWaarden($$$RTrim(tmpCombo.Items.GetStrings(Loop)))=1 ;ListBox opvullen met de waarden, rekening houden met eventuele sortering in MetaDef New lbWdSort,ValueLoop Set lbWdSort=MetaDef.WaardenSortering If $LL(lbWdSort)=0 Do ; .Count()=0 . Do ..AddMsgToLog(" - Sortering non-multiple (DEFAULT) wordt weergegeven...") Else Do . Do ..AddMsgToLog(" - Sortering non-multiple wordt weergegeven...") . New Key,SortedValues . ;Set Key="" . ;For Set Value=MetaDef.WaardenSortering.GetNext(.Key) Quit:(Key="") Do . For Key=1:1:$LL(lbWdSort) Do .. Set Value=$LG(lbWdSort,Key) .. If $D(AvailableWaarden(Value)) Do ... Set SortedValues(Key)=Value //Toevoegen aan gesorteerde ... Kill AvailableWaarden(Value) //Weghalen bij niet-gesorteerde . Set Key="" . For Set Key=$O(SortedValues(Key)) Quit:(Key="") Do .. Do ListBox.Items.Add(SortedValues(Key)) ;Niet-gesorteerde waarden in SortList plaatsen Set ValueLoop="" For Set ValueLoop=$O(AvailableWaarden(ValueLoop)) Quit:(ValueLoop="") Do . Do ListBox.Items.Add(ValueLoop) Quit //----------------------------------------------------------------------------- FillSortListMultiple(Groep,Kenmerk,MetaDef,ListBox) Kill AvailableWaarden ;Inlezen van alle mogelijke waarden voor het kenmerk New tmpListPump,Value,Key Set tmpListPump=Local(Kenmerk,$$$ldListPump,1) Set Key="" For Set Value=tmpListPump.FullSourceList.GetNext(.Key) Quit:(Key="") Do . For Quit:($E(Value,$L(Value))'=" ") Set Value=$E(Value,1,$L(Value)-1) . Set AvailableWaarden(Value)=1 ;ListBox opvullen met de waarden, rekening houden met eventuele sortering in MetaDef New lbWdSort,ValueLoop Set lbWdSort=MetaDef.WaardenSortering If $LL(lbWdSort)=0 Do ; .Count()=0 . Do ..AddMsgToLog(" - Sortering multiple (DEFAULT) wordt weergegeven...") Else Do . Do ..AddMsgToLog(" - Sortering multiple wordt weergegeven...") . New Key,SortedValues . ;Set Key="" . ;For Set Value=MetaDef.WaardenSortering.GetNext(.Key) Quit:(Key="") Do . For Key=1:1:$LL(lbWdSort) Do .. Set Value=$LG(lbWdSort,Key) .. If $D(AvailableWaarden(Value)) Do ... Set SortedValues(Key)=Value //Toevoegen aan gesorteerde ... Kill AvailableWaarden(Value) //Weghalen bij niet-gesorteerde . Set Key="" . For Set Key=$O(SortedValues(Key)) Quit:(Key="") Do .. Do ListBox.Items.Add(SortedValues(Key)) ;Niet-gesorteerde waarden in SortList plaatsen Set ValueLoop="" For Set ValueLoop=$O(AvailableWaarden(ValueLoop)) Quit:(ValueLoop="") Do . Do ListBox.Items.Add(ValueLoop) Quit ]]> initvalue:%String cache 0 %Library.Status document literal Args:%String cache 0 document literal Args:%String cache 0 document literal UnID:%String cache 0 document literal UnID:%String cache 0 document literal cache 0 document literal ErrorType:%Integer,Msg:%String="",Silent:%Boolean="False",MsgBoxType=0 cache 0 document literal ToonMasterAutoWarning:%Boolean=1 cache 0 %Library.Boolean document literal Kenmerk:%String,Waarden:%ListOfDataTypes cache 0 document literal Waarden.Count() Do .. Set tmpEdit.Text="" . Else Do .. Set tmpEdit.Text=Waarden.GetNext(.Loop) Quit ]]> Kenmerk:%String,Waarden:%ListOfDataTypes cache 0 document literal 0 Do . Set tmpCombo.Text=Waarden.GetNext(Loop) Else Do . Set tmpCombo.Text="" Quit ]]> cache 0 document literal Kenmerk:%String cache 0 document literal Kenmerk:%String cache 0 document literal Node:%TMTreeNode cache 0 document literal Kenmerk:%String cache 0 document literal cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal _"+%" toevoegen) . Set ..VertalingForm.TranslationBagKey=0 //Standaard geen TranslationBag gebruiken . If ..tvProducten.Selected Do .. If ..tvProducten.Selected.Level=2 Do ... Do ..BuildTranslationBag() ... Set ..VertalingForm.TranslationBagKey=..TranslationBagKey //TranslationBag gebruiken bij Level2 selectie=product . Do ..VertalingForm.dCOMPWRITEsgVertalingen() . Do ..VertalingForm.Form.ShowModal() . Do ..VertalingForm.Form.Hide() . Do ..UpdateTranslationIndicators() Else Do . Do MApplication.MessageBox("Fout bij het openen van het vertalingsscherm.","VAN HOECKE",$$$MBICONWARNING) ;End of user code s Args=$lb(Sender) q ]]> Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal cache 0 document literal cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal 1 Do .. Do ..SetMultipleValue(kenmerkRunner,tmpDDWaarden) . Else Do .. Do ..SetNonMultipleValue(kenmerkRunner,tmpDDWaarden) Do ..UpdateTranslationIndicators() Set ..PastePerformed=1 ;End of user code s Args=$lb(Sender) q ]]> Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal %Library.CacheSerialState "%Library.TMFormClass" Address Form Bevel1 Bevel2 Bevel3 Button1 ComponentDistance CurrentTranslationGroup KenmerkComboWidth KenmerkLabelWidth Label1 Label11 Label12 Label2 Label3 Panel1 Panel2 Panel3 Panel4 Panel5 StatusBar TaalEditWidth VertalingForm btnAnnuleren btnExpandMsgs btnOpslaan btnSearchProduct btnVertaling btnVoorbeeld cbbHoofdGroep chkViaProdIngaveEnKlassif ilTreeView lblDirectory lblExt lblLinks lblPlaats lblSoort lblTaalAfh lblURL mmoLangTekst mmoMsgs mmoOmschrijving sbKenmerken sbLinks tvProducten txtProduct txtUserInputProduct TranslationBagKey CurrentLockProd lblReadOnly reLog pmVoorbeeldTalen BaseURL miCopyValues miPasteValues pmUtils rbKlassificatie rbMetaGroep ilUtils miPasteLastValues miClearValues cbbMetaGroep MenuItem1 miPasteWhenEmpty Label13 MenuItem2 miUpdateKenmerkWaarden COSForm btnCacheObjectSpy btnClearFields pmiSep1 pmiSep2 mmoLangTekstFR pmiDeleteAllKenm pmiSep3 Splitter1 PastePerformed btnShowEmptyItemsInTree blKenm Label14 Label15 Label16 Label17 Label18 btnAddMulti lblActiveSubID lblProdMultiUnID pnlProdMulti lblProdMultiUnID1 lblProdMultiUnID2 lblProdMultiUnID3 lblProdMultiUnID4 lblProdMultiUnID5 lblProdMultiUnID6 lblProdMultiUnID7 lblProdMultiUnID8 ProdMultiUnIDsArrayCnt btnGenereerAutoVarianten