Обработка проставления документов партии в «Возврат товара от покупателя»
Обработка не является готовым решением и создавалась для эксперимента. Не применяйте на рабочей базе без проверки результатов.
Обработка автоматически проставляет документы партии в документы "Возврат товара от покупателя".
Имеется возможность настройки — какие документы должны искаться как документ-партия.
Необходимость обработки возникла в связи с некорректным заполнением документов, из-за чего не работали некоторые встроенные функции конфигурации.
Обработка создавалась для Комплексной Автоматизации 1.1.*.*.
Какой алгоритм по подбору партий? Есть ли возможность исправить автоматически, если был введен документ задним числом?
(1) anig99,
Алгоритм очень прост. Запрос ищет документы, ближайшие по дате, в которых присутствует та же номенклатура с такой же ценой. В обработке можно выбрать какой тип документа партии нужно искать.
Если документ партии введен задним числом, то данная обработка его не найдет.
(2) просто документы или по какому-то регистру?
(2) просто если тупо подбирается ближайший документ, то тогда это неверно, т.к. возможна ситуация когда возврат №1 вернет из реализация №1 100 единиц товара, в реализации №1 будет всего 100 единиц. Потом будет возврат №2 и ближайшим к нему снова окажется документ Реализация №1 и возврат №2 попытается вернуть товар оттуда… Только при проведении 1с скажет ФИГ! Т.к. она контролирует обороты и остатки по регистрам.
(4) anig9,
Спасибо за замечание, Вы абсолютно правы. Сейчас выложу обновленную версию обработки.
Переработал анализ.
По поводу анализа регистров: дело в том, что у заказчика вообще были неправильно заполнены документы, в которых указывалась партия и т.д. Соответственно регистры не заполнены. Анализ их нельзя выполнить.
В обработку добавил условия, с помощью которых исключается возможность выхода в минус.
Обработку до этого тестировал на действующей базе, в минус ничего не ушло. Видимо повезло, и документы встали как надо =)
(4) 1с не контролирует возвраты по партиям, т.е. при указании конкретного документа реализации, 1с не проверит сколько там было продано, а тупо все туда внесет, а вот потом в отчеты, вы увидите отрицательные средневзвешенные. Так во всяком случае в УТ, поэтому приходилось проверять обороты по контрагенту, + к тому же, если усть два документа реализации на 100 ед в каждом, а возврат идет на 150, то надо было разбивать на две строки, ну и подставлять соответствующие цены из реализации, если они не установлены.
(5)алгоритм очень прост в принципе, 20 строк кода…
(6) в УПП контролирует. А возможно просто где-то есть галочка «поставил и забыл». У меня по крайней мере ругается и не делает движения по партиям и проводкам, если возвращается товара больше, чем продали.