Полнота движений по себестоимости в УТ 11.4
Столкнулся с тем, что документ возврата товара от клиента в случае, если он происходит при отрицательных остатках по товару, не делает движений по себестоимости. В итоге по себестоимости расхождение по остаткам с остатками по товарам на складах.
Решил проверить, это единичный случай, или есть еще какие-то случаи, когда по себестоимости количество отличается от количества по товарам на складах. Можно было взять готовый отчет сравнения регистров на Инфостарт:
Но не уверен был, что там именно то, что мне нужно и решил написать запрос самому:
ВЫБРАТЬ
Т.Регистратор КАК Регистратор,
Т.Регистратор.Статус КАК Статус,
Т.Номенклатура КАК Номенклатура,
Т.Характеристика КАК Характеристика,
Т.ВНаличииОборот КАК КоличествоПоДвижениям,
ЕСТЬNULL(С.КоличествоОборот, 0) КАК КоличествоПоСебестоимости
ИЗ
РегистрНакопления.ТоварыНаСкладах.Обороты(, , Регистратор, ) КАК Т
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СебестоимостьТоваров.Обороты(, , Регистратор, ) КАК С
ПО (Т.Номенклатура = С.АналитикаУчетаНоменклатуры.Номенклатура)
И (Т.Характеристика = С.АналитикаУчетаНоменклатуры.Характеристика)
И (Т.Регистратор = С.Регистратор)
ГДЕ
Т.ВНаличииОборот <> ЕСТЬNULL(С.КоличествоОборот, 0)
УПОРЯДОЧИТЬ ПО
Т.Регистратор.Дата УБЫВ
К моему удивлению, получил всего один возврат клиента и порядка 50 чеков, не свернутых в ОРП:
Учитывая, что возврат всего один за большой период времени, я решил не исправлять этот момент в коде, а просто передвинул возврат по дате до возникновения отрицательного остатка:
А вот со сверткой чеков пришлось повозиться.
Проверил на примере 5 марта 2023, там было 3 кассовые смены:
Обработка «Архивирование и удаление чеков» за 5 марта 2023 не работает:
Получаю ошибку:
Надо по-другому — из чека выхожу на кассовую смену:
Нажимаю «Перезаполнить отчет о розничных продажах» — не работает. Потому что смена открыта:
С помощью универсального редактора меняю статус на «Закрыта». А также обязательно «Окончание кассовой смены» (иначе ОРП будет пытаться создаться на 1 января 0001 года).
После этого откроется созданный ОРП и можно нажимать «Заархивировать чеки ККМ».
Таким нехитрым образом можно свернуть все чеки.
С одной кассовой сменой была ошибка: «По кассовой смене зарегистрировано несколько аналитик. Создание отчета о розничных продажах невозможно»
Причину смотрел вручную в этом месте:
В табло добавил выражение по временной таблице ИндексАналитик: Запрос.МенеджерВременныхТаблиц.Таблицы[3].ПолучитьДанные().Выгрузить(). Обнаружил, что чеки по разной системе налогообложения. Видимо, ошибочно:
Вывожу для кассовой смены связанные документы:
Обнаруживаю, что только в одном чеке стоит «Продажа не облагается НДС»:
Меняю в чеке налогообложение. После этого свертка в ОРП происходит.
Запрос оформил в виде отчета и поставил его рассылку раз в неделю через штатный механизм рассылки отчетов. Так пользователь будет следить за соответствию движений по себестоимости и складам:
Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке(СтандартныеПодсистемыСервер.ВерсияБиблиотеки()); Заголовок = НСтр("ru = 'Проверка расхождения себестоимости с остатками'"); ПараметрыРегистрации.Информация = Заголовок; ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительныйОтчет(); ПараметрыРегистрации.Версия = "2023-09-11"; ПараметрыРегистрации.БезопасныйРежим = Ложь; //Истина для фреша Команда = ПараметрыРегистрации.Команды.Добавить(); Команда.Представление = Заголовок; Команда.Идентификатор = СтрЗаменить(Заголовок, " ", ""); Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы(); Команда.ПоказыватьОповещение = Ложь; Возврат ПараметрыРегистрации; КонецФункции
Среда: 11.4.13.46 Объем: 2 час
Свежие комментарии