gifts2017

Свертка любого регистра накопления

Опубликовал вадим В (ditiatko) в раздел Обработки - Свертка базы

Внешняя обработка для свертки регистра накопления (остатки), на произвольную дату, по произвольным отборам. Фиксирование результатов документом "Корректировка записей регситров".

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

  1. Выбираем регистр.
  2. Устанавливаем отборы по необходимым измерениям.
  3. Указываем параметры для сворачивания. 

Пример:

Если имеем строки

Номенклатура Склад     Документ Сумма Количество

 Диван              Центр    №1           10       1  

Диван              Центр     №2           12       1 

Диван              Магазин  №2           15       1   

 

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

 

Диван              Центр     №2           22       2 

Диван              Магазин  №2           15       1  

 

     4. Задаем значения заполнения (после свертки подставит соответствующие значения).

     5. Жмем "Выполнить" и смотрим корректировку

 

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

  

p.s. не удивляемся почему записей так много. Корректировка списывает текущие остатки и вносит свои.

p.p.s. жду комментариев и предложений 

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

Наименование Файл Версия Размер
Свертка регистра накопления.epf 125
.epf 13,89Kb
05.12.12
125
.epf 13,89Kb Скачать
Свертка регистра накопления v1.1.epf 125
.epf 15,47Kb
07.12.12
125
.epf 15,47Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Александр Лыткин (TrinitronOTV) 06.12.12 06:18
а зачем вообще сворачивать регистр, например только по остаткам? как это повлияет на остальную информацию в других регистрах?
2. вадим В (ditiatko) 06.12.12 11:19
На остальную никак. Делал для партий товаров, чтобы убрать минуса в партиях закрытых периодов.
3. Alex Misanets (Misanets) 06.12.12 17:56
В моем случае было бы лучше сворачивать удалив записи регистра создав одну новую (свернутую) запись. Но все равно плюс в карму.
4. вадим В (ditiatko) 06.12.12 18:03
Думал над этим. но отказался, для того чтобы сохранялась история и обороты.
5. Alex Misanets (Misanets) 07.12.12 10:55
(4) ditiatko, вот эту "горе история" я и хочу убрать))
6. вадим В (ditiatko) 07.12.12 11:21
Будет свободное время, опционально можно сделать удаление свернутых записей (те которые были до сворачивания).
7. вадим В (ditiatko) 07.12.12 17:15
(5) Misanets, Добавлена возможность удаления движений (опционально).
8. Данила Елистратов (CagoBHuK) 17.12.12 18:30
(1) +1. Такие вопросы решаются просто корректировкой записей регистров за текущий период. Вопрос автору: вы отключаете расчет итогов по регистру в момент его перезаписи? Что будет, если в регистре миллиарды записей?
9. вадим В (ditiatko) 17.12.12 19:04
(8) CagoBHuK,
Такие вопросы решаются просто корректировкой записей регистров за текущий период.

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

на настолько больших объемах не тестировал, признаюсь частно, но здесь два варианта:
-в первом случае он проводит одним документом - тоесть и пересчет итогов будет один.
-в случае очистки регистра, запись происходит в транзакции при монопольном, так что, насколько мне известно, пересчет итогов будет проходить только один раз, после фиксации транзакции.
А от пересчета никуда не деться в любом случае.
10. Денис (DenisKin) 05.03.13 14:15
Спасибо! Обработка реально помогла свернуть партии так как мне нужно было.
11. Юрий Осипов (yuraos) 06.04.13 09:28
Альтернатива:
без написания отдельной обработки
в "Консоли запросов 1С + ADO"
12. вадим В (ditiatko) 06.04.13 12:36
(11) yuraos,
Альтернатива:
- Для программистов возможно, для бухгалтеров и пользователей точно нет.
p.s. а публикацию вашу стоит прочитать внимательней, и возможно взять на вооружение :)
13. Юрий Осипов (yuraos) 06.04.13 13:47
(12) ditiatko, согласен.
Этот инструмент "Консоли запросов 1С + ADO" - не для кривых ручек.


PS:
Перед открытием формы консоли
проверяется наличие совокупности "крутых" глобальных прав,
а так же доступ
к роли "ПолныеПрава" (если она есть в конфигурации).
14. Shade (Shade) 02.06.13 05:07
А почему в примере склад Центр №1 и Центр №2 объединились?
И почему остался именно этот, например, а не другой?
15. вадим В (ditiatko) 04.06.13 16:34
(14) Shade, Центр это склад, а №1, и №2 - это номера документов, поэтому склад свернулся, а документ должен остаться пустым (если мы его явным образом не указали).
16. Геннадьевич Бу (Геннадьевич) 15.07.13 16:04
Я так понял, обработка работает только с остатками? Как на это реагируют документы которые эти движения делали?
17. вадим В (ditiatko) 15.07.13 17:15
(16) Геннадьевич,
Как на это реагируют документы которые эти движения делали


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