Изменения движений

17.09.26

Разработка - Тестирование QA

Обработка «Изменения движений» проверяет, меняются ли движения документов после перепроведения — без изменения данных в базе (перепроведение в транзакции с откатом). Удобна после обновления конфигурации, рефакторинга проведения и для регрессии доработок, в том числе сгенерированных ИИ. Можно запускать из формы или программно (регламент, HTTP-сервис, автотесты): задаёте период, виды документов и регистров, лимит выборки — получаете отчёт и таблицу расхождений.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Изменения движений:
.epf 32,89Kb ver:2.0.1
1 6 200 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Обработка «Изменения движений»

Обработка «Изменения движений» проверяет, меняются ли движения документов после перепроведения — без изменения данных в базе (перепроведение в транзакции с откатом). Удобна после обновления конфигурации, рефакторинга проведения и для регрессии доработок, в том числе сгенерированных ИИ. Можно запускать из формы или программно (регламент, HTTP-сервис, автотесты): задаёте период, виды документов и регистров, лимит выборки — получаете отчёт и таблицу расхождений. Не зависит от конфигурации.

1. Назначение

Обработка сравнивает движения документов «до» и «после» перепроведения. Перепроведение выполняется в транзакции с последующим откатом — данные в базе не изменяются. 

Типичные сценарии использования:

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

2. Принцип работы

Для каждого помеченного вида документа обработка:

  • выбирает проведённые документы за указанный период (с учётом отбора и лимита КоличествоОбъектов);
  • снимает снимок движений по помеченным регистрам;
  • перепроводит документ в транзакции и снова снимает снимок;
  • откатывает транзакцию;
  • сравнивает строки движений по полям и фиксирует расхождения.

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

3. Работа через форму

3.1. Настройки проверки

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

Рис. 1. Закладка «Настройки»: период, лимит, документ «Заказ клиента», отбор по реквизитам

3.2. Выбор документов и движений

В списках «Документы» и «Движения» отмечаются объекты проверки. Команда контекстного меню «Отметить движения по документу» автоматически помечает регистры, в которые пишет выбранный вид документа.

Можно открыть журнал документов выбранного вида.

Рис. 2. Контекстное меню документа: «Отметить движения по документу»

Пометки регистров можно также выставлять вручную — для всех строк или только для выделенных:

Рис. 3. Контекстное меню списка движений: установить / снять пометки

3.3. Узкая выборка (один документ — один регистр)

Для точечной проверки достаточно пометить один вид документа и один регистр. Так же настраивается и программный запуск через Инициализировать().

Рис. 4. Пример узкой настройки: «Заказ клиента» и регистр «Распоряжения на отгрузку и возврат»

3.4. Результат проверки

После нажатия «Выполнить проверку» открывается закладка «Результат». Отчёт «Расхождения движений документов после перепроведения» содержит итоги (проверено / с расхождениями / всего расхождений) и иерархию: вид документа → документ → регистр → поля строк движений.

В колонках «Значение до проведения» и «Значение после проведения» видно, что изменилось: изменённые поля, удалённые или добавленные строки движений. Расшифровка позволяет открыть документ или форму списка регистра по регистратору.

Рис. 5. Результат при проверке по нескольким регистрам (детализация по полям)

Рис. 6. Результат узкой проверки по регистру «Распоряжения на отгрузку и возврат»

 

Рис. 7. Результат узкой проверки по регистру «Распоряжения на отгрузку и возврат»

4. Программный интерфейс

Обработку можно вызывать без формы — из общего модуля, регламентного задания или HTTP-сервиса. Это удобно для автоматической проверки после изменения доработок (в том числе ИИ): сервис принимает параметры, запускает проверку и возвращает признак наличия расхождений / их количество.

4.1. Основные методы и реквизиты

  • Инициализировать(ВосстанавливатьНастройки, ВыбранныеВидыДокументов, ВыбранныеВидыРегистров) — заполняет списки видов и схем компоновки.
  • Период — СтандартныйПериод отбора документов.
  • КоличествоОбъектов — лимит документов одного вида (0 — без ограничения).
  • ВыполнитьПроверку() — перепроведение с откатом и сравнение.
  • Результат — табличный документ отчёта.
  • ТаблицаРасхождений — таблица значений с детализацией расхождений.

4.2. Примеры серверного запуска

Пример проверки заказов клиента с отбором по автору:

