1. Главная страница » Компьютеры » 1С графическая схема программно

1С графическая схема программно

Автор: | 16.12.2019

Содержание

Почему то фирма "1С" пошла особым путем и лишила нас, программистов, возможности полноценно работать с таким объектом, как графическая схема. Точнее, работать-то с ней можно, но как то однобоко.
Мне понадобилась как-то возможность программного добавления элементов графических схем, но, поблуждав по Инфостарту, ничего нормально работающего не нашел.

Но есть достойные работы, например, публикация Редактор графической схемы.
Но для 8.3 там есть ошибка, когда для добавляемых элементов схемы пропадали связи со стрелками. Да и вообще подход у всех подобных публикаций одинаковый, запись в файл и анализ того, что в файле. Причем анализ достаточно сложный:

Понятно, что при таком подходе, если завтра 1С изменит формат файла, то ничего работать не будет. Так как быть, если очень надо? Анализировать внутреннее представление графической схемы дело достаточно кропотливое.
Предлагаю другой подход к программной работе с графической схемой:

  1. Как вариант выхода из проблемы — сериализация графической схемы в XML с последующим изменением тегов. Так вероятность того, что после обновления формата это перестанет работать, гораздо ниже.
  2. Для каждого из добавляемых элементов заведем отдельную графическую схему-эталон (макет графической схемы), в которой будет добавляемый элемент со стрелочками и прочим (см. третий скриншот). Эту схему тоже сериализуем, используя DOM в XML, выбираем все добавляемые элементы из схемы эталона.
  3. Изменим в сериализованной схеме-эталоне внутренние идентификаторы добавляемых элементов на уникальные и изменим имя элемента.
  4. Вставим схему эталон в схему источник, в блоке указываются все элементы. Тут простая работа со строками. Один XML файл вставляем в другой в определенное место.
  5. Десериализуем полученную схему результат.
  6. Профит! 🙂

Аналогично можно управлять положением, шириной и высотой элементов. Надо просто проанализировать XML-файл и изменить его. Ниже обработка, которая позволяет добавлять элементы к графической схеме с данным подходом.

Данная обработка является редактором графической схемы и в отличии от типового редактора файлов 1С и встроенного в платформу механизма редактирования графической схемы, все действия с объектами схемы осуществяются программно.

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

Обработка позволяет сохранять графическую схему в файл.

Описание

К сожалению в 1С не реализована полноценная работа с графической схемой, но можно найти выход. Конечно можно редактировать графическую схему средствами 1С или программу для работы с файлами от 1С: Работа с файлами

Графическая схема является файлом, который выглядит примерно так:

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

Опишу некоторые элементы:

Тип элемента показывает какой тип элемента сейчас будет описан. С этого параметра начинается описание элемента в файле графической схемы.
Тип элемента это число от 0 до 10, которое показывает элемент какого типа будет размещен на схеме.

Читайте также:  Forkplayer для samsung smart tv 7 серии

0 — Декорация
1 — Линия
2 — Старт
3 — Завершение
4 — Условие
5 — Действие
6 — Выбор варианта
7 — Точка разделения
8 — Точка слияния
9 — Обработка
10 — Вложенный бизнес процесс

Заголовок это надпись на элементе

Имя — Уникальное имя на схеме

Координаты области это две точки прямоугольника, внутри которого находится сам элемент.

Число точек показывает из скольки точек состоит элемент графической схемы.

Координаты точек это координаты точек объекта, перечисленные по часовой.

Почти все элементы имеют схожую структуру и различаются в основном по типу элемента, геометрической форме.

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

Особенности структуры линии:

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

0 — Соединительная линия

1 — Декоративная линия

Линия может иметь произвольное число точек и их количество указывается в файле перед перечислением координат точек линии. Грань выхода показывает грань из которой выходит линия, грань входа показывает грань в которую линия входит. Грани почти всех элементов пронумерованы от 1 до 4, кроме элемента "Выбор варианта".

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

Также в структуре элемента "Выбор варианта" описываются варианты:

Таким образом поставляя эти параметры в текст файла графической схемы можно осуществлять работу с графической схемой.

Конфигурация отличается от обработки тем, что в конфигурации есть картинки как в типовой панели.

Скачать файлы

Специальные предложения

