Имя: Пароль:
1C
1С v8
Нужен отчет, визуализация....
,
0 iamnub
 
02.10.13
14:57
Есть период времени.
Есть набор объектов.
У объектов есть имя.
Объекты всегда вложены в друг-друга.

Объекты на протяжении времени могут менять свою вложенность.

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

Просто и наглядно.

Например.
Период - сегодня.
Объекты:
1. Портмоне.
2. Человек 1.
3. Человек 2.
4. Автобус
5. Вокзал.
6. Поезд.
7. Спб.
8. Москва.
9. Дом.
10. Гостиница.
11. Кафе.

Человек вышел из дома, встретился с другим в кафе, передал ему бумажник, поехал на автобусе на вокзал, сел в поезд, уехал в другой город и поселился в гостинице.

Нужно:
Оценить ситуацию с точки зрения кошелька.
Оценить ситуацию с точки зрения Человека 2.
Оценить ситуацию с точки зрения Человека 1.

Вопрос - кто-нибудь сталкивался ли чем нибудь похожим?
Может быть есть уже готовые разработки которые могут визуализировать нечто подобное?

Сам я вижу это как цветные секции, вложенные в друг-друга, но насколько я знаю - таких контролов у 1С нет...
1 Asmody
 
02.10.13
14:59
(0) дендрограмма не катит?
2 andreymongol82
 
02.10.13
14:59
Чем-то это похоже на графы
3 badboychik
 
02.10.13
15:24
рисуй графы на JavaScript-библеатеке типа сигмы
http://sigmajs.org/examples/parse_data.html
4 badboychik
 
02.10.13
15:29
или на D3 пиши, просто охренительная библиотека
http://mbostock.github.io/d3/talk/20111116/force-collapsible.html
5 badboychik
 
02.10.13
15:36
или вот шикарная библиотека http://philogb.github.io/jit/demos.html, можно даже интерактивно граф редактировать:
http://philogb.github.io/jit/static/v20/Jit/Examples/ForceDirected/example2.html
6 iamnub
 
02.10.13
15:41
(4)
Нарисуешь? За деньги.
7 badboychik
 
02.10.13
15:49
(6) ну не знаю... нарисуй пример схемы сначала. К тому же в условии сначала написано что "развитие во внемени", а потом "оцени ситуацию с точки зрения <объект N>" - это уже другое немного
8 sikuda
 
02.10.13
15:51
(0) А нужно только для web-клиента, а то canvas в тонком клиенте не катит.
9 iamnub
 
02.10.13
15:51
http://i57.fastpic.ru/big/2013/1002/e9/181a97d22acd5bcf26acf221a9fadbe9.png

Вот примитивный пример схемы.
10 badboychik
 
02.10.13
15:57
А зачем два раза рисовать сверху и снизу одно и то же?
А почему во второй схеме нет Человека2 ?
...
11 iamnub
 
02.10.13
16:01
1. Может и не надо.
2. Потому что вторая схема - это оценка с точки зрения Человека№1, а он никогда не был ни вложен во Человека №2, ни содержал его.
12 manyak
 
02.10.13
16:03
сразу вопрос: как определять какой обьект может быть вложенным а какой нет? и в какой может быть вложен а в какой нет?
кошелек в человека - да
человек в кошелек - нет

или пох?
13 badboychik
 
02.10.13
16:05
а где вообще тут какая то вложенность? есть цепочка событий и объектов, причем тут вложенность?
14 badboychik
 
02.10.13
16:06
(11) Человек1 два раза взаимодействовал с Человеком2 и это никак не отражается с его точки зрения??
15 iamnub
 
02.10.13
16:08
(12)
Всё равно.
На вход подается:
1. Начальное состояние объектов (их вложимость)
2. Объект, с точки зрения которого надо рассмотреть ситуацию.
3. Набор операций со всеми объектами.

