Граф проводок

13.01.24

Разработка - Инструментарий разработчика

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

Скачать исходный код

Наименование Файл Версия Размер
Граф проводок v3:
.epf 239,58Kb
16
.epf 239,58Kb 16 Скачать

У меня появилась гипотеза, что для понимания бухгалтерских операций можно использовать граф, где вершины представляют счета, а ребра представляют документы, делающие проводки "Дебет" -> "Кредит". Для проверки этой гипотезы я создал обработку, которую можно запустить в любой конфигурации 1с 8.3, содержащей регистры бухгалтерского учета.

Инструкция по использованию.

На странице "Данные" выбираем регистр для анализа, указываем период и нажимаем кнопку "Сформировать данные". При необходимости можно сохранить данные в файл или загрузить их из файла.

Затем переходим на вкладку "Настройки" и выбираем счета или документы для анализа. Также можно выбрать стратегию построения графа.

Наконец, переходим на вкладку "HTML" и наслаждаемся сформированным графом. Если был осуществлен выбор по счету, то выбранные счета будут подсвечены цветом фуксии.

В обработке используется библиотека cytoscape js

Надеюсь, обработка окажется полезной. Приветствуются пожелания и обратная связь.

Проверял на релизе платформы 1С:Предприятие 8.3 (8.3.22.2143) (по идее должна работать и на более древних версиях).

Проверено на следующих конфигурациях и релизах:

  • Бухгалтерия предприятия, редакция 3.0, релизы 3.1.22.86

cytoscape js графы счетов поле html

См. также

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    127475    688    389    

740

Infostart PrintWizard - создание и редактирование печатных форм в 1С 8.3

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 руб.

06.10.2023    8487    25    6    

47

Infostart УДиФ: Управление данными и формами 1С

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    4794    12    2    

38

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 руб.

14.01.2013    179016    1086    0    

863

Бустер Конвертации данных 3 (Infostart Toolkit)

Инструментарий разработчика 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

15000 руб.

07.10.2021    15139    3    12    

38

Богатый редактор картинок, хранимых в базе, с возможностью РИСОВАНИЯ. Редактор внешних файлов картинок. Объект, расширяющий возможности работы с картинками из встроенного языка (Три в одном) + Обработка «Стандартизация картинок»

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Обработка предназначена для редактирования картинок в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Также обработка может быть использована из встроенного языка как объект для редактирования картинок. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Данная обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    62128    43    59    

81

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    100022    239    97    

298

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

Работа с интерфейсом Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    54719    16    21    

42
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. acvatoris 532 06.01.24 07:36 Сейчас в теме
Очень интересная у вас гипотеза !
Подскажите, пожалуйста, каким образом вы выводите граф в Html? Граф рисуется в канвасе ?
2. van_za 246 06.01.24 08:27 Сейчас в теме
(1)
Да, вы правы, граф можно выводить в HTML с использованием канваса (canvas). Канвас позволяет программно рисовать графику на веб-странице с помощью JavaScript.В данном случае работу по рисованию берет на себя библиотека cytoscape js. Другой способ - использовать библиотеки для визуализации данных, такие как D3.js или Chart.js,
acvatoris; +1 Ответить
11. acvatoris 532 06.01.24 17:49 Сейчас в теме
Расскажите, пожалуйста, про быстродействие. Не подвисает ли html страничка при отображении графа проводок?
16. van_za 246 06.01.24 20:36 Сейчас в теме
(11)
Зависаний не заметил
acvatoris; +1 Ответить
12. acvatoris 532 06.01.24 17:54 Сейчас в теме
Означает, ли это что при помощи данной библиотеки можно отражать граф в 3d ?
17. van_za 246 06.01.24 20:41 Сейчас в теме
(12)
Да, но тогда нужно будет купить бухгалтерам vr очки :)
portwein; acvatoris; +2 Ответить
3. sereginseregin 22 06.01.24 09:08 Сейчас в теме
Дополнительно предложу:
- Активы - треугольник вверх;
- Пассивы - треугольник вниз;
- АП - остаются окружностями;

- Стрелки красным - для отрицательных сумм - если начать стоимость и количество указывать
DimaP; ixijixi; JohnyDeath; acvatoris; JohnConnor; van_za; +6 Ответить
4. van_za 246 06.01.24 09:17 Сейчас в теме
(3) спасибо за идеи
acvatoris; +1 Ответить
5. strannik73 8 06.01.24 11:18 Сейчас в теме
Если рядом со счетом указать сальдо начальное и конечное, а рядом с вектором - величину проводки, то получится нечто похожее на локальную фондовую сеть.
acvatoris; +1 Ответить
7. sereginseregin 22 06.01.24 11:54 Сейчас в теме
(5) толщину вектора рисовать пропорционально стоимости
10. strannik73 8 06.01.24 16:18 Сейчас в теме
(7)Пачка бумаги толщиной с волосок, станок - толщиной с бревно.
6. Константин С. 668 06.01.24 11:51 Сейчас в теме
Самолетики наше все!!!
Куда привычней)))
8. sereginseregin 22 06.01.24 11:56 Сейчас в теме
(6)Самолётики - это для бухгалтера, чтобы регистрировать операции. Анализировать ИМХО на графах проще
acvatoris; +1 Ответить
9. Константин С. 668 06.01.24 14:23 Сейчас в теме
(8) все дело в привычке и вкусе, каждому свое).
Лично мне привычней как в анекдоте когда заглядывали в ящик. С лево Дт с право Кт и все это столбиком, а вцелом таблица.