Для управляемого режима в общем-то никаких отличий особенных нет.

Сериализация выдает строку эемента xml, десериализация соответственно из xml готовит графическую схему.

Так же можно посмотреть на методы сериализатора xdto:

эти методы позволят "работать" со схемой как с объектом

Файл скачал, поставил плюсик. Когда разобрался, голос отменил 🙁

Не работает в 8.3, хотя идея ясна, но не реализована до конца. Много недоработок, в общем сыро.
Автору пожелание добить код до конца. А так не совсем хорошо, не понятный способ перевода структуры в текст, а именно: не все верно, а значит не понято автором (без обид).
Не поленись, проработай хоть формирование линий, там вообще все плохо, как бы и так прокатит. Задумка имеет право на жизнь, дай ей правильное начало 🙂

См. также

Загрузка из ППР (Передовые платежные решения) — Сведения о заправках на АЗС за сутки из сервиса ППР 0

Обработка «Загрузка заправок на АЗС из ППР» реализует механизм подключения через API к сервису агрегатора топливных карт Передовые Платежные Решения. Позволяет получить данные по всем заправкам автотранспорта за указанные сутки.

вчера в 08:00 64 aaa_pol 0

Канбан-доска для 1С:Предприятие 8.3 66

Scrum/agile board для 1С. Приложение для работы по методологиям scrum и agile — доска канбан (kanban board, scrum board).

06.11.2019 11805 52 pfihr 37

Служебные записки 5

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

10.07.2019 1741 7 thueirby 4

Центр компетенций 1С #1: Технологический блог 4

Привет! Меня зовут Андрей, я — директор по развитию 1С в международной переводческой компании. Представляете, наша ERP на платформе 1С работает в наших офисах по всему миру: Австрия, Великобритания, Германия, Чехия, Украина, Аргентина, США, Китай, Казахстан и конечно Россия. Директором по развитию я стал недавно и в связи с повышением по работе стал задаваться вопросами создания в компании центра компетенций 1С, где бы аккумулировались накопленные знания, кейсы, прецеденты и лучшие практики. Второй интересующий меня момент — развитие в группе разработки 1С принципа меритократии идей. Что означает поощрение и развитие компетентности и инициативы сотрудников для делегирования им большей ответственности. В перспективе это имеет большее качество, нежели авторитарное принятие решения руководителем. В мини-блоге на Инфостарте я буду делиться своими исследованиями по данной теме и буду рад их обсуждению.

01.07.2019 2537 chuprina_as 0

Комплексное закрытие задач в Документообороте 7

Обработка закрывает выбранные задачи пользователя.

30.04.2019 2149 7 SebastyanPereiro 0

Автоматическая генерация технологических карт на основе графической схемы 2

В статье описывается способ генерация технологических карт на основе заданного графической схемой техпроцесса. Рассматриваются вопросы программного взаимодействия с объектом "графическая схема" и приведен механизм обхода графической схемы для получения карты техпроцесса. Тестировалось на платформе 8.3.12.

27.03.2019 2064 all_net 0

Программное управление бизнес-процессом "Заявка на Страхование" в 1С: Документооборот из внешней системы на практическом примере 5

В статье демонстрируется возможный пример реализации бизнес-процесса в ДО на примере практической задачи. Материал может быть полезен тем, кому быстро надо разобраться в архитектуре комплексных БП Документооборот.

31.01.2019 3159 5 alexander-lubich 2

Подсистема Бизнес-процессы. Создание бизнес-процессов в пользовательском режиме (управляемые формы) 19

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

02.01.2019 4137 27 lesv 14

Управление задачами в 1С — готовая подсистема с открытым кодом и широким базовым функционалом. Версия 1.0.6 93

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

17.12.2018 10725 73 for_sale 36

Применение цифровой подписи при организации учёта ТМЦ и ГСМ 10

Статья о том, как внедрение мобильного приложения в бизнес-процессы компании сократило оборот бумажных документов, а простая электронная подпись — заменила аналоговую.

25.10.2018 4462 2 ikekoval 2

Шаблон бизнес-модели Остервальдера и Пинье 3

Конфигурация с документом "Шаблон" и печатной формой шаблона бизнес-модели Остервальдера и Пинье.

23.09.2018 4053 3 SergeySm 0

