Часто при анализе отчетов в конфигурации Управление торговлей 10.3 пользователи сталкиваются с тем, что показатели валовой прибыли отображаются с отрицательным знаком, особенно если в документах используется валюта, отличная от валюты управленческого учета. Давайте разберем, почему это происходит и как правильно диагностировать причину.
Первое, что нужно осознать: в регистрах накопления Продажи и ПродажиСебестоимость данные всегда хранятся в одной валюте — валюте управленческого учета, которая задана в настройках параметров учета. Когда вы оформляете документ в долларах (USD), система при проведении документа автоматически пересчитывает суммы в валюту учета по курсу на дату операции. Таким образом, отчет не «считает или не считает USD», он оперирует уже приведенными к единой валюте данными.
Если в отчете вы видите «минуса», это означает, что система зафиксировала выручку, но не нашла соответствующей ей себестоимости, либо себестоимость оказалась нулевой. Рассмотрим основные причины возникновения такой ситуации:
Партии товаров на складах.Чтобы понять, где именно «теряются» данные или почему они двоятся, выполним следующие шаги:
Партии товаров на складах. Если в движениях по этому регистру сумма списания (себестоимость) равна нулю, значит, система «не видит» прихода товара.Ведомость по партиям товаров за нужный период в разрезе проблемной номенклатуры. Это позволит увидеть, были ли приходы по этому товару и корректно ли они распределились.После того как мы выяснили, что проблема кроется в данных, а не в коде отчета, перейдем к исправлению:
1. Перепроведение документов:
В Управление торговлей 10.3 критически важно соблюдение временной последовательности. Запустите обработку «Проведение по партиям» за период, в котором возникла ошибка. Это позволит системе правильно «подтянуть» себестоимость из документов поступления к документам реализации.
2. Проверка корректности закупочных цен:
Если в документах поступления не указаны цены или они нулевые, себестоимость всегда будет нулевой. Проверьте документы поступления (Поступление товаров и услуг), которые предшествуют реализации.
3. Анализ запроса в Универсальном отчете:
Если вы используете Универсальный отчет, убедитесь, что вы не пытаетесь суммировать валютные суммы напрямую. В запросе обязательно должно присутствовать условие связи по регистратору и номенклатуре. Если необходимо вывести прибыль в USD, вы должны использовать таблицу КурсыВалют для приведения себестоимости (которая хранится в рублях) к валюте сделки на дату документа.
Пример логики для запроса может выглядеть так:
// Пример концептуальной логики запроса:
ВЫБРАТЬ
ПродажиОбороты.Номенклатура,
ПродажиОбороты.СтоимостьОборот КАК ВыручкаУпрВалюта,
ПродажиСебестоимостьОбороты.СтоимостьОборот КАК СебестоимостьУпрВалюта,
(ПродажиОбороты.СтоимостьОборот - ПродажиСебестоимостьОбороты.СтоимостьОборот) КАК Прибыль
ИЗ
РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты
ЛЕВОЕ СОЕДИНЕНИЕ
РегистрНакопления.ПродажиСебестоимость.Обороты КАК ПродажиСебестоимостьОбороты
ПО
ПродажиОбороты.Регистратор = ПродажиСебестоимостьОбороты.Регистратор
Если после перепроведения документов данные в отчете все еще выглядят странно, внимательно изучите движения документа: обратите внимание, нет ли «двоения» записей. Иногда при некорректных корректировках регистров или ручных правках в базу попадают дублирующие записи, которые искажают итоговые суммы. Рекомендуем сначала добиться чистоты данных в регистрах партий, и только потом приступать к доработке самого отчета.