Примерная схема проведения документов (Механизм проведения) в ERP 2.5.x.x

Публикация № 1185321

Разработка - Практика программирования

Механизм проведения Типовое проведение ОбработкаПроведения

Некий шаблон "общей" картины связи процедур выполняемых типовым механизмом проведения в ERP 2.5.

Примерная схема проведения документов (Механизм Проведения) в ERP 2.5.x.x. 

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

Предлагаю использовать как отправную точку, и некий шаблон для понимания "общей" картины действия по проведению документа в типовом решении. ( Что, где, как надо изменить чтобы встроить свой документ / регистр и т.д. в решение)

Все видно на схеме. (см. скриншот, или во вложении схема построенная с помощью https://www.draw.io/, + pdf, html, svg) 

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

Принятые имена и сокращения:

  • МодульУчетногоМеханизма - ОМ, либо ММ любого объекта который выбрали хранилищем "логики" собственного учетного механизма
  • МО - Модуль объекта (документа, ведь проводятся только они)
  • ММ - Модуль Менеджера объекта (документа)
  • ОМ - ОбщийМодуль
  • МНЗ - Модуль набора записей (регистра)

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

P.S. Заметки:

  • ПередЗаписью() / ПриЗаписи() - в МодулеОбъекта документа, может быть какой-то код для заполнения структуры "ДополнительныеСвойства" 
  • Запись в "Независимые регистры"  обрабатывается в событии ПриЗаписи() МодуляОбъекта (Документа)
  • ПроведениеДокументов.УчетныеМеханизмыКонфигурации()  - внутри метода добавить свойство структуры (см. типовой) если требуется связь со своим модулем учета. Используется в ММ ЗарегистрироватьУчетныеМеханизмы()
  • ПередЗаписью()  - в МодулеНабораЗаписей регистра с контролем ставится  БлокироватьДляИзменения = Истина;  - Если используется "Новая методика" контроля остатков. Если "Старая", то четкого места установки управляемой блокировок нет - ММ, ОМ и т.д. в зависимости от логики.
  • После процедуры ПроведениеДокументов.ОбработкаПроведения() могут быть вызваны действия вне механизма проведения, например ВыполнитьКонтрольСвоимМетодом() или СвойОбщийМодульУчетногоМеханизма.ОбработкаПроведения(ЭтотОбъект, Отказ, РежимПроведения) ....как я понял такой подход является устаревшим или применим для модулей с постфиксом "Локализация" 
  • ПередЗаписью() - в МодулеНабораЗаписей регистра с контролем собираются данные движений регистратора по регистру  расход(-), приход (+)
    и помещаются в вт "ДвиженияИмяРегистраПередЗаписью".
    ПриЗаписи()   -  собираются данные движений регистратора по регистру  расход(+), приход (-)  (с ОБРАТНЫМ ЗНАКОМ !!!), объединяются (ОБЪЕДИНИТЬ ВСЕ) с данными регистра до записи движений - ВТ "ДвиженияИмяРегистраПередЗаписью", группируются по измерениям (СГРУППИРОВАТЬ ПО) и помещаются в ВТ "ДвиженияИмяРегистраИзменения".                                                          Если ДвиженияИмяРегистраИзменения не пустая, то значит произошли изменения, в ту  или иную сторону и их нужно обработать                          (дать Отказ транзакции, вывести сообщения и т.д.)

Составил для себя, как памятку, и надеюсь кому-то поможет, пригодится еще.

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

Наименование Файл Версия Размер
Cхема проведения документов в ERP 2.5 ( html, pdf, drawio)

.zip 412,09Kb
27.01.20
11
.zip 0.0.2 412,09Kb 11 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Diversus 2109 27.01.20 10:18 Сейчас в теме
Немного офтоп. Скажите пожалуйста, а в каком редакторе такую красивую схему нарисовали? :)
2. puzo 27.01.20 13:03 Сейчас в теме
4. s14adow 99 27.01.20 13:39 Сейчас в теме
(2)Все верно. Вещь классная, но все же рисование кривых не так "интуитивно" и удобно как могло бы быть ( контрольные точки не выделяются), да и при перемещении блоков линии порой спутываются что приходится все править...
5. s14adow 99 27.01.20 23:07 Сейчас в теме
3. Йожкин Кот 1081 27.01.20 13:13 Сейчас в теме
Поставил +
За draw.io отдельное спасибо
6. Yashazz 3419 28.01.20 17:51 Сейчас в теме
Вообще вещь нужная, т.к. наши разлюбезные коллеги, ваяющие БСП и вообще все эти громоздкие уродства под названием "типовые конфиуграции", любят накрутить всего, побольше и посложнее. И документировано это фигово, и описано - ниже плинтуса. Поэтому приходится выкручиваться.