Операция это:
Источник.
Приемник.
Объект.
Время.
16 badboychik
 
02.10.13
16:09
тут больше подходит понятие "объект-событие-субъект" а не "вложенность". Я так понимаю в корне (внизу) объект, а "вложенность" (выше) это события, в которых он принимал участие
17 iamnub
 
02.10.13
16:09
(16)
Важно именно смена вложенности.
18 iamnub
 
02.10.13
16:10
Причем всех объектов
19 iamnub
 
02.10.13
16:12
(18)+
Всех объектов, которые затронуты с точки зрения центрального объекта.
20 iamnub
 
02.10.13
16:14
В идеальной розовой стране - я бы щелкнул на кошельке из СХЕМА№2 и попал бы в СХЕМА№1.

И так по каждому объекту.
21 badboychik
 
02.10.13
16:16
(20) http://philogb.github.io/jit/static/v20/Jit/Examples/Spacetree/example2.html
ну вот тыкай и будет меняться текущий объект
22 iamnub
 
02.10.13
16:19
Если 1С не может сделать это штатными средствами, но мне нужен кто-то, кто сделает готовую визуализацию на основании описаных входных данных.
23 badboychik
 
02.10.13
16:20
(22) Конечно не может, мутная схема какая то...

Как задаются входящие данные? Это описание направленного графа или что?

Кошелек->Человек1
Человек1->Дом
Человек1->Улица
Человек1->Кафе
Кошелек->Человек2
Человек1->Автобус
Человек1->Вокзал
Человек1->Поезд
Человек1->Гостиница

Так?
24 iamnub
 
02.10.13
16:23
(23)
Да, только еще время должно быть указано.

Кошелек->Человек1
Это необязательно будет операцией - это может быть указано в начальном состоянии.
25 manyak
 
02.10.13
16:23
смысл ясен, как задаются входящие данные?, приведи несколько наборов вх данных на несколько временных срезов, допустим для 4 обьектов.
26 badboychik
 
02.10.13
16:24
а операции как задаются?
типа "Дом(Человек1,11.00), Улица(Человек1,12.15)" ?
27 iamnub
 
02.10.13
16:25
(26)
Я же описал в (15)
28 iamnub
 
02.10.13
16:26
По поводу мутной схемы.

Существует много объектов, которые меняют своих хозеяев и своих потомков.

Также существуют пользователи, которые хотят вводить новые операции. Но пользователь может ошибиться, и ввести не то время, не тот объект и прочее. Операция в таком случае не выполниться.

И надо быстро оценить - где находиться тот или иной объект, как он менял хозяев/потомков - и всё это в совокупности других объектов и течении некоего периода времени.
29 badboychik
 
02.10.13
16:26
(27) то есть выход из дома это структура "(Дом,Улица,Человек1,12.15)" ?
30 iamnub
 
02.10.13
16:27
(29)
Да.
31 iamnub
 
02.10.13
16:32
Входные данные можно представить так:
1. Объекты.
  ID
  Имя
2. Начальное состояние
   Объект1
     Объект2
       Объект3
     Объект4
     Объект5
   Объект6
3. Операции.
      ОбъектИсточник
      ОбъектПриемник
      Объект
      ВремяПерехода.
4. Объект, с точки зрения кого надо рассмотреть ситуацию.
32 badboychik
 
02.10.13
16:32
(30),(31) суть понятна. А реализация геморная. Надо рисовать специфическую диаграмму на JavaScript, в 1С диаграмма Ганта близка, но не подойдет скорей всего. Я бы заморочился, но лучше сразу прошаренного спеца по веб-графике найти. Выложи задание на фрилансим.ру, может набегут там спецы
33 badboychik
 
02.10.13
16:46
вообще давно надо скрещивать JavaScript и 1С, для графиков и визуального анализа полно шикарных средств. Вот давно хочу сделать такую штуку - "быстрая многокомпонентная фильтрация связанных данных": http://square.github.io/crossfilter/

