NordWest, вот решение с удалением устаревших записей. Для наглядности в 10 секунд. Add(MainForm,15605431,112,161) { Left=20 Top=105 Width=617 Height=321 Caption="LSMF" BorderStyle=1 Point(onClose) Point(Handle) } Add(FormatStr,4287192,252,203) { DataCount=3 Mask="%2;%1;%3" Point(FString) link(onFString,11515050:doGetIndex,[]) link(Str1,2566876:String,[(258,169)(216,169)]) link(Str2,9496182:DateTime,[]) link(Str3,14878113:String,[(272,169)(314,169)]) } Add(Button,6003742,161,203) { Left=10 Top=260 Caption="Послать" link(onClick,9994811:doEvent1,[]) } Add(ComboBox,2566876,203,98) { Left=85 Top=260 Width=105 Height=21 Strings=#4:User|9:Moderator|14:Supermoderator|5:Admin|5:Гость| Text="" } Add(ComboBox,14878113,301,98) { Left=195 Top=260 Width=205 Height=21 Strings=#19:Просматривает форум|34:Просматривает тему (название темы)|31:Отвечает в тему (название темы)|30:Изменяет настройки уведомлений|20:Неизвестное действие|0:|0:| Text="" Point(Index) } Add(MTStrTbl,4820124,112,203) { Left=10 Top=10 Width=590 Height=240 Name="123" Columns=#8:Дата=150|6:Имя=80|24:Выполняемое действие=450| } Add(StrList,11515050,371,161) { Point(doGetIndex) Point(onGetIndex) Point(EndIdx) link(Str,4287192:FString,[(377,148)(334,148)(334,246)(258,246)]) link(onGetIndex,1657262:doCompare,[]) } Add(If_else,1657262,420,168) { Op2=Integer(-1) link(onTrue,11515050:doAdd,[(462,174)(462,154)(359,154)(359,167)]) } Add(DateDiff,12705188,497,392) { link(onCalc,200667:doSeparateMT,[]) link(DateTime1,9313117:DateTime,[]) } Add(ArrayEnum,9007903,385,392) { link(onItem,14899369:doSplit,[]) link(Array,14633374:Var2,[]) } Add(MT_MultiData,200667,546,392) { link(onData1,5036263:doCompare,[]) } Add(Hub,9994811,210,203) { link(onEvent1,4287192:doString,[]) link(onEvent2,742404:doEvent1,[(236,216)(236,391)]) } Add(If_else,5036263,602,392) { @Hint=#64:Разница в 10 секунд. Установи 900 секунд для разницы в 15 минут.| Type=2 Op2=Integer(10) link(onTrue,15305970:doData,[]) AddHint(-87,-101,199,26,@Hint) } Add(DoData,15305970,658,392) { link(onEventData,1010409:doEvent1,[(706,398)(706,328)(324,328)(324,272)]) link(Data,9007903:Index,[(664,383)(641,383)(641,436)(398,436)]) } Add(Time,9313117,490,350) { Format="D-M-Y h:m:s" Point(DateTime) } Add(Time,9496182,252,112) { Format="D-M-Y h:m:s" Point(DateTime) } Add(MST_Clear,15450865,315,350) { MSTControl="123" } Add(Hub,742404,259,385) { OutCount=3 link(onEvent1,15450865:doClear,[(294,391)(294,356)]) link(onEvent2,1855106:doWork2,[]) link(onEvent3,2853078:doEnum,[(353,405)(353,475)]) } Add(Hub,1010409,336,266) { link(onEvent1,11515050:doDelete,[(360,272)(360,181)]) link(onEvent2,1855106:doWork1,[(361,279)]) } Add(HubEx,1855106,357,392) { link(onEvent,9007903:doEnum,[]) } Add(ArrayEnum,2853078,434,469) { PColor(Array,16755200) link(onItem,7136794:doSplit,[]) link(Array,14633374:Var3,[(440,376)]) } Add(MultiStrPart,7136794,476,469) { Direct=1 link(onSplit,5662884:doConvert,[]) } Add(DateConvertor,5662884,518,469) { Mode=9 Format="d-M-y h:m:s" Point(Result) link(onResult,9736192:doAdd,[(562,475)(562,499)(471,499)(471,524)]) } Add(MST_RowAction,9320027,532,518) { MSTControl="123" } Add(MT_AddData,9736192,483,518) { Count=3 link(onAdd,9320027:doRowAction,[]) link(Data1,5662884:Result,[(489,510)(524,510)]) link(Data2,7136794:Part2,[(496,510)(489,510)]) link(Data3,7136794:Part1,[(503,510)(482,510)]) } Add(GetDataEx,14633374,385,371) { PColor(Data,16755200) link(Data,11515050:Array,[]) } Add(MultiStrData,14899369,455,392) { Count=1 link(onPart1,12705188:doCalc,[]) }
Если изменения произойдут в StrList, значит после перебора это затронет и содержание в таблице.
|