Но имхо, лучше делать конкретные схемы проведения. У меня вот есть конфа, которая строит не менее красивый граф последовательности вызванных процедур и функций автоматически, по результатам трассировки или замера производительности. И выясняется, что эти криворукие методисты и хитромудрые деятели от ERP даже собственный стандарт удивительным образом не соблюдают. И исполнение кода заносит в совершенно чудные места...
cleaner_it; s14adow; +2 Ответить
Оставьте свое сообщение

См. также

Расширение возможностей печати: Вывод произвольного нижнего и верхнего колонтитула Промо

Печатные формы документов Практика программирования Универсальные функции v8 1cv8.cf Абонемент ($m)

Расширяем функционал вывода нижнего / верхнего колонтитула. Стандартно 1С имеет достаточно ограничений по выводу и наполнению колонтитулов содержимым, взять хотя бы такие, как вывод только текста и отсутствие ограничения на номер конечной страницы. А при разработке кода сталкиваешься с тем, что свой блок с нижним колонтитулом нужно прижимать к низу страницы. Казалось бы быстро решаемый вопрос, но и в нем есть нюансы. Сейчас я расскажу о том, как решалась эта задача. UPD 15.02.2018. Добавлен вывод верхнего колонтитула; Вывод колонтитулов на первой и последней странице управляется параметрами; Научился считать страницы: Добавлено заполнение переменных аналогичных стандартным из колонтитулов; Задаются форматы даты и времени. Ограничения прежние: 1. Повторно сформировать табличный документ после смены параметров страницы интерактивно.; 2. Передавать данные для более плотной печати как можно более мелко нарезанными кусками.

1 стартмани

29.12.2017    40344    28    agent00mouse    0    

Два способа реализации ABC-анализа контрагентов для БП 3.0

Практика программирования Оптовая торговля v8 БП3.0 Россия УУ Абонемент ($m)

В данной статье рассматриваются 2 способа реализации ABC анализа контрагентов для конфигурации Бухгалтерия предприятия 3.0 (версия  3.0.75.109).

1 стартмани

17.03.2020    1917    8    Астиг    8    

Задачка: Список всех документов за заданный период, используя СКД

Практика программирования v8 v8::СКД 1cv8.cf Абонемент ($m)

Вывести все документы за заданный период, используя СКД.

1 стартмани

11.03.2020    2039    2    MaxxiMiliSan    7    

Подборка иконок для подсистем 1С:8.2, 8.3 (740 шт.) PNG 48х48 Промо

Практика программирования Работа с интерфейсом v8 1cv8.cf Россия Абонемент ($m)

Подборка иконок для подсистем 1С: Предприятие 8.2, 8.3 (УП) в формате PNG 48*48 с сохранением прозрачности.

3 стартмани

19.12.2011    103771    192    Lesha1C    74    

СКД: красивые надписи в заголовках колонок

Практика программирования Работа с интерфейсом v8 v8::СКД УПП1 Россия Абонемент ($m)

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

2 стартмани

27.02.2020    9732    7    wowik    36    

Отчет на СКД с выводом остатков по всем датам периода для УТ 10.3 (обычные формы)

Практика программирования v8::СКД УТ10 Россия УУ Абонемент ($m)

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

1 стартмани

23.12.2019    3325    3    jump0    0    

Решение задач по мотивам статьи "30 задач. Странных и не очень"

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка по мотивам статьи: https://infostart.ru/public/1161686/

1 стартмани

04.12.2019    3012    2    batsy66    9    

Программное добавление параметров редактирования СКД

Практика программирования v8 v8::СКД 1cv8.cf Абонемент ($m)

В данной публикации приводится пример программного добавления параметров редактирования для поля выборки в СКД.

1 стартмани

25.11.2019    5603    1    Isonic    8    

html + css + js в поле HTML документа 1С на примере решения задачи ханойских башен

Практика программирования v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Рассматривается пример использования html + css + js в полеHTMLдокумента 1с. Вызов функций javascript со стороны 1С с передачей параметров. Решение головоломки "Ханойская башня" с визуализацией в среде 1С.

1 стартмани

11.11.2019    6076    9    mangushov    0    

Инициалы имени иностранного сотрудника в ЗУП 3.1

Практика программирования Печатные формы документов v8 v8::СПР ЗУП3.x Россия Абонемент ($m)