Чтоб данные из 1С засасывались и можно было крутить отборы в любых разрезах
34 iamnub
 
02.10.13
16:50
Добавим драмы - теперь с точки зрения кафе!

http://i59.fastpic.ru/big/2013/1002/92/6e7681fc6d81cef0c10e4299e0e24592.png
35 badboychik
 
02.10.13
16:53
(34) Пишут что на D3.js и Raphael.js можно нарисовать любые мыслимые визуальные извраты, но их надо основательно поизучать, очень они низкоуровневые.
36 badboychik
 
02.10.13
16:54
(34) Главное - сколько ты готов за это отвалить, чтобы кто-то стал с этим копаться ))
37 iamnub
 
02.10.13
16:55
В прошлом скрине была ошибка. Вот правильное кафе.

http://i59.fastpic.ru/big/2013/1002/92/6e7681fc6d81cef0c10e4299e0e24592.png
38 iamnub
 
02.10.13
16:55
Кто то готов взяться?

Выслушаю предложения.
39 badboychik
 
02.10.13
16:58
(38) Техзадание уже готово? )) Или выше оно и было?
40 badboychik
 
02.10.13
17:03
(38) Есть еще вариант на РНР запилить картинками на pChart
http://www.pchart.net/features-extended
41 iamnub
 
02.10.13
17:08
(39)
Ну типа. Там дальше уже интеграция..
42 badboychik
 
02.10.13
17:13
А сроки?
43 iamnub
 
02.10.13
17:22
неделя?
44 badboychik
 
02.10.13
17:32
(43) Мало. Еще надо уточнять модель. Например на картинке с позиции кошелька видно что второй человек после передачи вышел на улицу и зашел в свой дом. А действия первого человека получается оборвались? Где там поезд и вокзал?
45 Котокот
 
02.10.13
17:35
(0) А тебе надо отобразить на одном экране весь процесс за все время или только срез на определенный момент? Если срез - то тут дерево подходит лучше всего.
46 iamnub
 
02.10.13
17:37
(44)
Поскольку это взгляд со стороны кошелька, то в момент смены владельца - первый человек перестает существовать. И нет ни поезда, ни вокзала.
47 iamnub
 
02.10.13
17:37
(45)
Ну, весь процесс, конечно.
48 badboychik
 
02.10.13
17:38
(46) уже дошло )
49 badboychik
 
02.10.13
17:42
А как будет описываться начальная ситуация в этом примере?
Вложенность тут только у кошелька изначально и у человека. Будет просто

Дом
   Человек1
      Кошелек

?
50 iamnub
 
02.10.13
17:46
(49)
да. Я вот всё думаю   - наверное не надо начальное состояние.

Начальное состояние будет генерировать первая операция.
51 manyak
 
02.10.13
20:09
кстати можно реализовать на базе таблички в отчете.
1)если хотим чтоб шкала времени по "ширине" соответствовала всем временным отрезкам, то определим "длину" периода (от первого до последнего события), зададим масштаб наример одна клетка - 1 час.
2)исходя из кол-ва обьектов просчитаем макс кол-во ячеек которое нам нужно будем по высоте
3) строим график по столбцам вправо
-каждый столбец "красим" из середины по вертикали в верх и в низ исходя из вложенности, у каждого обьекта свой цвет
- копируем раскрашенный столбец до начала след. промежутка - события
52 manyak
 
02.10.13
21:13
-каждый столбец начинаем "красить" из середины по вертикали в верх и в низ исходя из вложенности начиная с самого глубоковложенного обьетка, у каждого обьекта свой цвет
так понятнеее будет
53 Лефмихалыч
 
02.10.13
23:13
(0) ни чего более подходящего, чем mind map на ум не приходит. А это легко и просто делается - форматы nmap и xmind - это простая xml-ка, скрюченная зипом
54 iamnub
 