"Простые регламенты" — помощник создания правильных регламентов ваших бизнес-процессов !БЕСПЛАТНО! 31

В статье — презентация нового БЕСПЛАТНОГО продукта для регламентации ваших бизнес-процессов. С нашей методикой ваши регламенты будут работать!

06.09.2018 9687 23 siddy 0

Система по управлению задачами в 1С: УТ 11 8

В 1С: УТ 11 есть очень удобный механизм — задания. Можно создавать задание любому пользователю на основании справочника или документа. Например: "Исправить отчет о розничных продажах". Но можно прикреплять только один объект к задаче. А если необходимо обработать целый список документов? Данное расширение конфигурации позволяет прикреплять к задаче сразу несколько объектов. Благодаря этому механизму можно даже организовать передачу вопросов и обращений от пользователей к ИТ-службе.

12.05.2018 9273 19 Kutuzov 1

Получение актуального маршрута согласования комплексного процесса 1С Документооборот 9

Получение актуального маршрута согласования документа в 1С Документооборот.

11.03.2018 10625 30 iolko 10

Программная работа с графическими схемами. Готовое решение 40

Работоспособное, проверенное на практике, простое и удобное программное управление графическими схемами.

18.02.2018 11898 16 Yashazz 13

Бизнес-процессы: Согласование скидки с клиентом 6

Пример бизнес-процесса согласования скидок клиентов. В статье шаблон типового процесса, схему которого можно скачать и адаптировать под свои нужны. Во вложение добавлена "рыба" регламента.

04.12.2017 10339 7 siddy 0

Бизнес-процессы: Процесс заключения договора с клиентом 10

Статья о том, как построить процесс работы с договорами клиентов. Написана по мотивам наших автоматизаций — постарались обобщить знания в шаблонный процесс, который легко подправить под свои нужды. К публикации прикреплен пример регламента такого процесса.

30.11.2017 15222 13 siddy 0

Условия для дополнительных реквизитов в задачах бизнес-процессов (шаблоны) + доработка интерфейса многостраничные реквизиты — расширение 1

Существует проблема, когда добавляешь дополнительные реквизиты в шаблоны бизнес-процессов, нет отбора по шаблону. То есть когда мы на определённый шаблон, скажем — заявка на ремонт, хотим добавить реквизит — помещение, то это реквизит начинает отображаться во всех процессах. Что очень неудобно. Зачем реквизит помещение в процессе, скажем, создания договора? Расширение позволяет делать условие на шаблон и на папку шаблонов (без иерархии. ) Плюс увеличивает размер многострочных реквизитов — в высоту *2 и в ширину 600.

14.11.2017 8214 5 Vladimir45 14

Автозадачи 164

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

01.08.2017 24901 178 1c-intelligence 39

Согласование (подсистема). Для любого справочника и документа в 1С. Встраивается в любые конфигурации 132

Подсистема для согласования в 1С. Для настройки нового согласования не требуется программировать, все делается в режиме исполнения. Открытый код. Бизнес-процессы. Документооборот. Проект выложен на GitHub.

25.08.2016 38343 224 BlizD 181

Работа с задачами исполнителя 4

Выполнение или отмена выполнения любой задачи бизнес-процесса

05.05.2016 12597 8 di0xa 2

Торговля глазами ветврача. Оформление ветеринарно-сопроводительных документов в системе Меркурий (Часть 3) 10

Для торговой компании объясняется, как выполнять типовые операции в системе Меркурий. Зачем нужен Меркурий? C его помощью можно оформлять ветсвидетельства бесплатно. Уточните у руководства, сколько денег платите ветеринарам. Например, сеть Перекресток платит 400 млн. руб. в год.

22.01.2016 48774 10 axxell 5

Производство глазами ветврача. Оформление ветеринарно-сопроводительных документов в системе Меркурий (Часть 2) 22

Для предприятия по производству пищевых продуктов объясняется, как выполнять типовые операции в системе Меркурий. Зачем нужен Меркурий? C его помощью можно оформлять ветсвидетельства бесплатно. Уточните у руководства, сколько денег платите ветеринарам. Например, сеть Перекресток платит 400 млн. руб. в год.

19.01.2016 72239 10 axxell 9

Бизнес-Процесс Для УПП УправлениеЗакупками 9

