Вверх ↑
Ответов: 146
Рейтинг: 0
#1: 2025-03-13 01:54:30 ЛС | профиль | цитата
nesco писал(а):
или что-то надо дополнить?

Упс, простите Nesco, точно, предыдущая схема же отрисовывает линии по строкам)
Отвлекался на другой проект, сейчас вернулся в тему с табличными данными и скопировал последнюю схему посмотреть.


Впрочем, если вас не затруднит, помогите с составлением таблицы для таких строк как в моем примере (первую ячейку соотв. нужно объединять по принципу одинаковой даты)

Add(MainForm,14112285,308,196)
{
 Width=860
 Height=506
 MarginLeft=3
 MarginTop=3
 MarginRight=3
 MarginBottom=3
 Border=3
 BorderStyle=1
 Position=1
}
Add(ChildScrollBox,8844261,546,301)
{
}
BEGIN_SDK
  Add(EditMulti,4271376,21,21)
  {
   WorkCount=1
   Width=727
   Height=550
   link(doWork1,879511:doEvent1,[(53,27)(53,76)])
  }
  Add(ScrollBox,964248,511,112)
  {
   Left=264
   Width=605
   Height=467
   Align=5
   WinStyle=2
   Name="scrl_001"
   BorderStyle=1
   Point(Width)
  }
  Add(ChildPanelEx,2261261,560,217)
  {
   @Hint=#19:Динамические группы|
   Mode=1
   link(onVShift,8595977:doOperation,[(606,223)(606,139)(550,139)(550,160)])
   link(onResult,4141012:doMessage,[])
   link(pWidth,964248:Width,[(566,208)(531,208)])
   link(vOffset,15893030:Var2,[])
   AddHint(39,57,130,13,@Hint)
  }
  BEGIN_SDK
    Add(EditMultiEx,3885935,21,21)
    {
     WorkCount=#5:##add|8:##select|
     EventCount=#8:onVShift|8:onResult|0:|
     VarCount=#7:##count|0:|
     DataCount=#6:pWidth|7:vOffset|
     Width=496
     Height=403
     Point(##add)
     Point(##select)
     Point(##count)
     link(##add,4250363:doEvent1,[(39,27)(39,146)])
     link(##select,1177020:doSplit,[(32,34)(32,265)])
    }
    Add(Panel,15904931,441,49)
    {
     Width=369
     Height=86
     Font=[MS Sans Serif,12,0,0,1]
     Visible=1
     Point(doWidth)
     Point(Height)
     Point(doTop)
     Point(doHeight)
     Point(doVisible)
    }
    Add(Button,11087212,91,147)
    {
     Width=85
     Height=85
     Align=1
     Font=[MS Sans Serif,12,0,0,1]
     TabOrder=-1
     Caption=""
     Point(doCaption)
     link(onClick,16401184:doEvent1,[])
    }
    Add(MTStrTbl,11520425,210,294)
    {
     Left=87
     Top=2
     Width=280
     Height=82
     Align=5
     Font=[MS Sans Serif,12,0,0,1]
     WinStyle=3
     Name="mtbl_001"
     Columns=#9:name1=150|9:name2=100|9:name3=100|8:name4=50|8:name5=75|
     Style=4
     Grid=0
     Point(doHeight)
    }
    Add(Hub,4250363,49,140)
    {
     link(onEvent1,6740804:doOperation,[(80,146)(80,62)])
     link(onEvent2,11087212:doCaption,[])
    }
    Add(Math,6740804,175,56)
    {
     OpType=1
     Op2=18
     ResultType=0
     link(onResult,15904931:doWidth,[])
     link(Op1,3885935:pWidth,[(181,47)(27,47)])
    }
    Add(MT_Part,1177020,91,259)
    {
     link(onSplit,3091176:doCase,[])
    }
    Add(MT_String,11205836,224,245)
    {
     Delimeter="_"
     link(onResult,9614300:doRowAction,[])
    }
    Add(MST_RowAction,9614300,280,245)
    {
     MSTControl="mtbl_001"
    }
    Add(Case,3091176,147,259)
    {
     @Hint=#34:Выделение команды установки высоты|
     Value=String(-1)
     link(onNextCase,11205836:doMTString,[])
     link(onTrue,7577038:doOperation,[(200,272)(200,363)])
     AddHint(-119,119,179,26,@Hint)
    }
    Add(Math,7577038,224,357)
    {
     OpType=2
     Op2=24
     ResultType=0
     link(onResult,8700013:doEvent1,[])
     link(Op1,11520425:Count,[])
    }
    Add(Hub,8700013,280,357)
    {
     OutCount=4
     link(onEvent1,2608456:doData,[(305,363)(305,300)])
     link(onEvent2,15904931:doHeight,[(368,370)(368,76)])
     link(onEvent3,11458420:doOperation,[])
     link(onEvent4,13247899:doWork2,[(375,384)(375,111)])
    }
    Add(DoData,2608456,322,294)
    {
     link(onEventData,15904931:doTop,[(361,300)(361,69)])
     link(Data,3885935:vOffset,[(328,33)(34,33)])
    }
    Add(Math,11458420,441,371)
    {
     OpType=1
     Op2=1
     link(onResult,3885935:onVShift,[(480,377)(480,27)])
     link(Op1,15904931:Height,[])
    }
    Add(ChanelToIndex,13247899,392,98)
    {
     link(onIndex,15904931:doVisible,[(431,104)(431,83)])
    }
    Add(MST_ArrayRows,15673897,175,98)
    {
     MSTControl="mtbl_001"
    }
    Add(MT_MTArrayEnum,9756254,175,154)
    {
     link(onItem,10915627:doStr,[])
     link(Array,15673897:Strings,[])
    }
    Add(MT_String,10915627,224,154)
    {
     link(onResult,10031208:doAdd,[])
    }
    Add(StrList,10031208,280,154)
    {
    }
    Add(DoData,3602060,280,203)
    {
     link(onEventData,3885935:onResult,[(333,209)(333,34)])
     link(Data,10031208:Text,[])
    }
    Add(Hub,16401184,140,147)
    {
     OutCount=3
     link(onEvent1,10031208:doClear,[(165,153)(165,146)(263,146)(263,167)])
     link(onEvent2,9756254:doEnum,[])
     link(onEvent3,3602060:doData,[(165,167)(165,209)])
    }
  END_SDK
  Add(MT_String,11581838,189,126)
  {
   link(onResult,14798857:doValue,[])
  }
  Add(MT_MultiData,10069644,301,126)
  {
   From=2
   Count=1
   link(onData1,5953592:doCase,[])
  }
  Add(Case,5953592,357,126)
  {
   Value=String(-1)
   link(onTrue,11554508:doSeparateMT,[(396,139)(396,118)(235,118)(235,223)])
  }
  Add(MT_Memory,14798857,245,126)
  {
   link(onData,10069644:doSeparateMT,[])
  }
  Add(MT_MultiData,11554508,245,217)
  {
   Count=1
   Point(Data)
   link(onData1,2261261:##add,[])
   link(Data,14798857:Value,[])
  }
  Add(StrList,10000206,126,49)
  {
  }
  Add(Hub,879511,63,70)
  {
   OutCount=3
   link(onEvent1,10000206:doText,[])
   link(onEvent2,151755:doEnum,[(116,83)(116,146)])
   link(onEvent3,9978300:doEnum,[(109,90)(109,328)])
  }
  Add(ArrayEnum,151755,140,140)
  {
   link(onItem,11581838:doMTString,[])
   link(Array,5355832:Var2,[])
  }
  Add(ArrayEnum,9978300,126,322)
  {
   link(onItem,11602246:doMTString,[])
   link(onEndEnum,4154590:doEvent1,[(169,335)(169,475)])
   link(Array,5355832:Var1,[(132,117)])
  }
  Add(GetDataEx,5355832,140,112)
  {
   link(Data,10000206:Array,[])
  }
  Add(MT_String,11602246,189,308)
  {
   link(onResult,11144894:doValue,[])
  }
  Add(MT_Memory,11144894,245,308)
  {
   link(onData,2376732:doSeparateMT,[])
  }
  Add(MT_MultiData,2376732,301,308)
  {
   From=2
   Count=1
   link(onData1,2285829:doCase,[])
  }
  Add(Case,2285829,357,308)
  {
   Value=String(-1)
   link(onNextCase,5418568:doConvert,[])
  }
  Add(MT_MultiData,16457722,245,385)
  {
   Count=1
   Point(Data)
   link(onData1,4443410:doAdd,[])
   link(Data,11144894:Value,[])
  }
  Add(MT_Add,4443410,413,385)
  {
   InputMT=1
   link(onAdd,11319913:doWork2,[])
   link(Data,5418568:Var,[])
  }
  Add(ConvertorEx,5418568,413,308)
  {
   Mode=1
   link(onResult,16457722:doSeparateMT,[(452,314)(452,300)(235,300)(235,391)])
  }
  Add(For,5457338,413,476)
  {
   IncludeEnd=1
   link(onEvent,5228770:doAdd,[])
   link(End,2261261:##count,[(426,467)(566,467)])
  }
  Add(MT_Add,5228770,469,476)
  {
   @Hint=#35:Команда на установку высоты -- "-1"|
   Data=String(-1)
   link(onAdd,11319913:doWork3,[(515,482)])
   AddHint(13,45,183,26,@Hint)
  }
  Add(HubEx,11319913,511,385)
  {
   Angle=3
   link(onEvent,2261261:##select,[(515,230)])
  }
  Add(Math,8595977,567,154)
  {
   ResultType=0
   Point(doClear)
   link(Op2,15893030:Var1,[(580,145)(559,145)(559,194)])
  }
  Add(GetDataEx,15893030,567,189)
  {
   link(Data,8595977:Result,[])
  }
  Add(Hub,4154590,343,469)
  {
   OutCount=3
   link(onEvent1,8595977:doClear,[(396,475)(396,167)])
   link(onEvent2,5457338:doFor,[])
   link(onEvent3,3963701:doRedraw,[(375,489)(375,524)])
  }
  Add(RedrawManager,3963701,413,518)
  {
   ControlManager="scrl_001"
  }
  Add(Message,4141012,630,224)
  {
  }
  Add(InfoTip,14744595,126,91)
  {
   Info=#24:Парсинг заголовков групп|
   Width=330
   Height=165
   Margin=10
  }
  Add(InfoTip,14361363,119,266)
  {
   Info=#25:Парсинг содержимого групп|
   Width=344
   Height=158
   Margin=10
  }
  Add(InfoTip,8628584,308,434)
  {
   Info=#24:Установка размеров групп|
   Width=267
   Height=123
   Margin=10
  }
END_SDK
Add(StrList,12082072,567,224)
{
 Strings=#18:Администрация;0;-1|26:Петров_Москва_56_777;011;0|21:Иванов_Минск_49;012;0|17:Пользователи;1;-1|21:Сидоров_Киев_26;111;1|22:Смирнов_Киров_36;112;1|23:Малевич_Сидней_27;113;1|10:Гости;2;-1|26:Гзбыштнев_Варшава_34;211;2|25:Волайтос_Вильнус_53;212;2|22:Портос_Мадрид_62;213;2|21:Арамис_Париж_63;214;2|18:Администрация;3;-1|26:Петров_Москва_56_777;311;3|21:Иванов_Минск_49;312;3|17:Пользователи;4;-1|21:Сидоров_Киев_26;411;4|22:Смирнов_Киров_36;412;4|23:Малевич_Сидней_27;413;4|10:Гости;5;-1|26:Гзбыштнев_Варшава_34;511;5|25:Волайтос_Вильнус_53;512;5|22:Портос_Мадрид_62;513;5|21:Арамис_Париж_63;514;5|18:Администрация;6;-1|26:Петров_Москва_56_777;611;6|21:Иванов_Минск_49;612;6|17:Пользователи;7;-1|21:Сидоров_Киев_26;711;7|22:Смирнов_Киров_36;712;7|23:Малевич_Сидней_27;713;7|10:Гости;8;-1|26:Гзбыштнев_Варшава_34;811;8|25:Волайтос_Вильнус_53;812;8|22:Портос_Мадрид_62;813;8|21:Арамис_Париж_63;814;8|0:|
}
Add(DoData,16516091,483,301)
{
 link(onEventData,8844261:doWork1,[])
 link(Data,1516999:Text,[])
}
Add(Timer,6220539,427,301)
{
 Interval=200
 AutoStop=1
 link(onTimer,16516091:doData,[])
}
Add(StrList,1516999,483,224)
{
 Strings=#59:1.02.2025;Гвозди;135шт;Эдуард Суровый;Плохо закалачиваются;|40:1.02.2025;Бананы;555шт;Тамара Ивановна;;|67:1.02.2025;Бананы;705шт;Вера Сергеевна, Татьяна Сергеевна;Сосисочная|23:1.02.2025;Гвозди;135шт;|65:2.02.2025;Лак для волос;5шт;Джамшут Равшанович;Ничего не понятно;|88:2.02.2025;Топор;705шт;Вера Сергеевна, Татьяна Сергеевна; нет фантазии что то придумать);|43:3.02.2025;Гвозди;45шт;Пол Гилберт, Стив Вай|38:4.02.2025;Бананы;542шт;Тамара Ивановна|58:4.02.2025;Хлеб;123шт;Аркадий Укупник, Филипп Бедросыч;    |
}

карма: 0

0
Редактировалось 1 раз(а), последний 2025-03-13 03:12:05