но JS, прикольная.
21. TMV 14 07.01.24 14:39 Сейчас в теме
13. van_za 246 06.01.24 18:16 Сейчас в теме
(3)
1. Сделал различные фигурки для разных типов счетов, треугольника в низ нет, выбрал другую фигуру
https://js.cytoscape.org/demos/node-types/ - ссылка на пример там все типы

2. Убрал надписи вида счета.

https://js.cytoscape.org/demos/node-types/

3. Добавил опциональную возможность вывода суммы проводок по документу.

4. Стрелки красным - для отрицательных сумм - у меня пока нет отрицательных сумм (если сумма отрицательная меняю местами Дт Кт)
Прикрепленные файлы:
acvatoris; +1 Ответить
14. van_za 246 06.01.24 20:11 Сейчас в теме
4. Добавил опцию вывода остатков по счету (начальный конечный)
5. Добавил опцию вывода наименования счета
6. Добавил кнопку обновить
acvatoris; +1 Ответить
15. van_za 246 06.01.24 20:21 Сейчас в теме
Так примерно выглядит
Прикрепленные файлы:
DimaP; JohnyDeath; acvatoris; +3 Ответить
18. acvatoris 532 06.01.24 22:02 Сейчас в теме
Можно сделать настройку в которой каждый пользователь сможет указывать какой тип фигуры будет активным или пассивным счётом, менять ли местами дебет с кредитом при отрицательной сумме или нет, можно ещё придумать какие- нибудь интересные настройки. Может быть ещё будет полезна настройка выбор периода, за который нужно сформировать граф
19. van_za 246 06.01.24 22:28 Сейчас в теме
(18)
спасибо за идеи!!!

1. Можно сделать настройку в которой каждый пользователь сможет указывать какой тип фигуры будет активным или пассивным счётом - планирую реализовать в дальнейшем..

2. менять ли местами дебет с кредитом при отрицательной сумме - это уже реализовано

3. Может быть ещё будет полезна настройка выбор периода, за который нужно сформировать граф - уже есть возможность выбрать данные за период
acvatoris; +1 Ответить
20. sereginseregin 22 07.01.24 10:20 Сейчас в теме
(19)
3) Чтобы граф стал инструментом, обеспечить подьзователя:
- Выбором периода;
- Выбором счетов;
- Выбором аналитики по субконто;

При этом, выбранные счета или субконто - определяют центральные счета, к ним на графе отображать все корреспондирующие (не указанные пользователем, для полноты картины движения стоимости). Получается графическое представление Оборотно-сальдовой ведомости. Как стоимость пришла и куда перераспределилась.
25. van_za 246 08.01.24 06:11 Сейчас в теме
(20)
Спасибо за идеи, думаю как лучше сделать, особенно мне видится полезным возможность отобрать по виду субконто, мне было бы интересно посмотреть например как ходит по счетам конкретный контрагент или договор.
22. john2004 07.01.24 15:34 Сейчас в теме
После всех доводок предлагаю переназвать в "Герцог баланса" :)
shard; ixijixi; acvatoris; +3 Ответить
23. van_za 246 07.01.24 20:14 Сейчас в теме
24. zhichkin 1456 08.01.24 00:22 Сейчас в теме
Хотелось бы обратить внимание на следующий труд в этой области: Графы затрат, Александр Поляков 2010 и 2014 годы публикации.
26. van_za 246 08.01.24 06:19 Сейчас в теме
(24)
Я рассматриваю только фронтовую задачу про то как визуализировать, а там теория про то как сделать (разобраться как сделан) расчет себестоимости.
27. van_za 246 08.01.24 06:39 Сейчас в теме
Благодаря предложениям, а также собственному видению сформулировал примерный план для реализации 3ей версии.

Данные
- Добавить возможность отбирать данные проводок
(как минимум хотелось бы добавить отбор по значениям субконто), в идеале хотелось бы сделать какой то универсальный отбор (@sereginseregin)

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

