Корректировка ГТД и восстановление НДС в БП 3.0
В январе 2022 года была отражена таможенная стоимость импортированных товаров документом Поступление товаров (раздел Покупки – Поступление (акты, накладные, УПД) – Поступление – Товары). Обращаем внимание, что счет учета НДС 19.05 “НДС, уплаченный при ввозе товаров на территорию Российской Федерации”. На основании Поступления товаров создан документ ГТД по импорту
Уплаченный НДС принят к вычету:
В декабре 2022 года таможенная стоимость выпущенного товара была скорректирована в сторону уменьшения, в связи с чем разница НДС между первоначальной стоимостью и скорректированной подлежит восстановлению. Восстанавливаемая сумма НДС 2 000,00 руб.
Создаем сторно первоначальной ГТД прошлого периода с помощью документа Операции – Операции, введенные вручную – Операция – Сторно документа. В поле Содержание
выберите первую ГТД, после этого все табличные части заполнятся автоматически.
Вводим новый ГТД копированием первоначально созданного документа «ГТД по импорту» и заполняем следующими данными из КТД:
– «Таможенный сбор»
– «Таможенная стоимость», «Пошлина», «НДС» из КТД
Переходим в движения созданного документа «ГТД по импорту» и, установив флаг Ручная корректировка удаляем в Журнале учета счетов-фактур сумму по графе Сумма по счету-фактуре:
Создаем Регламентную операцию по НДС Восстановление НДС с отражением восстановления в книге продаж: раздел Операции, Регламентные операции НДС.
В графах Поставщик, Счет-фактура заполняем таможенный орган и «ГТД по импорту», далее заполняем графы: Вид ценности, Счет НДС, % НДС и в графе НДС указывается сумма восстановленного НДС. Остальные графы не заполняются:
Проверяем запись в Книге продаж и убеждаемся, что данные заполнены корректно:
Теперь формируем ОСВ по счёту 19.05. Сальдо необходимо устранить:
Это возможно за счёт операции, введённой вручную:
Также необходимо сформировать универсальный отчёт по регистру накопления «НДС предъявленный»:
Остатки по регистру накопления НДС предъявленный также необходимо устранить:
Делается это также в ручной операции (регистры возможно добавить через кнопку Ещё):
После корректировки регистра и бухгалтерских проводок сальдо в БУ и остатков по регистру не остаётся:
(Рейтинг:
5 ,
Голосов: 6 )
Материалы по теме
Устранение разрыва между регистрами взаиморасчетов с партнерами
В помощник Закрытие месяца включена процедура контроля и устранения разрывов расчетов с партнерами по данным регистров оперативного учета. Процедура выполняется только для онлайн взаиморасчетов.
Решаемые задачи:
- Устранить разрывы между остатками по регистрам взаиморасчетов, появившиеся из-за пользовательских и системных ошибок.
- Свернуть развернутое сальдо в рамках одного объекта расчетов и аналитики без участия пользователя.
- Сделать возможным автоматический переход на онлайн взаиморасчеты.
- Обеспечить механизм, при помощи которого в будущем можно будет корректировать ошибки взаиморасчетов в открытом периоде.
Примеры ошибок, создавшие разрывы в остатках:
- Вводом остатков введен остаток, как по долгу, так и по предоплате в рамках одного объекта расчетов и аналитики взаиморасчетов.
- По одному договору числился остаток предоплаты, по другому договору остаток задолженности. Поиском и удалением дублей объединили два договора в один. Аналогично для партнеров, контрагентов и направлений деятельности.
- По различным причинам не было произведено оффлайн распределение взаиморасчетов.
- Произошли ошибки в онлайн распределении взаиморасчетов.
- При офлайн взаиморасчетах при детализации по договорам введена уменьшающая корректировка реализации/приобретения по уже оплаченной накладной, при наличии на договоре другого долга по другой накладной.
- Некорректно произведенные корректировки регистров.
Разрывами признаются выявленные отличия между остатками оперативных регистров взаиморасчетов (регистры Расчеты с клиентами, Расчеты с поставщиками) и остатками финансовых регистров взаиморасчетов (регистры Расчеты с клиентами по срокам, Расчеты с поставщиками по срокам).
Исправление ошибок, как и актуализация расчетов, будет выполняться с первого месяца, на который есть задание к закрытию месяца по взаиморасчетам.
Список проблем отражается в рабочем месте Закрытии месяца (Финансовый результат и контроллинг – Закрытие месяца).
Рисунок 1 — Регламентные операции по закрытию месяца
По гиперссылке Подробнее выводится детальная информация по обнаруженным ошибкам. Для каждой проблемы регистрируется тип расчетов, объект расчетов и аналитика. В поле Описание проверки выводится описание способов исправления.
Рисунок 2 — Пример проблем некорректных остатков по финансовым регистрам взаиморасчетов
Если необходимо восстановить движения внутри документов, то их нужно перепровести вручную. Автоматическое устранение ошибок в процессе выполнения этапа закрытия месяца движения документов не изменяет, а приводит остатки по регистрам к состоянию отсутствия разрывов взаиморасчетов за счет формирования документов Корректировка регистров на суммы разрывов. В результате закрытия месяца будут сформированы корректировки регистров со служебными операциями.
Рисунок 3 — Корректировка регистров
Поле Операция в документе недоступно для редактирования, заполняется автоматически и отделяет служебные корректировки от ручных. Поле Организация видно только в служебных операциях, созданных закрытием месяца или переходом на онлайн взаиморасчеты.
Для целей оперативного и управленческого учета по скорректированным записям взаиморасчетов будут добавлены балансирующие их записи по регистрам прочих доходов и расходов, активов и пассивов.
Помощник исправления развернутого сальдо по видам запасов и ГТД (обработка)
Обработка позволяет исправить развернутое сальдо по видам запасов, которое осталось после штатной обработки перепроведения документов.
Рисунок 4 — Помощник исправления развернутого сальдо (обработка)
При закрытии месяца в ERP необходимо закрывать развернутое сальдо по видам запасов и ГТД, в противном случае программа может некорректно посчитать себестоимость. Для этого разработана типовая обработка перепроведения документов по видам запасов, ее можно увидеть в механизме закрытия месяца.
Рисунок 5 — Помощник исправления остатков
Нужно учитывать, что из-за особенностей учета и самой программы не всегда эта обработка отрабатывает на 100%, т.е.после проведения документов по видам запасов могут остаться еще некоторое количество документов с развернутым сальдо.
Рисунок 6 — Отчет Наличие развернутого сальдо
Можно пользуясь отчетом Наличие развернутого сальдо, заходя в каждый документ, открывая Виды запасов исправлять номер ГТД на нужный или вид запасов на нужный, при этом на эти действия может потребоваться много времени на выполнение.
Как правило проставление видов запасов и номеров в ГТД происходит не в хаотичном порядке, а руководствуясь наличием положительных остатков по организации из того же отчета Развернутое сальдо. там где есть остаток и такое ГТД или вид запасов ставите в документ, где эти остатки отрицательные.
Рисунок 6 — Виды запасов
Чтобы сделать это быстрее достаточно выполнить данную обработку:
- она найдет все документы с отрицательными остатками по видам запасов;
- поменяет в табличной части Виды запасов “неправильный” вид запасов на тот, по которому есть остаток и перепроведет документ.
Получается, что обработка сделает все то же самое, что обычно делается вручную, но в автоматическом режиме и гораздо быстрее.
Для данной обработки не имеет значение когда поступил товар раньше или позже его расхода, главное, что он поступил или есть в остатке в текущем месяце.
Обработка просто смотрит на остаток и подставляет его.
Если методология работы на вашем предприятии не позволяет использовать такой подход, то лучше не используйте данную обработку.
Например, товары одной организации предоставляются для реализации клиентам другой организации и на момент продажи товара конечному клиенту в текущей организации товара может не быть.
А далее в конце месяца или более короткого периода вы оформляете продажи товара из той организации где товар есть в ту организацию, где его нет, но он был продан клиенту, эти продажи можно оформить по фактам недостач товара на каждый день, неделю или месяц, т.е. теоретически товар в той организации может появиться уже после его продажи. Отрицательных остатков на конец месяца не будет, препятствовать закрытию месяца не будет. Это всего лишь один из вариантов образования отрицательных остатков, то есть приходов после расходов.
Например, у вас есть договоренность с поставщиком, что накладные он выставляет не на каждую поставку, а только раз в месяц на общий объем поставок и как следствие у себя в учете мы имеем точно такую же картину.
То есть, здесь заранее сделано допущение, что товар по документам может прийти в течение месяца.
Действия:
- Выполнять обработку имеет смысл только после выполнения штатной обработки по перепроведению документов по видам запасов. Потому что штатное перепроведение отработает все механизмы программы и наиболее корректно заполнит виды запасов.
- Далее вы указываете период исправления и организацию и заполняете развернутое сальдо кнопкой Заполнить развернутое сальдо.
- Далее необходимо (не менее 3-х раз) выполнить перепроведение документов с перезаполнением видов запасов и в 99% случаев этого функционала достаточно чтобы закрыть развернутое сальдо.
Рисунок 7 — Помощник исправления развернутого сальдо по видам запасов и ГТД
В случае если после нескольких повторов ситуация не меняется, то:
- нажать кнопку Исправить автоматически, и программа переставит в строках виды запасов и номер ГТД на более корректные, при необходимости строка будет разбита на 2 и тогда можно увидеть изменение количества и добавление новой строки;
- нажать кнопку Записать изменения, происходит запись изменений и перепроведение документов.
После выполнения записи можно заполнить развернутое сальдо заново и посмотреть что осталось. При необходимости повторить все действия заново.
Дополнительно есть кнопка Перепровести документы с перезаполнением видов запасов. Она делает тоже самое что и штатная обработка, поэтому ее наличие обусловлено только дополнительным удобством и напоминанием, что в первую очередь надо делать перепроведение.
Успешное закрытие развернутого сальдо зависит от множества факторов. Корректности ввода данных, произведенных доработок, отсутствия дублей в видах запасов, отсутствия отрицательного сальдо, данный инструмент для автоматизации ручной работы.
Настройки 1C:ERP мы осуществляем в рамках услуги Аренда 1С:ERP или осуществляем отдельно поддержку 1С:ERP с привлечением квалифицированных консультантов 1С:ERP.
|
|||
НатальяАлекс
13.01.20 – 10:59 |
Доброго дня! Ситуация такова…. Остатки товаров в УТ 11.4 по количеству верные, но ГТД вносились не во всех документах. Теперь было принято решение актуализировать остатки товаров по ГТД. Сделали корректировку регистров по “Товары Организаций”. Но ГТД не списываются. Подскажите, что еще не до заполнено? Куда копать? |
||
Aleksey
1 – 13.01.20 – 11:05 |
ГТД списывается через Виды запасов, которые при обычном проведении не обновляется. Только принудительно очищать или снимать с проведения и проводить заново Т.е. есть ТЧ виды запасов которая заполняется при проведении и где фиксируется аналитика (чей товар) и в т.ч. ГТД. Соответсвенно при перепроведении информация просто используется повторно. И да не удивляйся если он при проведении в декабре будет тащить ГТД которое пришло в январе. По хорошему нужно все снимать с проведения и последовательно проводить, а не проводить. Тогда будет красиво, иначе попа. По крайне мере мне как пользователю так показалось |
||
НатальяАлекс
2 – 13.01.20 – 11:07 |
(1) корректировку сделали в прошлом году, а реализации в этом. Новые реализации… хронология соблюдена была |
||
Либерал
3 – 13.01.20 – 11:08 |
(0) странно, корректировки регистра товары организаций всегда было достаточно для этого. |
||
НатальяАлекс
4 – 13.01.20 – 11:10 |
(3) я тоже думала, что этого будет достаточно. |
||
shuhard
5 – 13.01.20 – 11:17 |
(4) [Не знаю, что не так] |
||
yzimin
6 – 13.01.20 – 11:19 |
(0) В УТ11.4 для корректировки ГТД используется документ ИсправлениеРазвернутогоСальдоТоваровОрганизаций, корректировку реализации и своего консультанта выкинь в окно |
||
НатальяАлекс
7 – 13.01.20 – 11:25 |
(6) его можно создать только из закрытия месяца? я нашла только такой вариант. Но за 2 года я не могу понаделать этих документов. Если я чего-то не знаю, направьте, плиз… |
||
yzimin
8 – 13.01.20 – 11:26 |
(7) зачем вам именно корректировать в закрытом периоде? Допустим вы хотите, чтобы ГТД печатались корректно с 01.01.2020, так и отражайте исправление сальдо 01.01.2020 |
||
НатальяАлекс
9 – 13.01.20 – 11:27 |
а документ как создать? (8) |
||
yzimin
10 – 13.01.20 – 11:31 |
(9) Написать обработку |
||
НатальяАлекс
11 – 13.01.20 – 11:32 |
готовой нет? (10) |
||
НатальяАлекс
12 – 13.01.20 – 13:11 |
апну |
||
НатальяАлекс 13 – 13.01.20 – 16:49 |
Всем спасибо, вопрос снят. Аналитика “вид запасов” была задвоена.))) |
TurboConf — расширение возможностей Конфигуратора 1С
16.05.2017
Данная обработка проверяет остатки по сериям номенклатур и если они отрицательные — производит перерасчет серии и перепроведение документа-регистратора.
Обработка написана для конфигурации 8.1 УТ
Необходимость в данной обработке возникла по той причине, что часто происходит неправильный расчет серий номенклатур (в реализации) — в результате документ проводится, но по серии могут появляться отрицательные остатки. Т.к. последующий контроль, поиск и исправление очень усложняют жизнь рядовым сотрудникам — пришлось создать ЭТО!
Обработка пока-то тестовая, глюки периодически наблюдаются, но я над ней еще работаю.
Особенности: поиск отрицательных остатков по всем возможным регистраторам, но автоматическая замена только для «Реализация товаров и услуг» (ограничение временное)!
КАК РАБОТАТЬ:
-
Запускаете обработку!
-
Указываете необходимый период (лучше не сильно большой).
-
Нажимаете «Заполнить»
-
Если искомые документы есть — они отобразятся в табличной части.
-
Автоматически будет установлен флаг «отметка» — если его снять, то этот документ не будет учитываться при обработке.
-
Если указать «Серию номенклатуры» в колонке «Серия (для подстановки)», то указанная серия будет «в лоб подставлена» вместо той, что была. Без всяких проверок и расчетов.
-
Нажимаем кнопочку «Выполнить»…ЖДЕМ 🙂
-
После обработки табличная часть не очищается и не изменяется, чтобы можно было проверить внесенные изменения.
вроде все 🙂
Новая реализация механизма Интеркампани появилась в типовых конфигурациях УТ 11.4, КА 2.4, ЕРП 2.4 в начале 2018 года. Теория и общие принципы ее реализации можно посмотреть в этой статье.
Но теория – есть теория, на практике обычно получается не все также радужно и красиво. Вот, довелось проверить работу данного механизма на реальной задаче по исправлению отрицательных остатков по организациям. Пришлось покопаться в модулях, кое-что исправить и доработать.
Центральным элементом подсистемы Интеркампани, является механизм формирования резервов (создание записей в регистре накопления «Резервы товаров организаций»). И главное, что вводит в ступор, это не обычное использование этого регистра. Нельзя, как все мы привыкли, отменить проведение документов и начать все заново. Любые действия, как проведение, так и отмена проведения ведут к расчетам результирующих резервов, к тому же используются данные регистра до начала выполнения этих действия. Это не удобно и не очевидно. Требуется вспомогательные обработки для принудительного удаления записей регистра, отслеживание состояния регистра и прочие ухищрения.
Ниже, привожу описание двух способов исправления отрицательных остатков, с использованием подсистемы Интеркампани, и без. Доработки, которые потребовалось сделать. Общее описание процесса формирования резервов на уровне процедур общего модуля «Запасы сервер», с коротким описанием. Будет полезно, для тех, кто планирует разобраться как это все работает «внутри» или найти ошибку не потратив уйму времени на разбор что и где формируется. Сразу говорю, механизм совсем не простой, как и многие другие в современных конфигурациях, к сожалению.
Термины, используемые в статье для сокращения
РТО – регистр накопления «Резервы товаров организаций», в котором содержатся записи о сформированных резервах.
ТО — регистр накопления «Товары организаций».
Отборы аналитик – отборы измерений, которые используются в запросах для расчета резервов и формирования записей по регистру «РТО»:
- Вид запасов
- Аналитика учета номенклатуры
- Организация
- Номер ГТД
Документы передачи – документы «Передача товаров между организациями».
Документы списания – документы, формирующие списание товаров: «Реализация товаров и услуг», «Отчет о розничных продажах», «Возврат товаров поставщику», «Перемещение товаров», «Сборка товаров», «Списание недостач товаров», «Порча товаров», «Внутреннее потребление товаров», «Пересортица товаров».
Документы поступления – документы, формирующие поступление товаров: «Приобретение товаров и услуг», «Возврат товаров от покупателей», «Перемещение товаров», «Сборка товаров», «Оприходование излишков товаров», «Пересортица товаров».
Сложный учет по видам запасов — ведется учет по ГТД, сложный учет НДС или используется продажа товаров, принятых на комиссию (виды запасов могут измениться при перепроведении документов списания).
Настройки передач – настройки возможных передач товаров между организациями «Финансовый результат и контроллинг >> См. также >> Настройки передачи товаров между организациями»
Кейс по исправлению отрицательных остатков по организациям
Начальные условия
Учет ведется с применением большого количества организаций. Контроль остатков по организациям отключен. Произвольные поступления и списания товаров по организациям. Может применяться сложный учет по видам запасов. Количество документов списания в месяц – более 1000. Произвольным образом заполнены настройки передач. Сформировано некоторое количество документов передачи. Закрытие месяца не выполняется из-за ошибок, связанных с наличием отрицательных остатков по организациям.
Необходимый результат
Сформировать корректные передачи товаров между организациями. Закрыть период, и рассчитать себестоимость. Выполнить эти операции за каждый месяц, последовательно, с начала ведения учета.
Решение поставленной задачи
Первое, что необходимо сделать – это удалить все существующие настройки передач и отменить проведение всех существующих документов передачи.
По ходу выполнения, можно столкнуться с проблемой, что не все документы передачи будут распроводиться. Несмотря на то, что контроль остатков по организациям отключен, некоторые документы могут выдавать ошибки следующего вида «…обнаружен лишний резерв по измерениям…». Дело в том, что если при отмене проведения документа изменяются записи в регистре «РТО», будет выполняться контроль на наличие лишних резервов по тем же отборам аналитик. Это будет происходить даже в том случае, если контроль остатков по организациям отключен.
Для решения проблемы, необходимо предварительно удалить все записей из регистра «РТО». Это можно сделать внешней обработкой, используя следующий программный код:
Удаление записей из регистра «РТО»
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
Запрос = Новый Запрос; Запрос.Текст = “ВЫБРАТЬ | РезервыТоваровОрганизаций.Регистратор КАК Ссылка |ИЗ | РегистрНакопления.РезервыТоваровОрганизаций КАК РезервыТоваровОрганизаций |ГДЕ | РезервыТоваровОрганизаций.Период >= &ПериодНачало | И РезервыТоваровОрганизаций.Период <= &ПериодОкончание | |СГРУППИРОВАТЬ ПО | РезервыТоваровОрганизаций.Регистратор” ; Запрос.УстановитьПараметр(“ПериодНачало”, Период.ДатаНачала); Запрос.УстановитьПараметр(“ПериодОкончание”, Период.ДатаОкончания); РезультатЗапроса = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ДокОбъект = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект(); НаборЗаписей = ДокОбъект.Движения.РезервыТоваровОрганизаций; НаборЗаписей.ДополнительныеСвойства.Вставить(“НеПроверятьЛишнееСторно”, Истина); НаборЗаписей.Прочитать(); Если НаборЗаписей.Количество() > 0 Тогда Попытка НаборЗаписей.Очистить(); НаборЗаписей.Записать(Истина); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЕсли; КонецЦикла; |
При удалении движений, следует обязательно установить параметр набора записей «НеПроверятьЛишнееСторно». Если параметр не будет установлен, при удалении записей будет возникать следующее сообщение «Ошибка в алгоритмах при записи … в регистр РезервыТоваровОрганизаций: образуется сторно, которое не нужно для покрытия резервов по изменениям…»:
Ошибка связана с тем, что система проверяет наличие в регистре «РТО» сторно, по которым отсутствуют сторнируемые записи по тем же отборам аналитик. Установка параметра «НеПроверятьЛишнееСторно» отменяет эту проверку. После удаления всех записей из регистра «РТО», можно отменить проведение всех существующих документов передачи.
Далее, есть несколько способов исправления отрицательных остатков, какие в каких случаях целесообразно применять, смотрите на следующей схеме:
- Не ведется сложный учет по видам запасов — можно выполнить исправление, без использования механизма Интеркампани.
- Ведется сложный учет по видам запасов, но нет перекрестных передач товаров между организациями (есть четкое разграничение между поставщики товаров и продавцами) — можно выполнить исправление, без использования механизма Интеркампани.
- Ведется сложный учет по видам запасов, и есть перекрестные передачи товаров между организациями (нет четко выделенных поставщиков и продавцов товаров, один и тот же товар может передаваться от одной организации другой и обратно, в рамках разных складов) – необходимо выполнять исправление остатков с применением механизма Интеркампани.
- Для передачи товаров между организациями используется комиссионная схема — в любом случае необходимо выполнять исправление остатков с применением механизма Интеркампани.
Собственно, в первых двух случаях можно применять как способ без использования Интеркампани, так и с использованием, а в последних двух только с использованием. Рассмотрим подробно оба способа.
Исправление отрицательных остатков без использования механизма Интеркампани
Для выполнения дальнейших действий, необходимо выключить контроль остатков товаров организаций «Финансовый результат и контроллинг >> Учет товаров >> Контролировать остатки товаров организаций». Отключение контроля на время сеанса не подойдет, так как расчет остатков будет выполняться в фоновом задании, и отключенный контроль в текущем сеансе не будет действовать.
Отменять проведенные документов для данного способа нет необходимости. Однако, желательно перепровести все документы списания за корректируемый период с принудительным перезаполнением видов запасов. Если ведется сложный учет по видам запасов – перепроведение требуется обязательно. Для принудительного перезаполнения видов запасов, необходимо устанавливать дополнительное свойство документов «ПерезаполнитьВидыЗапасов». Код внешней обработки приведен ниже:
Документ = Выборка.Ссылка.ПолучитьОбъект(); Документ.ДополнительныеСвойства.Вставить(“ПерезаполнитьВидыЗапасов”, Истина); Документ.ДополнительныеСвойства.Вставить(“ОкончаниеПериодаПомощникаИсправленияОстатков”, Период.ДатаОкончания); Документ.Записать(РежимЗаписиДокумента.Проведение); |
Перепроведение необходимо выполнять в два этапа. Сначала документы, которые формируют списание и поступление. Затем документы, которые формируют только списание.
Параметр «ОкончаниеПериодаПомощникаИсправленияОстатков» ограничивает период в котором будут подбираться доступные виды запасов. Без его установки доступность товаров будет определяться на конец текущего месяца или на дату последней записи в регистре «ТО».
После перепроведения документов, для создания документов передачи нужно использовать обработку «Финансовый результат и контроллинг >> Сервис >> Помощник формирования передач и выкупов товаров».
Примечание. Если учет ведется в разрезе ГТД, требуется внесение исправлений в программный код обработки. По умолчанию, она подбирает остатки с отбором по ГТД, а нам необходимо подбирать остатки по всем ГТД, по которым есть остатки.
(Ниже можно посмотреть необходимые доработки…)
На первой закладке помощника, в табличной части система автоматически выводит организации, по которым существуют отрицательные остатки за выбранный период, и требуется сформировать документы передачи:
Необходимо выбрать организацию и перейти далее. На втором этапе выполнения, необходимо указать способ подбора отправителей — «По указанным приоритетам». Дальше нужно заполнить всех возможных отправителей и типы цен передачи. Приоритеты подбора доступных остатков будут согласно следованию организаций в списке:
В процессе создания документов передачи может потребоваться заполнение цен, если есть товары, на которые отсутствуют цены по указанным видам цен передачи.
Если используется сложный учет по видам запасов, после создания документов передачи для каждой организации, необходимо повторно перепроводить все документы списания с принудительным перезаполнением видов запасов. Перепроведение, так же как и до создания документов передачи, должно выполняться в два этапа.
Если все действия выполнены корректно, на первой закладке помощника список организаций-получателей должен быть пустым. Дополнительно, можно проверить данные по отчету «Остатки товаров организаций» на наличие отрицательных остатков. Если отрицательных остатков нет, можно выполнить закрытие месяца и переходить к следующему периоду.
Основной минус данного подхода — это использование видов запасов или ГТД в документах списания, которые поступили позже в течение корректируемого месяца.
Исправление отрицательных остатков с использованием механизма Интеркампани
Первое, что нужно сделать, это определиться с настройками передач. Нужно решить какая будет использоваться схема передачи: продажа или комиссия, какой тип цен будет использоваться для передачи, будут ли использоваться договоры.
Примечание. На этапе исправления остатков имеет смысл указать все возможные передачи между организациями. Для дальнейшего учета я бы посоветовал избегать перекрестных передач, если в этом нет прямой необходимости и четко выделить поставщиков и продавцов товаров. Передачу товаров от покупателя поставщику можно будет сделать при необходимости, но придется это делать вручную. Это будет дисциплинировать сотрудников.
Если требуется настроить определенный порядок организаций для подбора доступных видов запасов, смотрите ниже, как это можно сделать.
Теперь насчет необходимости отменять проведение документов.
Если не используется сложный учет по видам запасов и есть уверенность, что при перепроведении виды запасов не поменяются в документах отгрузки, можно не отменять проведение документов, а использовать выше описанную обработку для перепроведения с принудительным перезаполнением видов запасов. В данном случае, параметр «ПерезаполнитьВидыЗапасов» будет приводить к расчету резервов по документу.
Примечание. Без отмены проведения документов, для корректного формирования документов передачи, необходимо внести изменения в процедурах общего модуля «ЗапасыСервер», которые позволят формировать записи в регистр «РТО» только с учетом остатков на конец корректируемого периода. Также, это может понадобиться в любом другом случае, когда контроль остатков необходимо ограничить (по умолчанию, контроль выполняется на конец всех последующих месяцев после корректируемого периода). Подробнее о необходимых изменениях ниже.
Если перепроведение будет приводить к изменению видов запасов или ГТД, могут возникать ошибки в документах, формирующих списание и поступление. Ошибка будет возникать в том случае, если при изменении вида запасов или ГТД, по исходным значениям существует отрицательный остаток по сумме регистров «РТО» и «ТО», сформированный более поздними документами текущего месяца. Так что, для корректного формирования резервов требуется предварительная отмена проведения документов.
Перед выполнением операции необходимо отключить контроль остатков по организациям на время сеанса. Также может потребоваться временное отключение контроля остатков по регистру накопления «Обеспечение заказов». В противном случае, если присутствуют документы перемещения или сборки товаров под обособленные заказы покупателей, система не позволит отменить их проведение. Для решения проблемы, необходимо закомментировать строку «Массив.Добавить(Движения.ОбеспечениеЗаказов);» в процедуре «СформироватьСписокРегистровДляКонтроля» модулей документов: «Перемещение товаров», «Сборка товаров».
После отмены проведения документов необходимо с помощью выше описанной внешней обработки удалить все сформированные резервы и сторно резервов. Напомню, движения по регистру «РТО» формируются как при проведении, так и при отмене проведения документов.
Далее, нужно вернуть контроль остатков по организациям, который мы отключали на время сеанса.
Примечание. Вообще, необходимо иметь в виду, что для корректной работы Интеркампани НЕЛЬЗЯ отключать контроль остатков по организациям. Записи в регистре «РТО» будут создаваться в любом случае, если заполнены настройки передач. Однако, если остатков будет недостаточно, документ проведется с созданием не корректных резервов. Исправить ситуацию можно будет только принудительным удалением резервов из внешней обработки, так как любые другие действия с документом будут строиться исходя из уже существующих не корректных записей в регистре «РТО».
Далее, нужно временно отключить контроль остатков по складам, так как могут возникнуть проблемы с доступностью товаров по складам при последовательном проведении (в том случае, если в системе присутствуют заказы покупателей с установленным действием для товаров «Отгрузить»).
Выполнив все выше перечисленные действия, можно последовательно проводить документы. В случае ошибки, нужно останавливаться и разбираться. При необходимости формировать «в ручную» дополнительную передачу, или добавить новую настройку в настройки передач. Возможно, придется оприходовать какой-либо товар.
Для уменьшения количества передач товаров, можно не отменять проведение документов, которые формируют только поступление товаров. Также, в первую очередь выполнить проведение документов, которые формируют списание и поступление, а потом всех остальных. В этом случае документы списания смогут использовать виды запасов и ГТД, которые поступили позже, в течение месяца. Если это не допустимо, необходимо проводить все документы последовательно.
После корректного проведения всех документов, остается создать передачи товаров по данным регистра «РТО». Создавать документы передачи можно отдельно по каждому распоряжению из формы «Передачи к оформлению»:
Также можно использовать обработку «Помощник формирования передач и выкупов товаров». На второй закладке помощника, в данном случае, необходимо указать способ подбора отправителей — «По настройкам передачи»:
Примечание. Если документы формирующие списание и поступление проводятся отдельно, может возникнуть ситуация, когда не будут созданы документы передачи по всем существующим резервам. Это нормально, так как помощник оперирует в первую очередь наличием отрицательных остатков, а не записями в регистре «РТО». Необходимо создать недостающие передачи дополнительно.
После создания всех документов передачи можно принудительно выполнить регламентированные задание «Свертка резервов товаров организаций» и проверить содержимое регистра «РТО». Если все выше описанные операции были выполнены корректно, регистр должен быть пустым. Дальше можно выполнить закрытие месяца и переходить к следующему периоду.
После выполнения всех действий следует не забыть включить контроль остатков по складам и раскомментировать строки в модулях документов: «Перемещение товаров», «Сборка товаров».
Описание механизма формирования резервов
Следующий раздел для тех, кто хочет разобраться глубже в центральном элементе подсистемы Интеркампани. В том, каким образом происходит формирование резервов, или понять, почему система сформировала те или иные записи в регистре «РТО» при проведении, либо отмене проведения документа.
Формирование резервов происходит в два этапа:
- Первый этап – при заполнении или перезаполнении видов запасов в документах списания (выполняется перед записью документов).
- Второй этап – во время проведенения или отмене проведения документов, после записи новых движений в базу.
Соответственно, первый этап выполняется только, если требуется заполнение или перезаполнение видов запасов. При проведении документов, которые формируют только списание товаров, выполняется только первый этап. Ниже таблица для более наглядного представления:
Виды документов | Операция | Первый этап | Второй этап |
Документы поступления | Проведение | V | |
Отмена проведения | V | ||
Документы списания |
Проведение, перепроведение с перезаполнением видов запасов | V | |
Отмена проведения | V | ||
Документы списания и поступления | Проведение, перепроведение с перезаполнением видов запасов | V | V |
Отмена проведения | V |
Формирование резервов на первом этапе
(Процедура в модуле документов) – определяется необходимость заполнения / перезаполнения или очистки видов запасов. Заполнение выполняется в следующих случаях:
- Проведения не проведенного документа
- Изменений в табличной части документа
- Изменение реквизитов документа: «Организация», «Дата», «НалогообложениеНДС»
- В случае установки параметра дополнительны свойств «ПерезаполнитьВидыЗапасов»
Дальнейшие операции происходят в общем модуле «ЗапасыСервер».
ЗаполнитьВидыЗапасовПоТоварамОрганизаций |
Точка входа из модулей документов.
СформироватьВТДоступныеВидыЗапасов |
Формируются доступные виды запасов по организации документа и по организациям, которые указаны в настройках передач в качестве поставщиков товаров, с учетом заданных отборов по видам запасов. Формируется ВТ «ДоступныеВидыЗапасов»
СохранитьИсходныеДвиженияТоваровИРезервов |
Выбираются исходные движения документа по регистрам «РТО» и «ТО», и помещаются в ВТ: «ДвиженияТоварыОрганизацийПередЗаписью», «ДвиженияРезервыТоварыОрганизацийПередЗаписью».
СформироватьВтОтборыОстатковПоТаблицеТоваров |
По данным документа и доступным видам запасов формируются возможные отборы остатков и сохраняются в ВТ «ВтОтборыОстатковОрганизаций«.
УстановитьБлокировкуРегистров |
Устанавливается исключительная блокировка на регистры «РТО», «РТ» и еще несколько регистров. Для отбора блокируемых записей используется ВТ «ВтОтборыОстатковОрганизаций«. Данные необходимо заблокировать, чтобы другие документы не могли использовать запасы с теми же отборами аналитик, что и в текущем документе.
СформироватьВТТоварыОрганизацийИзменения |
Создается пустая ВТ «ТоварыОрганизаций». Рассчитывается разница между данными ВТ «ДвиженияТоварыОрганизацийПередЗаписью» и «ТоварыОрганизаций». Результирующие данные помещаются в ВТ «ВТТоварыОрганизацийИзменения». По сути на первом этапе формирования резервов ВТ с изменениями содержим данные из ВТ «ДвиженияТоварыОрганизацийПередЗаписью» с отрицательным знаком.
СформироватьВТСторноРезервов |
Формируются записи сторно для дальнейшего формирования результирующих движений. Анализируются данные регистра «РТО» на наличие доступных резервов для сторнирования. Данные выбираются с отбором по ВТ «ВТТоварыОрганизацийИзменения». Сформированные данные помещаются в ВТ «ВТСторноРезервов».
Примечание. Здесь присутствует ошибка в типовом механизме. Записи сторно не должны формироваться для документов, которые делают списание и поступление товаров. Для таких документов записи сторно будут созданы на втором этапе расчета резервов.
(Ниже можно посмотреть необходимые доработки...)
СформироватьВТТаблицаОстатков |
В зависимости от параметра заполнения остатков «ИмяТаблицыОстатков» выбирается необходимая процедура. Для нашего случая, имя таблицы остатков — «ТоварыОрганизаций»
ТаблицаОстатковТоваровОрганизаций |
Формируется вспомогательная ВТ для расчета остатков: «ДвиженияДокумента», которая строится по временной таблице «ДвиженияТоварыОрганизацийПередЗаписью». Также, если существует ВТ «ВТСторноРезервов» ее записи добавляются к движениям документа.
ДополнитьЗапросКонтролемОстатковНаКаждыйМесяц |
Формируются запросы по остаткам на конец месяца текущего документа и на конец всех последующих месяцев до периода последней записи в регистре «ТО». Запросы по остаткам складываются из следующих данных:
- Данные по регистру «ТО» с текущим отбором аналитик (ВТ «ВТОтборыОстатковОрганизаций»).
- Данные по регистру «РТО» с текущим отбором аналитик(ВТ «ВТОтборыОстатковОрганизаций»).
- ВТ «ДвиженияДокумента» со знаком «-».
Каждый запрос помещается в отдельную ВТ с указанием периода в имени.
Формируются результирующие ВТ: «СгруппированныеОстатки» и «ТаблицаОстатков». При группировке выбирается минимальное значение остатка по всем месяцам контроля.
ЗаполнитьВидыЗапасовПоТаблицеОстатковСформироватьВТНовыеРезервы |
Создается ВТ «ВТНовыеРезервы» по данным документа и доступным остаткам согласно приоритетам. Новые резервы создаются в том случае, если нет доступных остатков запасов по организации документа.
ЗапросРаспределенияСУчетомПриоритетовТаблицыТоваровНаТаблицуОстатков |
Строиться ВТ «ВтОстатки», в которой остатки распределяются по приоритетам:
- Существующие виды запасов документа, если они есть.
- Виды запасов по организации документа за минусом тех, что выбраны в документе.
- Все доступные виды запасов других организаций.
Если необходимо реализовать собственный порядок организаций для подбора видов запасов, необходимо это делать именно здесь.
(Ниже можно посмотреть необходимые доработки...)
Данные текущего документа соединяются с ВТ «ВтОстатки». В результате получается распределение данных документа по доступным остаткам.
На основании таблицы распределения данных, формируется таблица с новыми резервами «ТаблицаНовыеРезервы».
РаспределитьРезервыТоваровОрганизацийПоПериодам |
Если контроль остатков выполняется за несколько месяцев, строится таблица с превышением остатка каждого месяца над минимальным остатком по всем месяцам. Если превышение равно нулю в первом месяце, период нового резерва не изменяется. Если в более поздних месяцах превышение становится меньше (то-есть уменьшается доступный остаток), новые резервы переносятся на более поздние периоды.
Пример: новый резерв = 3
Месяцы контроля остатков | Доступный остаток | Превышение мин. остатка | Распределенный резерв |
Январь | 2 | 1 | 2 |
Февраль | 1 | 0 | 1 |
Март | 3 | 2 | 0 |
На основании распределенных или не распределенных (если контроль выполняется только по корректируемому месяцу) резервов, формируется ВТ «ВТНовыеРезервы».
ТаблицаРезервыТоваровОрганизаций |
Формируются результирующее данные по резервам. Складывается информация ВТ: «ВТСторноРезервов», «ВТНовыеРезервы» и исходные движения документа по регистру «РТО» в случае, если документ формирует только списание товаров. Сформированная таблица помещается в дополнительные свойства документа для последующего использования на втором этапе расчета резервов или записи в регистр «РТО».
Формирование резервов на втором этапе
ЗапасыСервер.ПодготовитьЗаписьТоваровОрганизаций |
Выполняется прерывание процедуры, если для документа не должен выполнятся расчет резервов на втором этапе.
СохранитьИсходныеДвиженияТоваровИРезервов |
Выбираются исходные движения документа по регистрам «РТО» и «ТО», и помещаются в ВТ: «ДвиженияТоварыОрганизацийПередЗаписью», «ДвиженияРезервыТоварыОрганизацийПередЗаписью». Если расчет резервов уже выполнялся на первом этапе, эти ВТ уже существуют и не перезаполняются.
Формируется ВТ «ТоварыОрганизаций» по движениям текущего документа по регистру «ТО».
СформироватьВТТоварыОрганизацийИзменения |
Рассчитывается разница между данными ВТ «ДвиженияТоварыОрганизацийПередЗаписью» и «ТоварыОрганизаций». Результирующие данные помещаются в ВТ «ВТТоварыОрганизацийИзменения».
СформироватьВТДоступныеВидыЗапасов |
Формируются доступные виды запасов по организации, в том случае, если они не были сформированы на первом этапе расчета резервов.
УстановитьДопСвойстваКонтролироватьОстаткиИФормироватьСторно |
По данным ВТ «ВТТоварыОрганизацийИзменения» определяются и устанавливаются параметры дополнительных свойств документа: «НужноКонтролироватьОстаткиТоваровОрганизаций», «НужноФормироватьСторноПоРезервамТоваровОрганизаций». Если изменения в большую сторону, необходимо формировать сторно, если в меньшую – проконтролировать остатки.
ЗапасыСервер.СформироватьРезервыПоТоварамОрганизаций |
Выполняется прерывание процедуры, если для документа не должен выполнятся расчет резервов на втором этапе.
СформироватьВТСторноРезервов |
Действие выполняется в случае установленного параметра дополнительных свойств «НужноФормироватьСторноПоРезервамТоваровОрганизаций».
Выполняются действия, аналогичные расчету на первом этапе. Анализируются данные регистра «РТО» на наличие доступных резервов для сторнирования. Данные выбираются с отбором по ВТ «ВТТоварыОрганизацийИзменения».
Отличие в том, что на втором этапе ВТ «ВТТоварыОрганизацийИзменения» содержит именно изменения по регистру «ТО» относительно первоначальных данных. Напомню, на первом этапе данная ВТ содержит данные регистра «ТО» до проведения.
СформироватьРезервыПоОрганизациямДляКонтроля |
Действие выполняется в случае установленного параметра дополнительных свойств «НужноКонтролироватьОстаткиТоваровОрганизаций».
ОрганизацииДляКонтроляОстатков |
По данным ВТ «ВТТоварыОрганизацийИзменения» определяется список организаций для контроля.
Выполняется обход всех организаций для контроля. Все ниже перечисленные действия выполняются для каждой организации и формируется результирующая таблица значений «ТаблицаРезервыПоОрганизациямДляКонтроля».
В случае, если ВТ «ВТДоступныеВидыЗапасов» была сформирована ранее по нескольким организациям, она переформировывается по каждой, и заново создается ВТ «ВтОтборыОстатковОрганизаций».
СформироватьВТТаблицаОстатков >> ТаблицаОстатковТоваровОрганизаций |
Формируется вспомогательная ВТ для расчета остатков: «ДвиженияДокумента», которая строится по данным временных таблиц «ДвиженияТоварыОрганизацийПередЗаписью» и «ВТСторноРезервов». Также, если расчет резервов происходит в два этапа, добавляются резервы, рассчитанные на первом этапе, (если используется второй этап расчета резервов, движения по регистру «РТО» не записываются вместе с остальными движениями).
ДополнитьЗапросКонтролемОстатковНаКаждыйМесяц |
Формируются данные по остаткам по каждому месяцу контроля, начиная с месяца проведения документа, оканчивая месяцем последнего движения по регистру «ТО».
Формируются результирующие ВТ: «СгруппированныеОстатки» и «ТаблицаОстатков».
ЗапросРаспределенияРезервовПоТаблицеОстатков |
Формируются запросы по ВТ «ТаблицаОстатков». В первом запросе выбираются отрицательные остатки, которые необходимо покрыть резервами. В другом – доступные остатки для покрытия.
РаспределитьНовыеРезервыПоТаблицеОстатков |
По данным полученных таблиц: «ТаблицаРаспределения» и «ОстаткиКРаспределению» формируются новые резервы. Если доступных остатков не хватает для покрытия резервов добавляется запись в таблицу ошибок.
РаспределитьРезервыТоваровОрганизацийПоПериодам |
При необходимости, резервы распределяются по периодам аналогично расчету на первом этапе.
Новые резервы добавляются к таблице значений «ТаблицаРезервыПоОрганизациямДляКонтроля».
Если таблица ошибок не пустая, формируется сообщение об ошибке. Если включен контроль остатков по организациям устанавливается параметр отмены проведения документа:
По данным таблицы значений «ТаблицаРезервыПоОрганизациямДляКонтроля» формируется ВТ «ВТРезервыПоОрганизациямДляКонтроля».
ТаблицаРезервыТоваровОрганизаций |
Формируются результирующее данные по резервам. Складывается информация ВТ: «ВТСторноРезервов», «ВТРезервыПоОрганизациямДляКонтроля», исходные движения документа по регистру «РТО» и результат расчета резервов на первом этапе.
Сформированная таблица записывается в регистр «РТО».
Исправления и доработка типовых механизмов
Исправление обработки «Помощник формирования передач и выкупов товаров»
Исправления необходимы для случая, если обработка используется для исправления остатков без применения механизмов Интеркампани, и ведется учет по ГТД. По умолчанию, обработка подбирает доступные остатки с отбором по ГТД, а необходимо, чтобы подбирались все доступные остатки, и потом сворачивались по пустому значению ГТД.
Для решения проблемы, необходимо установить флаг параметров дополнения запроса остатков «ЕстьОтборПоНомеруГТД» в значение «Ложь». Также установить значение для всех ГТД в полученных остатках – «ПустаяСсылка()», и дополнительно сгруппировать остатки. Текст запроса с изменениями смотрите ниже:
Текст исправленного запроса
Все исправления необходимо выполнять для варианта формирования документов с подбором Отправителей «По указанным приоритетам» (случай, когда не используется механизм Интеркампани).
Добавленный код в процедуре «СоздатьДокументыПоПериоду»
Найдена ошибка в работе обработки! При проведении сформированных документов передачи – теряются документы сформированные по организации с последним приоритетом. Для решения проблемы, в процедуре менеджера обработки «ЗаписатьДокументы», в случае отсутствия строк в документе, необходимо не прерывать выполнение обработки, а продолжать выполнение дальше, для следующих документов.
Исправленная функция «ЗаписатьДокументы»
Исправление даты анализа и контроля остатков для формирования резервов и передач товаров
По умолчанию, анализ и контроль остатков для расчета резервов происходит на последнюю дату формирования движений по регистру «ТО». По каким либо причинам это может быть не нужно — например выполняется исправление остатков без отмены проведения документов, или просто необходимо исключить проверку остатков в будущих периодах. В этом случае, можно реализовать анализ и контроль остатков только на конец корректируемого месяца.
ЗапасыСервер >> ДополнитьЗапросКонтролемОстатковНаКаждыйМесяц – задать значение параметра «ПараметрыДополнения.ОкончаниеПериодаКонтроля» перед вызовом процедуры «ДополнитьЗапросКонтролемОстатковНаКаждыйМесяц» — установить минимальную дату остатков:
Добавление в коде процедуры «ТаблицаОстатковТоваровОрганизаций»
ЗапасыСервер >> ДобавитьКонтрольПоТоварамОрганизаций – исключить все проверки по месяцам, кроме месяца текущего документа:
Исправления в коде процедуры
МенеджерФормированиеПередачТоваровМеждуОрганизациямиИВыкупов >> СоздатьДокументыПоПериоду – задать значение для параметра запроса «КонецПериода» — установить конец периода, указанного в настройках (данный параметр влияет только на выборку данных из регистра «РТО»):
При подборе видов запасов для формирования резервов в типовом механизме нельзя установить порядок, в котором товары будут подбираться с разных организаций. Для решения этой проблемы необходимо:
В типовом механизме, при расчете резервов на первом этапе, в случае, если документ формирует списание и поступление товаров, ошибочно создаются записи сторно. Записи будут задублированы на втором этапе расчета. Соответственно, необходимо исключить документы, которые делают поступление и списание из процедуры формирования сторно на первом этапе расчета резервов. Для этого в процедуре «ЗапасыСервер >> ЗаполнитьВидыЗапасовПоТоварамОрганизаций» необходимо поставить дополнительное условие на выполнение процедуры формирования сторно «СформироватьВТСторноРезервов»: