В процессе работы с программой 1С:Бухгалтерия 3.0 бухгалтеры и технические специалисты часто сталкиваются с досадной ошибкой при попытке провести документ «Корректировка реализации». Программа выдает служебное сообщение: «Было реализовано на ед. меньше, чем возвращается». На первый взгляд сообщение кажется логичным — система защищает нас от возврата товара, который не отгружался. Однако на практике эта ошибка часто оказывается «псевдоошибкой», возникающей даже тогда, когда все количественные показатели в норме.
В этой статье мы подробно разберем, почему возникает этот сбой, проанализируем внутренние механизмы работы программы и рассмотрим проверенные способы решения проблемы — от простых пользовательских манипуляций до глубокой технической настройки аналитики.
Движение товаров за период (контроль остатков) поможет быстро выявить отрицательные остатки, которые часто становятся корнем проблемы.
Прежде чем приступать к исправлению, давайте проанализируем ситуацию. Основная причина кроется в алгоритме проведения документа. При проведении корректировки система выполняет запрос к регистрам (в частности, к регистру Хозрасчетный и регистрам накопления НДС), чтобы проверить остаток отгруженного товара по конкретной партии и конкретной аналитике за определенный период.
Рассмотрим основные факторы, которые сбивают программу с толку:
Сторно по той же номенклатуре, запрос программы может некорректно «схлопнуть» обороты.41.01 или 10.02 (например, замена подразделения на склад) приводит к тому, что старые партии перестают соответствовать новым правилам учета.Проанализируем самый распространенный случай — несоответствие подразделений. Часто при программном заполнении реквизиты в «шапке» документа и в таблице проводок различаются.
Выполним следующие шаги:
Реализация (акт, накладная).Аналогично проверим ситуацию с переходом между версиями КОРП и ПРОФ. Если ранее на счете 10.02 вторым субконто было Подразделение, а стало Склад, система не сможет сопоставить данные. В этом случае потребуется либо ручная правка движений, либо приведение аналитики к единому стандарту.
Иногда ошибка возникает из-за временного «зависания» итогов в регистрах. Рассмотрим алгоритм действий, который помогает «протолкнуть» документ без изменения кода:
Если вы работаете с документом Отчет о розничных продажах, механизм проверки работает иначе. В табличной части возвратов могут быть указаны номер и дата чека. Проанализируем ситуацию: если данные чека не совпадают с фактическими записями в базе или были введены вручную с ошибкой, система выдаст отказ.
Попробуем решение: Удалим из таблицы возврата информацию о номере и дате чека, оставив только номенклатуру и количество. После этого документ часто проводится без проблем.
Если стандартные методы не помогают, а корректировку нужно провести «здесь и сейчас», воспользуемся механизмом ручной правки. Однако тут есть нюанс: кнопка «Ручная корректировка» доступна только в проведенном документе. Как же быть, если он не проводится?
Разберем последовательность действий:
Корректировка реализации временно изменим количество возвращаемого товара на «0» или на минимальное значение, которое система позволяет провести.41 или 90).Проанализируем, как система формирует запрос для проверки остатков. В типовых конфигурациях за это отвечает запрос, который собирает данные по временным таблицам. Проблема часто кроется в следующем участке логики:
// Пример логики запроса в коде
Запрос.УстановитьПараметр("НачТекущегоМесяца", НачалоМесяца(Реквизиты.Период));
// Далее происходит соединение оборотов только по партии без учета конкретного документа-основания
Из-за того, что 1С устанавливает параметр НачалоМесяца и делает соединение только по партии, возникает коллизия: если в одном месяце было несколько отгрузок одной и той же партии, система «схлопывает» их и не может выделить конкретную реализацию для корректировки. В таких случаях помогает объединение строк в исходном документе реализации, чтобы минимизировать количество записей по одной партии в одном периоде.
Посмотрим на проблему шире. Помимо вышеперечисленного, стоит обратить внимание на:
КлючСвязи) будут заполнены корректно и связь между строками не разорвется.Таким образом, мы выяснили, что ошибка «Было реализовано на ед. меньше...» — это чаще всего следствие несоответствия аналитики или особенностей работы запросов в конкретном релизе программы. Используя предложенные методы, вы сможете успешно провести документ и выровнять учетные данные.