Настройки вывода
- Вытащить в интерфейс доступные параметры построения графа из cytoscape js.
- Добавить варианты выбора фигур для видов счетов (@acvatoris)
- Добавить возможность сохранения настроек вывода в файл json
acvatoris; +1 Ответить
28. rzh 08.01.24 17:10 Сейчас в теме
Годная вещь! На githab не публикуете?
29. pma_2015 130 08.01.24 18:12 Сейчас в теме
Спасибо за публикацию.
1. Есть хотя бы один живой бухгалтер заказчик на такой анализ?
2. В сторону PlantUML не смотрели?
Мы на PlantUML тоже сделали проводки.
Прикрепленные файлы:
Анализ проводок.svg
30. van_za 246 08.01.24 22:00 Сейчас в теме
(29)
Я написал что это моя гипотеза, пока предварительно показывал аналитикам, вроде как понравилось, но может так сказать что бы не демотивировать коллегу :)
Пока в большей степени ориентируюсь на свои ощущение, мне было бы проще так понять связи.
acvatoris; +1 Ответить
32. Viktor_Ermakov 364 09.01.24 08:20 Сейчас в теме
(30) с гипотезой согласен полностью, визуализация любой задачи схожим образом, сильно облегчает понимание что в разработке архитектуры, программировании, так и в прикладных задачах. Автор молодец. Пора выложить исходники на github и принимать туда пожелания, выпускать версии обработки.
31. Viktor_Ermakov 364 09.01.24 08:16 Сейчас в теме
(29)
PlantUML

А у Вас поделка выложена на github или может еще где?
33. pma_2015 130 09.01.24 09:04 Сейчас в теме
(31) https://infostart.ru/1c/tools/1527549/ это расширение для ERP. Технический алгоритм здесь: https://infostart.ru/1c/tools/1513591/
Viktor_Ermakov; +1 Ответить
34. van_za 246 09.01.24 10:42 Сейчас в теме
(31)
Привет!
Пока нет, доделаю запланированные изменения и выложу код на github
Viktor_Ermakov; +1 Ответить
35. van_za 246 10.01.24 19:55 Сейчас в теме
Добавил отборы (измерения регистра + субконто)
Добавил возможность выбора ресурсов.
acvatoris; +1 Ответить
36. user707242_Gold_karas 13 11.01.24 12:04 Сейчас в теме
При прокручивании колесика мыши - масштаб графа очень быстро меняется, можно как то более сгладить? А так красота.
37. van_za 246 11.01.24 12:19 Сейчас в теме
(36)
возможно, посмотрю документацию к библиотеке
38. van_za 246 13.01.24 06:48 Сейчас в теме
(36)
в следующей версии опции отображения будут выведены в форму и будет уменьшено значение по умолчанию
wheelSensitivity - сейчас 1 будет 0.1
39. van_za 246 13.01.24 16:53 Сейчас в теме
Всем привет!
Спасибо всем за скачивания и оценки.
Также спасибо за обратную связь.
@acvatoris
@user707242_Gold_karas
@sereginseregin
@john2004
Последние изменения.
- Интерфейсные изменения в странице данные (json c права на всю страницу)
- Добавил параметры библиотеки в форму
- Улучшил значения настроек по умолчанию (например шаг зума при прокрутке колесика)
- Добавил выбор фигур по виду счета
- Настройки перенес в страницу html (меняете настройки и сразу видите изменения)
40. Polav62 327 22.01.24 13:20 Сейчас в теме
(39)
По поводу возможного функционала подсистемы визуализации можно посмотреть здесь:
- Строим граф затрат в слое бухгалтерского учета
- Строим граф затрат в слое управленческого учета
41. van_za 246 05.02.24 08:53 Сейчас в теме
(40)
У меня решение по графическому анализу проводок без привязки к конкретному прикладу (себестоимость и прочее).
Кейс условно следующий, аналитику нужно изменить движения, при помощи данной обработки аналитик может посмотреть "как есть", использовать картинки для формирования документации и прочее. Также это может быть полезно для расследования по конкретным кейсам (например какими документами и проводками сформировались остатки по основному средству "тумбочка" или контрагенту "ИП иванов")
42. Polav62 327 05.02.24 22:30 Сейчас в теме
(41)
Это понятно. Да и подсистеме визуализации для отрисовки графа не особо важно из какого хранилища брать данные (затраты, расчеты и т.п.). В конечном счете главное, чтобы там можно было выделить узлы и дуги (или ребра), а затем их оптимально расположить на плоскости (планарный граф или максимально приближенный к планарному).
Я так понял, что Вы интересуетесь полезным функционалом такой подсистемы, в частности, можно посоветовать:
- ввести классы узлов - это позволит, например, присваивать классу вид геометрической фигуры, цвет фона и т.п.
- дать пользователю возможность интерактивно выделять различные подграфы - множества соседних узлов, кластеров, процессов - чтобы можно было "путешествовать" по графу. Например:
Выделяем кластеры
Выделяем процессы
43. van_za 246 05.02.24 22:41 Сейчас в теме
(42)
Это интересно и пересекается с моими мыслями и некоторыми обсуждения и с коллегами.
Оставьте свое сообщение