Add(CableVar,1758870,280,231) { Count=3 link(Cable,11070102:GetData,[]) } Add(EventFromData,11070102,280,182) { link(onEvent,847294:Cable,[]) } Add(CableEvent,847294,329,182) { Count=3 link(Wire1,9866887:doWork1,[(364,188)]) link(Wire2,9866887:doWork2,[]) link(Wire3,1733508:doWork2,[(352,202)(352,201)]) } Add(PointHint,13335829,385,182) { Info=#46:Разные действия, возвращающие разный результат| VAlign=0 Width=162 Height=39 link(Event,11070102:doData,[(559,201)(559,163)(262,163)(262,188)]) } Add(HubEx,1733508,360,195) { link(onEvent,13335829:Method,[]) } Add(HubEx,9866887,360,189) { Angle=1 link(onEvent,1733508:doWork1,[]) } Add(FormatStr,9445850,280,259) { DataCount=3 link(onFString,9308199:doMessage,[]) link(Str1,1758870:Wire1,[]) link(Str2,1758870:Wire2,[]) link(Str3,1758870:Wire3,[]) } Add(Button,10768331,231,259) { Left=230 Top=255 link(onClick,9445850:doString,[]) } Add(Message,9308199,329,259) { } Add(PointHint,7556901,133,119) { Info=#55:Точно не помню, где, но мне необходимо было сделать так| VAlign=0 Width=295 } Add(PointHint,8643617,133,308) { Info=#181:Естественно, это у меня работать не стало, я полез в исходники кабелей, чтобы разобраться в проблеме, обнаружил что структура образовавшегося МТ-потока на вертикальном кабеле такая:|627:с FormatString вверх подаются данные, назовем их Data1, затем в кабеле образуется новая структура TData, назовем ее DataCable, затем в хвост DataCable добавляется Data1 ([DataCable][Data1] - MT-thread) и после того, как кабель распаковывается в горизонтальном кабеле выдается в поток Data1, но тот же элемент DoData уничтожает Data1 и создает новые данные, которые потом и выдает в поток => в Data1 не устанавливается новое ожидаемое значение => так как кабель вертикальный после события Cable (точка сверху) берет значение из Data1 и приравнивает _Data к Data1 (_Data := Data1;), то выдает в поток к FormatString пустую строку| VAlign=0 HAlign=0 Width=498 Height=151 }