&НаСервере
Функция ПримерПроверки() 
	Обработка = Обработки.ИзмененияДвижений.Создать();
	
	Обработка.Инициализировать(Ложь, "ЗаказКлиента");

	// Август 2026
	Обработка.Период = Новый СтандартныйПериод('20260801000000','20260831235959');
	
	Обработка.КоличествоОбъектов    = 30;
	
	// Отбор: Автор = Администратор
	Автор 		= Справочники.Пользователи.НайтиПоНаименованию("Администратор", Истина);
	Схема 		= Обработка.ВсеСхемыКомпоновки().Получить("ЗаказКлиента");
	Настройки 	= Схема.НастройкиПоУмолчанию;
	
	ЭлементОтбора = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлементОтбора.ЛевоеЗначение  	= Новый ПолеКомпоновкиДанных("Автор");
	ЭлементОтбора.ВидСравнения   	= ВидСравненияКомпоновкиДанных.Равно;
	ЭлементОтбора.ПравоеЗначение 	= Автор;
	ЭлементОтбора.Использование  	= Истина;
	
	ВсеНастройки 					= Новый Соответствие;
	ВсеНастройки.Вставить("ЗаказКлиента", Настройки);
	Обработка.Настройки 			= Новый ХранилищеЗначения(ВсеНастройки);
	
	Обработка.ВыполнитьПроверку();
	
	Возврат Обработка.ЕстьРасхождения;	
КонецФункции

 

Пример проверки заказов клиента по регистру «Распоряжения на отгрузку и возврат»:

&НаСервере
Процедура ПримерПроверки2() Экспорт     

      Обработка = Обработки.ИзмененияДвижений.Создать();     

      // Документ ЗаказКлиента, регистр накопления РаспоряженияНаОтгрузкуИВозврат
      Обработка.Инициализировать(
              Ложь,
              "ЗаказКлиента",
              "РегистрНакопления.РаспоряженияНаОтгрузкуИВозврат");
     
      // Август 2026
      Обработка.Период = Новый СтандартныйПериод('20260801000000','20260831235959');     

      // Не больше 30 документов
      Обработка.КоличествоОбъектов = 30;     

      Обработка.ВыполнитьПроверку();
   
      // Результат — табличный документ в реквизите Результат
      // Расхождения — в ТаблицаРасхождений

      Если Обработка.ТаблицаРасхождений.Количество() = 0 Тогда
          Сообщить("Расхождений не обнаружено.");
      Иначе
          Сообщить(СтрШаблон("Найдено расхождений: %1", Обработка.ТаблицаРасхождений.Количество()));
      КонецЕсли;     

КонецПроцедуры

 

4.3. Кратко по шагам примера

  • Инициализировать — только ЗаказКлиента и регистр РаспоряженияНаОтгрузкуИВозврат (оба с пометкой).
  • Период — 01.08.2026–31.08.2026.
  • КоличествоОбъектов = 30 — в выборку попадёт не больше 30 проведённых документов.
  • ВыполнитьПроверку() — перепроведение в транзакции с откатом и сравнение движений.
  • Регистр можно передать и коротким именем: «РаспоряженияНаОтгрузкуИВозврат» — нормализация сама найдёт его среди регистров накопления.

Параметры ВыбранныеВидыДокументов и ВыбранныеВидыРегистров принимают строку, объект метаданных, массив или список значений. Документ — имя или «Документ.Имя»; регистр — полное имя («РегистрНакопления.…») или короткое имя.

5. Практические рекомендации

  • Начинайте с узкой выборки (один документ + один–два регистра) и небольшого КоличествоОбъектов.
  • После обновления или рефакторинга сначала прогоняйте критичные документы (заказы, реализации, поступления).
  • Ненулевые расхождения — сигнал к анализу: изменилась логика проведения, состав измерений/ресурсов или порядок записи движений.
  • Для автоматизации свяжите вызов с HTTP-сервисом: нулевой объём ТаблицаРасхождений = успешная проверка.
  • Настройки формы (пометки, отборы, «Только выбранные») сохраняются в хранилище общих настроек пользователя. 

 

 

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

  • Управление торговлей, редакция 11, релизы 11.6.1.61

Вступайте в нашу телеграмм-группу Инфостарт

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

См. также

DevOps и автоматизация разработки Тестирование QA Групповая разработка (Git, хранилище) Программист 1С:Предприятие 8 Бесплатно (free)