Решение проблемы лишнего дефиса в двойном имени иностранного сотрудника с помощью простого расширения.

1 стартмани

10.10.2019    4339    0    accounting_cons    0    

Индикатор выполнения (прогресс-бар) с таймером остаточного времени выполнения (обычное приложение + УФ)

Практика программирования Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

08.10.2019    5006    12    slayer-ekb    5    

Формирование внешнего отчета в фоне

Практика программирования Разработка v8 1cv8.cf Абонемент ($m)

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

1 стартмани

07.08.2019    8396    4    partizand    14    

Расчет сложных итогов СКД

Практика программирования v8 v8::СКД 1cv8.cf Абонемент ($m)

Малоизвестный прием для расчета итогов в отчетах на СКД.

1 стартмани

05.08.2019    18627    14    masterkio    16    

Иерархическая нумерация в отчете СКД с помощью макета поля

Практика программирования Разработка v8 v8::СКД 1cv8.cf Абонемент ($m)

Представляю Вашему вниманию вариант решения задачи нумерации строк иерархического отчета на СКД.

1 стартмани

28.06.2019    7609    5    Isonic    14    

Пример печатной формы в Word для УТ 11.4, ERP. КА 2.4, подложка и колонтитулы

Печатные формы документов Практика программирования Разработка v8 ERP2 УТ11 КА2 Россия Абонемент ($m)

Пример внешней печатной формы с выводом в MS Word для УТ 11.4, КА 2, ERP 2.4, печатная форма печатается из документа "Заказ клиента". Для примера разобрано програмнное заполнение верхнего и нижнего колонтитулов, а также печать в качестве подложки - логотипа организации (печать картинки на заднем фоне, при этом у логотипа уменьшена яркость и он повернут на 45 градусов).

1 стартмани

30.05.2019    3472    13    DarkPinch222    5    

Поле "Отбор" в управляемой форме используя СКД

Работа с интерфейсом Практика программирования Разработка v8::УФ v8::СКД 1cv8.cf Абонемент ($m)

Пример, который осуществляет отбор ссылок при помощи СКД, макет компоновки создается программно.

1 стартмани

17.05.2019    9088    10    artms    0    

Отладка сложных отчетов на СКД

Практика программирования v8 v8::СКД 1cv8.cf Россия Абонемент ($m)

Расширение для отладки сложных отчетов на СКД (в т.ч. для собираемых программно "на лету") и быстрого перехода к отладке таких отчетов в консоли запросов и отчетов на СКД.

1 стартмани

28.12.2018    27610    93    maxx    58    

Шаблон кросс-таблицы с иерархией на СКД

Инструментарий разработчика Практика программирования v8::БУ v8::СКД БП3.0 Россия Абонемент ($m)

Шаблон для быстрой реализации отчета кросс-таблицы с иерархией и жестко заданной структурой вывода с использованием СКД.

1 стартмани

22.12.2018    9717    8    wizard.ilmir02    3    

Чат на управляемых формах

Практика программирования WEB v8 v8::УФ Абонемент ($m)

Чат для 1С на управляемых формах, для работы в браузере. Возможности: Есть общая комната Можно создавать открытые и закрытые комнаты Переписка между двумя пользователями (беседа) Протестировано на платформе 8.3.12.1714.

2 стартмани

14.12.2018    6075    10    panihinnv    13    

Печать QR кода

Практика программирования v8 1cv8.cf Россия Абонемент ($m)

Простой пример печати QR кода.

1 стартмани

18.11.2018    8708    13    ah7777777    4    

Объединение нескольких печатных форм в один табличный документ

Практика программирования v8 v8::СКД 1cv8.cf Абонемент ($m)

Простое решение, как объединить табличные документы с различной шириной колонок в один и чтобы ничего не разъехалось.

1 стартмани

17.11.2018    13252    7    echo77    6    

Отчет для демонстрации работы с программной расшифровкой СКД

Практика программирования v8::СКД 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

08.11.2018    7018    6    budidich    1    

Диаграмма Ганта и графическая схема сторонними средствами

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

Примеры формирования диаграммы Ганта и графической схемы в 1С сторонними средствами.

1 стартмани

01.11.2018    7085    5    no_betrayal    6    

И снова группировка столбцов в СКД

Практика программирования v8 v8::СКД УТ11 Россия Абонемент ($m)

В публикации описано создание отчета "Остатки по складам" с группировкой по строкам и столбцам.

1 стартмани

23.10.2018    11418    1    vasilievil    9    

Параметризованные заголовки полей СКД