02.10.13
23:50
Гкхм... MindMap-то тут каким боком??

Тут динамику во времени надо отобразить в статической картинке.
55 Котокот
 
02.10.13
23:51
(53) Если бы надо было статику показывать, то можно было бы и деревом значений обойтись, без MindMap.
56 iamnub
 
02.10.13
23:54
(55)
Это точно
57 Asmody
 
03.10.13
00:21
Диаграммой Ганта! А изменения иерархии во времени отображать связями между отрезками
58 Torquader
 
03.10.13
00:41
(57) Для одного объекта - да.
То есть рисуется поле всех остальных объектов по вертикали, а по горизонтали - время.
Цветными отрезками мы показываем связь нашего объекта с остальными.
Всё красиво.
Но, возникает желание - посмотреть несколько объектов одновременно - и мы видим на экране просто кашу.
59 Asmody
 
03.10.13
00:43
(58) да в общем-то нет. В проджекте кажется есть вариант, когда ресурсы на диаграмму накладываются, нет там особой каши
60 Torquader
 
03.10.13
00:44
Я, правда, не очень понимаю, почему связь между объектами нужно называть иерархией.
У нас есть объектно-ориентированная база. Между объектами имеются связи разных классов, и это не обязательно одно подчинено другому - могут быть и более сложные варианты, когда связаны три и более объекта.
61 Asmody
 
03.10.13
00:44
А если еще разными цветами сделать, вообще красота получится
62 Torquader
 
03.10.13
00:45
(59) В частном случае, можно каждый объект нарисовать своим цветом.
Но, тогда интереснее рисовать объекты просто отрезками, если два отрезка рядом, то объекты будут связаны.
63 Torquader
 
03.10.13
00:48
Вообще, из объектного подхода автоматом получается аудиторский след, так как у нас не поля объекта меняются, а меняются связи - если вместо удаления связи ставить в неё дату завершения, то она остаётся в базе, но неактуальная.
64 iamnub
 
03.10.13
01:17
Вы о чем, парни?
65 iamnub
 
03.10.13
02:03
Я вам скоро покажу красоту. >:(
66 Samosval
 
03.10.13
08:16
(40) а для таблиц есть такое ? Что бы на php была, групировка и сортировка да еще и прокрутка с фиксацией шапки и на мобильных устройствах нормально отрабатывала ?
67 manyak
 
03.10.13
08:32
вот еще сортировщик без перезагрузки страницы:
http://tablesorter.com/docs/#Demo
68 Samosval
 
03.10.13
08:47
А фиксация шапки и прокрутка внутри есть ? Желательно что бы не только по вертикали , но и по горизонтали тоже
69 manyak
 
03.10.13
08:56
(68) Это ж обычн страничка, если тока ее в отдельный фрейм - но это изврат и не удобно, есть тока постранична разбивка:
http://www.tablesorter.ru/docs/example-pager.html
70 manyak
 
03.10.13
09:01
(66) этож на jquery, ну а на php сам понимаешь полно такого, вот например:
http://www.phpgrid.org/demo-center/
все хотелки твои имхо есть и поболе будет :)
71 iamnub
 
06.10.13
15:31
Закончил формирование модели. Код просто мега-жесть.
72 manyak
 
06.10.13
16:26
(71) покажи лучше картинку- красоту :)
73 iamnub
 
06.10.13
17:34
Терпение.. Человек #1 ( сссссссобака) куда то делся из поезда, когда тот въехал в тоннель.
74 iamnub
 
07.10.13
00:48
(72)
Между прочим, "красота" на том же WPF - дело 10 минут и по сути - дело наживное, особой замороки не требующее. А вот подготовить данные для этой красоты...
75 Sabbath
 
17.10.13
15:04
(0) Японское трехстишие

Есть период времени.
Есть набор объектов.
У объектов есть имя
Основная теорема систематики: Новые системы плодят новые проблемы.