Четыре года в интеграторе я работал с git и EDT. Git после хранилища полюбил сразу: видно, кто и что менял. С EDT сложнее: тормозит, ошибки при обновлении ERP, автономный сервер внутри него работает только с файловой базой. На новой работе команда захотела перейти на git, я развернул EDT, и оно на второй день разрушило проект при загрузке расширения. Тогда я решил дать команде git с привычным Конфигуратором и инструмент, который за минуту доносит коммит до базы через ibcmd, вместо получасовой загрузки из файлов. На новой работе разрешили ИИ, и я написал это приложение с его помощью: от чтения документации и первого ТЗ до идей в электричке. Впервые за годы снова почувствовал себя творцом, а не закрывателем задач. По дороге приросли выгрузка, объединение и проверка конфигурации по коммитам, YAxUnit и режим MCP-сервера. В статье: схемы, скриншоты, грабли и честный список ограничений. Ссылки пока нет: хочу понять, нужно ли это кому-то, кроме меня.

03.09.2026    10657    KatanaDragon511    28    

40

Инструменты администратора БД Инструментарий разработчика Тестирование QA Системный администратор Программист Стажер 1С:Предприятие 8 Бесплатно (free)

В экосистеме 1С давно живут сотни инструментов: от Конфигуратора и Хранилища до систем тестирования, мониторинга, интеграции и CI/CD. Я собрал их в Ландшафт технологий, а теперь добавляю данные о реальном использовании. Рассказываю, как устроена карта, что показал первый опрос и почему в новой волне особенно нужны администраторы, аналитики и тестировщики.

01.09.2026    2175    mrXoxot    6    

25

DevOps и автоматизация разработки Мониторинг Тестирование QA Программист 1С:Предприятие 8 Бесплатно (free)

Платформа 1С давно вышла за рамки учетных систем. Сегодня это полноценная среда для создания сложных, высоконагруженных и распределенных приложений. А значит, и стек технологий современного разработчика кардинально изменился. Систематизируем весь инструментарий, который превращает 1С-программиста в инженера: от EDT и Git до автотестов на YAxUnit, контейнеризации приложений в Docker, мониторинга в Prometheus и организации шины данных на Kafka. Разберемся, зачем каждый инструмент нужен, как он вписывается в жизненный цикл разработки и с чего начать его внедрение.

25.08.2026    21320    mrXoxot    53    

83

HighLoad оптимизация Тестирование QA Программист 1С 8.3 Бесплатно (free)

Шесть внешних отчётов на боевой базе крупной сети переписали за неделю. По секундомеру ускорились четыре, в акт пошли три: у одного отчёта минус тринадцать процентов оказались выбросом нагрузки прода, а не эффектом кода. Поймал это чередующийся замер до/после в одном окне, обычные три прогона с метрикой "минимум" показывали ускорение уверенно. Дальше в тексте: почему построчная сверка выхода ломается ровно на тех правках, ради которых её заводят; из чего собирается повторяемый слепок результата и почему главную работу в нём делает нормализация, а хеш только сигнализация; где слепок не берётся вовсе и его заменяет по-колоночная сверка; чем проверять пересчёт итогов, чистку данных и операции с кластером. Отдельно - гипотеза, которую замер отклонил, и честный счёт, во что вся эта дисциплина обходится.

21.08.2026    1370    nedomolkov.ivan    0    

0

Тестирование QA Программист Бесплатно (free)

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

17.08.2026    1116    user2181343    0    

1

Тестирование QA Программист 1С 8.3 Россия Бесплатно (free)

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

13.08.2026    1491    chagbig    1    

0

Тестирование QA Программист Бесплатно (free)

Разбираем, как в крупных компаниях регуляторные требования, постмортемы и внутренние ограничения постепенно превращаются в многоуровневую систему инструкций, в которой разработчику все сложнее понять, что и когда нужно проверить. Показываем opensource-сервис внешних проверок для GitLab, который автоматизирует часть этой бюрократии и сводит результат к понятному сигналу: зеленое – все в порядке, красное – нужно обратить внимание на конкретное требование. Объясняем, как такие проверки помогают «сдвинуть влево» контроль задач и снизить риск отказа во внедрении задачи в последний момент перед релизом. А заодно смотрим, может ли связка Autumn + «Вино» + немного разработческого энтузиазма превратить обязательные инструкции в инструмент, который команда сама захочет развивать.

12.08.2026    1331    Golovanoff    2    

4

Поиск данных Тестирование QA Программист 1С 8.3 1С 8.5 Бесплатно (free)

Как мы пришли к Юнит-тестированию и почему стоит его использовать. Использование универсальных тестов для проверки работы IS MagicInput в вашей конфигурации.

16.07.2026    2495    Evg-Lylyk    2    

5
Для отправки сообщения требуется регистрация/авторизация