REGTool Полезные операции с регистрами накопления


Усовершенствованная http://avprog.ru/public/60413/ Расширен функционал. Добавлен поиск и замена значений. Добавлено заполнение РБ по данным РН по шаблону проводки. Добавлено использование транзакций и выполнение произвольного кода.

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

Функционал:

- Закладка "Замена значений". Доступны 3 функции: "Поиск и замена" значения в записях выбранного регистра, "установка значения" (если нужно заменить абсолютно все значения поля на указанное), "Выполнить код". Сперва необходимо выбрать регистр, после чего появятся доступные поля: измерения, ресурсы, реквизиты. Для того, чтобы заменить пустое (незаполненное значение) на указанное, достаточно выбрать просто тип. Также возможен отбор движений по регистраторам, список которых открывается по кнопке "Регистраторы..." Если список пуст, поиск и замена (либо установка значения) произведется по всей таблице регистра. Кнопка "Выполнить код" вставляет в цикл обработки записей набора записей произвольный программный код (текстовое поле в нижней части закладки) и выполняет его. Удобно, когда нужно заполнить значение поля записи не фиксированным значением, а вычисленным по другим полям, либо произвольным алгоритмом. Удобно для обработки документов "Корректировка записей регистров".

- Закладка "Заполнить РН". Возможность создания документа корректировки записей регистра с записями остатков первого регистра на дату. Удобно, например, в случаях, когда в базе начинают вести учет БУ, НУ или УУ и необходимо заполнить регистры данными какого-либо из видов учета. (Например, в УПП, ввести начальные остатки партионного учета БУ, НУ по УУ). При выборе второго регистра заполняется список полей этого регистра, отсутствующих в первом, для того, чтобы иметь возможность при заполнении регистра заполнить пустые поля каким-либо значением.  

- Закладка "Заполнить РХ". Возможность создания документа "ОперацияБУХ" с проводками по данным остатков выбранного в шапке регистра накопления. Для указания соответствия полей есть "Шаблон проводок", где можно задать для любого поля проводки - поле регистра, откуда будет браться значение. Например, если необходимо ввести начальные остатки по ТМЦ по данным регистра "ПартииТоваровНаСкладахБухгалтерскийУчет", указываем в шаблоне для поля СчетДт - поле "СчетУчета" из регистра накопления. Для поля "СубконтоДт1" - поле "Номенклатура" регистра итп... Для указания счетов и организации в явном виде, на форме есть соответствующие реквизиты, так как для формирования корректной проводки по БУ необходимо наличие 2х счетов (если счет учета балансовый) и Организации. Поэтому в указанном примере, если речь идет о внесении начальных остатков, необходимо заполнить СчетКт ("000"). После заполнения шаблона проводок и указания организации и счетов, необходимо нажать кнопку "Создать операцию". Так же, есть возможность отбора по сумме остатка (Например, в Бух 8.1, есть регистры взаиморасчетов с контрагентами. И знак суммы определяет принадлежность остатка к дебиторской, либо кредиторской задолженности (с учетом авансов), а это разные счета.) То есть, в явном виде сперва указываем один счет, указываем знак суммы остатка, и создаем операцию, потом, меняем счет и знак суммы, и создаем вторую операцию.

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

- Закладка "Удалить все записи" очищает всю таблицу регистра накопления. Принцип работы: Выполняется запрос с группировкой по регистраторам по виртуальной таблице оборотов регистра. Перебирая регистраторы создаются и очищаются наборы записей. Пользователям SQL баз рекомендуется делать средствами SQL (TRUNCATE TABLE очищает таблицу за секунду максимум)

Так же можно использовать транзакции. Настройка в верхней правой части обработки.

Файлы обработки:

-