Практика программирования v8 v8::СКД 1cv8.cf Абонемент ($m)

Доработанный шаблон типового отчета, который это позволяет менять заголовки полей в зависимости от значений параметров.

2 стартмани

21.09.2018    8321    3    echo77    3    

Преобразование отбора компоновки данных к линейному условию для запроса

Практика программирования v8::БУ БП3.0 Россия БУ Абонемент ($m)

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

10 стартмани

10.09.2018    4534    2    scarabey2006    4    

Табель учета рабочего времени или как создать календарик в табличной части документа

Практика программирования Учет рабочего времени Учет рабочего времени v8 УНФ ERP2 УУ Абонемент ($m)

Мой велосипед по созданию документа учета рабочего времени. Обработка предназначена для Управляемых форм, тестировалась на Управление нашей фирмой, редакция 1.6 (1.6.10.44),1С:ERP Управление предприятием 2 (2.4.4.124) платформы (8.3.12.1412),(8.3.11.2867)

1 стартмани

24.08.2018    4252    2    Doreng    2    

Вывод результата отчета СКД в разные табличные документы

Практика программирования Работа с интерфейсом v8::СКД 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

21.08.2018    13177    11    Dipod    4    

[Механизм интерфейса] Интерактивный выбор даты

Практика программирования Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

16.08.2018    11035    8    rpgshnik    18    

Примеры программной работы с СКД, а также программного создания управляемой формы

Практика программирования v8 v8::УФ v8::СКД Абонемент ($m)

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

1 стартмани

12.08.2018    6230    27    MaxCreator    0    

Линия тренда в диаграмме на графике "Биржевая свеча"

Практика программирования WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Отчет демонстрирует, как можно отразить линию тренда на биржевом графике типа "свеча" средствами 1С.

1 стартмани

11.08.2018    6481    19    Scop    3    

Горячая клавиша для открытия ячеек таблиц, отчетов

Практика программирования Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Задача: Открывать отчет Анализ движений номенклатуры по горячей клавише из документов, где в табличной части есть номенклатура, из списка номенклатуры и из любого отчета или в рмк в поиске товаров.

1 стартмани

10.08.2018    6129    2    leobrn    0    

Часы в 1С

Практика программирования v8 1cv8.cf Абонемент ($m)

Часы в 1с с использованием продвинутого рисования

1 стартмани

25.07.2018    5565    3    Plash    7    

Множество Мандельброта на 1С

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

20.03.2018    4056    3    kylix90    3    

Таблица значений в параметрах СКД

Практика программирования Инструментарий разработчика v8 v8::СКД 1cv8.cf Абонемент ($m)

Шаблон отчета на СКД, где в качестве параметра передаётся таблица значений.

1 стартмани

31.01.2018    9240    22    skydivespb    4    

Пример реализации технологии Блокчейн в 1С 8.3

Практика программирования Блокчейн v8 Абонемент ($m)

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

10 стартмани

26.01.2018    10311    1    astracrypt    2    

Пример решения расчетной задачи с табелем (для 1С:Специалист)

Практика программирования Решение задач на 1С:Специалист Учет рабочего времени Учет рабочего времени v8 v8::СПР УУ Абонемент ($m)

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

1 стартмани

25.01.2018    16592    7    perepetulichka    3    

Подпись в мобильном приложении

Практика программирования Мобильная разработка v8::Mobile 1cv8.cf Абонемент ($m)

Подпись клиента в вашем мобильном приложении.

1 стартмани

04.01.2018    14747    45    onec.developer    7    

Справочная библиотека программ и подпрограмм 1С

Практика программирования v8 1cv8.cf Россия Абонемент ($m)

Данная небольшая статья (и обработка для использования в практике своей работы) предлагается вниманию начинающим и опытным программистам 1С в качестве небольшого пособия по освоению программирования на платформе 1С. Есть такая книжка «1С: Предприятие Опыты программирования», написал ее небезысвестный в узких одинэсовских кругах О. В. Бартеньев (издательство «Диалог-МИФИ», 2004 г.), так вот, при внимательном ее изучении у пытливого пользователя возникает множество вопросов. Предлагаемая обработка позволяет решить некоторые из них.

1 стартмани

06.10.2017    9802    8    vik2006    12    

Решение задачи по созданию прикладного решения

Практика программирования Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8 Россия УУ Абонемент ($m)

Создание прикладного решения для платформы «1С: Предприятие» для упрощенного учета хозяйственной деятельности некой торговой организации.

1 стартмани

25.08.2017    7484    15    alex1_1976    0