Make(delphi) ver(4.05 build 186) Add(MainForm,2411714,371,441) { Width=228 Height=318 Caption="DS_UserData" Position=1 link(onCreate,15682132:doEvent1,[]) } Add(ComboBox,10584694,525,441) { Left=5 Top=5 Width=200 Height=21 Point(doSelect) link(onClick,64688:doEvent1,[(564,454)(564,489)(459,489)(459,510)]) } Add(DoData,12231519,532,518) { link(onEventData,1409511:doEvent1,[]) link(Data,10584694:String,[]) } Add(Hub,64688,469,504) { InCount=2 link(onEvent1,12231519:doData,[(507,510)(507,524)]) link(onEvent2,13621230:doWork2,[]) } Add(Hub,15682132,420,455) { OutCount=4 link(onEvent1,12039475:doEnum,[(445,461)(445,335)]) link(onEvent2,8274039:doData,[(466,468)(466,440)]) link(onEvent3,10584694:doSelect,[]) link(onEvent4,64688:doEvent2,[(452,482)(452,517)]) } Add(MListBox,6605505,644,511) { Left=5 Top=30 Width=200 Height=190 DataSource="udata" CaptionField="data_1" DataType=2 DataField="data_1" Point(doCaptionField) link(onSelectChange,2411714:doCaption,[(746,517)(746,692)(361,692)(361,447)]) } Add(Button,15570052,518,616) { Left=5 Top=230 TabOrder=-1 Caption="Read" link(onClick,5631653:doRead,[]) } Add(Hub,1409511,581,518) { link(onEvent1,6605505:doCaptionField,[]) link(onEvent2,5631653:doColumn,[(606,531)(606,636)]) } Add(Edit,10937618,644,553) { Left=65 Top=240 Width=35 Text="0" } Add(Edit,1827762,700,616) { Left=105 Top=230 Width=100 Text="" link(onChange,2194502:doText,[(739,622)(739,545)(690,545)(690,559)]) } Add(Edit,2194502,700,553) { Left=105 Top=255 Width=100 Text="" } Add(MReadWrite,5631653,644,616) { DataSource="udata" Point(Count) Point(doColumn) link(onRead,1827762:doText,[]) link(Index,10937618:Text,[]) link(Value,2194502:Text,[(657,600)(706,600)]) } Add(Button,16699017,518,651) { Left=5 Top=255 TabOrder=-1 Caption="Write" link(onClick,6316535:doEvent1,[]) } Add(Hub,6316535,588,651) { link(onEvent1,5631653:doWrite,[(613,657)(613,629)]) link(onEvent2,13621230:doWork3,[(627,664)]) } Add(HubEx,13621230,623,511) { link(onEvent,6605505:doRefresh,[]) } Add(MT_MTArray,7856439,742,259) { } Add(StrList,9181059,455,273) { Strings=#20:data_1;data_2;data_3|12:item1;34;125|12:item2;56;127|12:item3;77;567|12:item4;66;789|12:item5;34;478| } Add(ArrayEnum,12039475,469,329) { link(onItem,15318260:doCompare,[]) link(Array,9181059:Array,[]) } Add(MT_String,6643877,679,322) { link(onResult,4619601:doAdd,[]) } Add(If_else,15318260,525,329) { Op2=Integer(0) link(onTrue,10165660:doReplace,[(564,335)(564,265)]) link(onFalse,6643877:doMTString,[]) link(Op1,12039475:Index,[(531,320)(517,320)(517,369)(482,369)]) } Add(DS_UserData,12723061,581,399) { Name="udata" Point(RowWrite) link(Count,4619601:Count,[(587,390)(755,390)]) link(Columns,14996433:Var2,[]) link(Row,3512110:GetData,[(601,299)(643,299)]) link(RowWrite,15282888:GetData,[(608,313)(685,313)]) } Add(MT_MTArrayRW,4619601,742,308) { Point(Count) link(onRead,3512110:doData,[(781,314)(781,251)(627,251)(627,265)]) link(Array,7856439:Array,[]) } Add(EventFromData,3512110,637,259) { link(onEvent,4619601:doRead,[(732,265)(732,314)]) } Add(Replace,10165660,588,259) { SubStr=";" DestStr="\r\n" Point(CurentStr) } Add(EventFromData,15282888,679,273) { link(onEvent,4619601:doWrite,[(725,279)(725,321)]) } Add(DoData,8274039,476,434) { link(onEventData,10584694:doText,[(515,440)(515,468)]) link(Data,14996433:Var1,[(482,376)]) } Add(GetDataEx,14996433,588,371) { link(Data,10165660:CurentStr,[]) }