Описание бизнес процесса в приложении в visio для блока управление закупками на 4х страницах с выходом в документы системы УПП ред 1.3. с проводками по документам

24.05.2014 15521 39 BagiraN 1

Сохранение графической схемы как картинки 2

Простенькая обработка для сохранения схемы как картинки BMP.

12.12.2013 13458 30 andrey3d 5

Обработчик автоматической регистрации документа 1С:Документооборот после утверждения и автозаполнения файла по шаблону 27

Дополнительный обрабочик для 1С:Документооборот, позволяющий выполнять автоматическую регистрацию внутреннего документа после его утверждения и автоматическое заполнение прикрепленного шаблонного файла.

29.05.2013 32711 17 Killgur 13

Бизнес-процесс Автосервис 17

Сделан на основе реальныго клиента.

14.02.2013 24498 97 sergbsv 14

Редактор регистра адресации 4

Обработка предназначена для редактирования регистра адресации задач бизнес-процессов.

30.07.2012 11340 21 redcat 1

Настройка интеграции «1С:Управление торговлей 8 Редакция 11» и «1С:Документооборот». Бизнес-процессы, внешние роли исполнителей. 28

Моя первая статья про настройку интеграции 1С:Управление торговлей 8 Редакция 11 и 1С:Документооборот оказалась достаточно востребованной. Благодарю за отзывы. В продолжение темы хочу представить вашему вниманию продолжение — настройку бизнес-процессов и внешних ролей исполнителей.

11.07.2012 40194 29 ReSY 11

УПП: история одного внедрения 365

Когда генеральный директор одного предприятия решил внедрить новую учетную систему вместо привычной 1С:Бухгалтерии, он ориентировался на привлекательное название: Управление производственным предприятием (УПП). Франчайзи, которые ему эту систему рекомендовали, затем продали, установили и «внедрили», ограничились привычным джентльменским набором: банк, касса, зарплата, закупки и продажи. Блок производства был представлен внедрением Отчетов производства за смену (итого выпуска продукции за месяц) и Требование-накладная (итог списанного сырья за месяц). Управившись с таким внедрением франчайзи были готовы ежемесячно сами помогать финансовому директору рассчитывать себестоимость. Это «действо» для остальных непосвященных было тайной. Но финдиректор, рассчитав годовой баланс, переутомился и ушел в запой. Встал вопрос о новом финдире. Новый финансовый директор, которого выбрал гендиректор, была женщина. Задача, которую поставил ей гендиректор, была «проста»: ликвидировать воровство на предприятии. Что и говорить: неучтенной продукцией, в частности пластиковыми пакетами, торговали на всех рынках в радиусе 100 км. Не помогали ни высокие заборы, ни видеонаблюдение, ни замена ЧОПов. Естественно, акционер был недоволен и сердился на гендиректора: ведь не помогло и внедрение УПП, проект достаточно затратный. Финдир себе в помощь позвала знакомых фрилансеров (меня и моего мужа). С этого момента внедрение УПП стало переживать новый этап.

09.06.2012 40682 132 PAVI 150

В 1с есть объект графическая схема. Но как знаете схема это только создается вручную и только. Программного создания нет. В предыдущих публикациях есть пример как ее собирать.

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

В 1с есть объект графическая схема. Но как знаете схема это только создается вручную и только. Программного создания нет.

  1. Код поставляется открытым.
  2. Модуль не использует внешних компонент и стабильно работает в наших продуктах уже несколько лет.
  3. Все элементы схем разобраны. Разобраны практически все свойства, по запросу разберу дополнительные если понадобятся.
  4. Добавлен объект Схема, с помощью которого очень легко формировать схемы наподобие бизнес процесса (не обязательно можно рисовать любые зависимости, например подчиненные документы). С помощью этого объекта очень легко построить любую свою схему уже не думая над тем как именно должна идти линия, откуда выходит и в каких точках изгибается.
  5. Добавлена возможность присоединять картинки к элементам схемы.
  6. Добавлена возможность получения ссылки заданной при создании схемы по идентификатору элемента (нужно для выполнения пользовательских действий при работе со схемой).

Смотрите работу модуля на нашем демонстрационном сервере: http://demo.tunesoft.ru:81/schema/ru_RU/.

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

Наименование Файл Версия Размер

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *