Себестоимость товара в 1С УТ 11 появляется не в момент продажи, а после закрытия месяца: реализация записывает количество и выручку, а стоимость проданного товара досчитывает расчёт себестоимости. Поэтому валовая прибыль за текущий месяц обычно равна выручке. Ниже — где смотреть себестоимость, откуда она берётся, почему бывает нулевой или скачет и как вывести её в свой отчёт, печатную форму или список документов.
Названия даны по УТ 11.4 и КА 2.5; в УТ 11.5 и ERP 2.5 механизм устроен так же.
Как посмотреть себестоимость в 1С без программиста: откройте отчёт «Продажи» — в конфигураторе он называется ВыручкаИСебестоимостьПродаж. Себестоимость и валовая прибыль — в его вариантах. Остатки и движение стоимости показывает отдельный отчёт «Себестоимость товаров» (в УТ 11.4 объект АнализСебестоимостиТоваровРасширенный, в КА 2.5 — СебестоимостьТоваров).

| Отчёт и вариант | Где найти | Что показывает |
|---|---|---|
| «Продажи»: «Валовая прибыль предприятия», «Валовая прибыль организаций» | «Продажи» → «Отчеты по продажам»; «Финансовый результат и контроллинг» → «Отчеты по финансовому результату» | Выручка, себестоимость, валовая прибыль и рентабельность по подразделениям, менеджерам, товарам |
| «Продажи»: «Валовая прибыль по клиентам…», «…по поставщикам» | Там же | То же по клиентам, заказам и поставщикам |
| «Себестоимость товаров» | «Финансовый результат и контроллинг» → «Отчеты по финансовому результату» | Остатки, приход и расход в количестве и сумме, цена поступления, средняя цена |
| «Выручка и себестоимость розничных продаж» | «Продажи» → «Отчеты по продажам» | Валовая прибыль магазинов и по поставщикам |
| «Прибыль по оплате отгрузок» | Там же | Прибыль только по оплаченным отгрузкам |
В документах: заказ клиента — «Отчеты» → «Продажи по заказу», карточка товара — «Продажи номенклатуры», заказ и реализация — «Оценка рентабельности продажи». Последний отчёт оценочный: считает по рассчитанной себестоимости или по нормативному виду цен, выбор задаётся в «НСИ и администрирование» → «Настройка НСИ и разделов» → «Продажи», группа «Оптовые продажи», блок «Стоимость товаров при оценке рентабельности продажи».

Перед сравнением цифр проверьте параметр «Данные продаж» (в «Себестоимости товаров» — «Данные по себестоимости»): с НДС или без, в валюте упр. или регл. учёта. Варианты «…предприятия» выводят «сквозную» себестоимость по предприятию в целом, «…организаций» — по каждому юрлицу.
| Объект | Что в нём |
|---|---|
Регистр накопления «Выручка и себестоимость продаж» (ВыручкаИСебестоимостьПродаж, обороты) | Продажи и возвраты: количество, выручка, стоимость, доп. расходы |
Регистр накопления «Себестоимость товаров» (СебестоимостьТоваров, остатки) | Стоимость запасов; как вывести её рядом с остатком — в статье об остатках товаров на складе |
Регистр сведений «Стоимость товаров» (СтоимостьТоваров, по месяцам) | Стоимость единицы за месяц |
| Документ «Расчет себестоимости товаров» | Создаётся закрытием месяца, датирован его концом; признак «Предварительный расчет» |
| Регистр сведений «Задания к расчету себестоимости» | Что изменилось после расчёта и требует пересчёта |
При проведении реализации в регистр продаж попадают количество и выручка, а стоимость остаётся нулевой. Исключение — комиссионный товар: его себестоимость сразу равна выручке, и прибыль по нему нулевая.
В 1С УТ себестоимость товара рассчитывает обработка «Закрытие месяца» («Финансовый результат и контроллинг» → «Закрытие месяца»). Она создаёт документ «Расчет себестоимости товаров» и дописывает строки со стоимостью прямо в движения каждого документа продажи — у них включён реквизит РасчетСебестоимости. Перепроведённый после этого документ регистрирует задание к пересчёту, и месяц приходится закрывать снова.

Сумму определяет «Метод оценки стоимости товаров» в учётной политике организации. При «Средней за месяц» продажи месяца получают среднюю стоимость единицы по организации, складу и виду запасов. При «ФИФО (взвешенная оценка)» и «ФИФО (скользящая оценка)» она зависит от списанных партий и у двух продаж одного месяца может различаться.
Расчёт идёт, только если включён учёт себестоимости: в УТ 11.5 это флажок «Учет себестоимости товаров ведется с» и дата («Настройка НСИ и разделов» → «Финансовый результат и контроллинг» → группа «Учет товаров»). Продажи до этой даты (кроме месяца ввода остатков) остаются без себестоимости. Партионный учёт (в УТ 11.4 — опция «Использовать партионный учет») добавляет аналитику партий, из неё берётся поставщик товара.

Оценку до конца месяца даёт предварительный расчёт. В УТ 11.4 для него есть регламентное задание «Расчет предварительной себестоимости товаров» (в поставке выключено): документ расчёта получает признак «Предварительный расчет», а типовые отчёты умножают количество на стоимость единицы из регистра сведений «Стоимость товаров». В УТ 11.5 (с версии 11.5.7), КА 2.5 и ERP 2.5 в закрытии месяца есть режим «Предварительное закрытие» на дату внутри месяца: стоимость пишется в регистры с реквизитом «Режим закрытия месяца», а окончательное закрытие дописывает отклонения.
| Что видно | Причина | Что сделать |
|---|---|---|
| Себестоимость 0, прибыль равна выручке | Месяц не закрыт, предварительного расчёта не было | Закрыть месяц |
| Изменилась себестоимость закрытого месяца | Перепровели документы этого или более раннего месяца и закрыли месяц заново | Закрывать сданный период датой запрета изменения |
| Ноль у отдельных товаров | Поступление без цены, излишки без стоимости, продажа при отрицательном остатке | Проверить «Цену поступления» в «Себестоимости товаров» |
| Цена единицы меняется от месяца к месяцу | Меняются закупочные цены, при ФИФО — партии; доставку распределили позже; возвраты | Разложить по месяцам запросом ниже |
| По комиссионному товару прибыль ноль | Себестоимость равна выручке | Это не ошибка |
| Разные цифры в двух отчётах | Разные «Данные продаж» или «предприятие» против «организаций» | Сравнивать с одинаковыми настройками |
Если расчёт завершился с ошибкой, начните с его протокола в закрытии месяца. Где разошлись данные, покажут отчёты «Сверка данных партионного учета и себестоимости» (профиль «Администратор», включённый партионный учёт) и «Сверка остатков оперативного учета и себестоимости».
Для своего отчёта по себестоимости в 1С на СКД источник — виртуальная таблица оборотов регистра «Выручка и себестоимость продаж». Ниже текст набора данных: выручка, закупка, доп. расходы, себестоимость и валовая прибыль. Проверить его удобно в бесплатной консоли запросов.
// Отчет на СКД «Себестоимость продаж и валовая прибыль»: текст набора данных «Запрос».
// УТ 11.4-11.5, КА 2.5, ERP 2.5. Суммы - в валюте упр. учета без НДС.
// Параметры: НачалоПериода, КонецПериода. Себестоимость появляется после закрытия месяца
// (в УТ 11.5, КА 2.5, ERP 2.5 - и после предварительного закрытия).
ВЫБРАТЬ РАЗРЕШЕННЫЕ
Продажи.Период КАК Месяц,
Продажи.АналитикаУчетаПоПартнерам.Организация КАК Организация,
Продажи.АналитикаУчетаПоПартнерам.Партнер КАК Клиент,
Продажи.Менеджер КАК Менеджер,
Продажи.АналитикаУчетаНоменклатуры.МестоХранения КАК Склад,
Продажи.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
Продажи.АналитикаУчетаНоменклатуры.Характеристика КАК Характеристика,
Продажи.ТипЗапасов КАК ТипЗапасов,
Продажи.КоличествоОборот КАК Количество,
Продажи.СуммаВыручкиБезНДСОборот КАК Выручка,
// стоимость закупки; трудозатраты и постатейные затраты бывают у продукции в КА и ERP
Продажи.СтоимостьБезНДСОборот
+ Продажи.ТрудозатратыОборот
+ Продажи.ПостатейныеПостоянныеБезНДСОборот
+ Продажи.ПостатейныеПеременныеБезНДСОборот КАК СтоимостьЗакупки,
// доставка, таможня и другие доп. расходы, распределенные на товар
Продажи.ДопРасходыБезНДСОборот КАК ДопРасходы,
Продажи.СтоимостьБезНДСОборот
+ Продажи.ТрудозатратыОборот
+ Продажи.ПостатейныеПостоянныеБезНДСОборот
+ Продажи.ПостатейныеПеременныеБезНДСОборот
+ Продажи.ДопРасходыБезНДСОборот КАК Себестоимость,
Продажи.СуммаВыручкиБезНДСОборот
- Продажи.СтоимостьБезНДСОборот
- Продажи.ТрудозатратыОборот
- Продажи.ПостатейныеПостоянныеБезНДСОборот
- Продажи.ПостатейныеПеременныеБезНДСОборот
- Продажи.ДопРасходыБезНДСОборот КАК ВаловаяПрибыль
// условие: без продаж между своими организациями и без услуг
ИЗ
РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(
&НачалоПериода,
&КонецПериода,
Месяц,
АналитикаУчетаПоПартнерам.Партнер <> ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
И НЕ ТипЗапасов В (ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Услуга),
ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.АгентскаяУслуга))) КАК Продажи
АналитикаУчетаПоПартнерам и АналитикаУчетаНоменклатуры, поэтому поля берутся через точку.СуммаВыручкиБезНДС против СтоимостьБезНДС. С НДС — СуммаВыручки, Стоимость, ДопРасходы; для регл. учёта — ресурсы с окончанием Регл.ТипЗапасов. Возвраты идут со знаком минус.В схеме добавьте параметр Период типа «Стандартный период», задайте НачалоПериода и КонецПериода выражения &Период.ДатаНачала и &Период.ДатаОкончания и опишите ресурсы:
| Поле | Выражение ресурса |
|---|---|
| Количество, Выручка, СтоимостьЗакупки, ДопРасходы, Себестоимость, ВаловаяПрибыль | Сумма(<поле>) |
| Рентабельность (вычисляемое поле) | ВЫБОР КОГДА Сумма(Выручка) = 0 ТОГДА 0 ИНАЧЕ Сумма(ВаловаяПрибыль) / Сумма(Выручка) * 100 КОНЕЦ |
| СебестоимостьЕдиницы (вычисляемое поле, рассчитывать по Номенклатура, Характеристика) | ВЫБОР КОГДА Сумма(Количество) = 0 ТОГДА 0 ИНАЧЕ Сумма(Себестоимость) / Сумма(Количество) КОНЕЦ |
Как подключить такой отчёт без изменения конфигурации — в статье про внешний отчёт 1С.
Себестоимость номенклатуры в 1С за месяц — это себестоимость продаж, делённая на проданное количество. Запрос раскладывает её на закупку и доп. расходы и отмечает, есть ли окончательный расчёт: сразу видно, выросла закупка, добавилась доставка или месяц просто не закрыт.
// Себестоимость единицы товара по месяцам: закупка, доп. расходы и состояние расчета.
// Параметры: Номенклатура, НачалоПериода, КонецПериода. УТ 11.4-11.5, КА 2.5, ERP 2.5.
ВЫБРАТЬ РАЗРЕШЕННЫЕ
Продажи.Период КАК Месяц,
Продажи.АналитикаУчетаПоПартнерам.Организация КАК Организация,
СУММА(Продажи.КоличествоОборот) КАК Количество,
СУММА(Продажи.СтоимостьБезНДСОборот) КАК СтоимостьЗакупки,
СУММА(Продажи.ДопРасходыБезНДСОборот) КАК ДопРасходы
ПОМЕСТИТЬ ВТПродажи
ИЗ
РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(
&НачалоПериода,
&КонецПериода,
Месяц,
АналитикаУчетаНоменклатуры.Номенклатура = &Номенклатура
И ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)) КАК Продажи
СГРУППИРОВАТЬ ПО
Продажи.Период,
Продажи.АналитикаУчетаПоПартнерам.Организация
;
////////////////////////////////////////////////////////////////////////////////
// Месяцы с окончательным (не предварительным) расчетом себестоимости
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
НАЧАЛОПЕРИОДА(Расчет.Ссылка.Дата, МЕСЯЦ) КАК Месяц,
Расчет.Организация КАК Организация
ПОМЕСТИТЬ ВТРасчеты
ИЗ
Документ.РасчетСебестоимостиТоваров.Организации КАК Расчет
ГДЕ
Расчет.Ссылка.Проведен
И НЕ Расчет.Ссылка.ПредварительныйРасчет
И Расчет.Ссылка.Дата МЕЖДУ &НачалоПериода И КОНЕЦПЕРИОДА(&КонецПериода, МЕСЯЦ)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Продажи.Месяц КАК Месяц,
Продажи.Организация КАК Организация,
Продажи.Количество КАК Количество,
ВЫБОР
КОГДА Продажи.Количество = 0
ТОГДА 0
ИНАЧЕ ВЫРАЗИТЬ(Продажи.СтоимостьЗакупки / Продажи.Количество КАК ЧИСЛО(15, 2))
КОНЕЦ КАК ЗакупкаНаЕдиницу,
ВЫБОР
КОГДА Продажи.Количество = 0
ТОГДА 0
ИНАЧЕ ВЫРАЗИТЬ(Продажи.ДопРасходы / Продажи.Количество КАК ЧИСЛО(15, 2))
КОНЕЦ КАК ДопРасходыНаЕдиницу,
ВЫБОР
КОГДА Продажи.Количество = 0
ТОГДА 0
ИНАЧЕ ВЫРАЗИТЬ((Продажи.СтоимостьЗакупки + Продажи.ДопРасходы) / Продажи.Количество КАК ЧИСЛО(15, 2))
КОНЕЦ КАК СебестоимостьЕдиницы,
ВЫБОР
КОГДА Расчеты.Месяц ЕСТЬ NULL
ТОГДА ЛОЖЬ
ИНАЧЕ ИСТИНА
КОНЕЦ КАК МесяцЗакрыт
ИЗ
ВТПродажи КАК Продажи
ЛЕВОЕ СОЕДИНЕНИЕ ВТРасчеты КАК Расчеты
ПО Продажи.Месяц = Расчеты.Месяц
И Продажи.Организация = Расчеты.Организация
УПОРЯДОЧИТЬ ПО
Организация,
Месяц
В УТ 11.5, КА 2.5 и ERP 2.5 добавьте в условие Расчет.Ссылка.РежимЗакрытияМесяца = ЗНАЧЕНИЕ(Перечисление.РежимыЗакрытияМесяца.ОкончательноеЗакрытие), чтобы предварительное закрытие не считалось окончательным; в УТ 11.4 такого реквизита нет.
Функция находит документы, где собственный товар продан без себестоимости, и подсказывает причину. Записи в регистре «Задания к расчету себестоимости» за этот или более ранний месяц значат, что расчёт устарел. Если заданий нет, ищите ошибку в данных: поступление без цены, оприходование без стоимости, отрицательный остаток.
// Продажи собственных товаров без себестоимости и подсказка, где искать причину.
// Серверный код: модуль внешней обработки или общий серверный модуль. УТ 11.4+, КА 2.5.
Функция ПродажиБезСебестоимости(НачалоПериода, КонецПериода) Экспорт
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("НачалоПериода", НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("КонецПериода", КонецДня(КонецПериода));
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Продажи.Регистратор КАК Документ,
| НАЧАЛОПЕРИОДА(Продажи.Период, МЕСЯЦ) КАК Месяц,
| Продажи.АналитикаУчетаПоПартнерам.Организация КАК Организация,
| Продажи.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
| СУММА(Продажи.Количество) КАК Количество,
| СУММА(Продажи.СуммаВыручкиБезНДС) КАК Выручка
|ПОМЕСТИТЬ ВТПродажи
|ИЗ
| РегистрНакопления.ВыручкаИСебестоимостьПродаж КАК Продажи
|ГДЕ
| Продажи.Период МЕЖДУ &НачалоПериода И &КонецПериода
| И Продажи.Активность
| И Продажи.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)
|
|СГРУППИРОВАТЬ ПО
| Продажи.Регистратор,
| НАЧАЛОПЕРИОДА(Продажи.Период, МЕСЯЦ),
| Продажи.АналитикаУчетаПоПартнерам.Организация,
| Продажи.АналитикаУчетаНоменклатуры.Номенклатура
|
|ИМЕЮЩИЕ
| СУММА(Продажи.Количество) > 0
| И СУММА(Продажи.СтоимостьБезНДС + Продажи.ДопРасходыБезНДС) <= 0
|;
|
|////////////////////////////////////////////////////////////////////////////////
|// Самый ранний месяц, по которому после расчета менялись документы
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| МИНИМУМ(Задания.Месяц) КАК Месяц
|ПОМЕСТИТЬ ВТЗадания
|ИЗ
| РегистрСведений.ЗаданияКРасчетуСебестоимости КАК Задания
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| Продажи.Документ КАК Документ,
| Продажи.Месяц КАК Месяц,
| Продажи.Организация КАК Организация,
| Продажи.Номенклатура КАК Номенклатура,
| Продажи.Количество КАК Количество,
| Продажи.Выручка КАК Выручка,
| ВЫБОР
| КОГДА Задания.Месяц ЕСТЬ NULL
| ТОГДА ""Расчет актуален: проверьте поступление, цену и остаток товара""
| ИНАЧЕ ""Расчет не выполнен или устарел: закройте месяц""
| КОНЕЦ КАК Подсказка
|ИЗ
| ВТПродажи КАК Продажи
| ЛЕВОЕ СОЕДИНЕНИЕ ВТЗадания КАК Задания
| ПО (Задания.Месяц <= Продажи.Месяц)
|
|УПОРЯДОЧИТЬ ПО
| Месяц,
| Документ";
Возврат Запрос.Выполнить().Выгрузить();
КонецФункции
После закрытия месяца себестоимость лежит в движениях самого документа продажи — её можно вывести в накладную для внутреннего контроля или колонкой в журнал.
Себестоимость в регистре хранится по товару и характеристике, а не по строке документа, поэтому стоимость единицы умножается на количество строки. Вызывайте функцию один раз для всех печатаемых документов; как подключить такую форму, описано в статье о внешней печатной форме на БСП.
// Строки реализаций с себестоимостью и наценкой для печатной формы.
// Себестоимость единицы берется из движений документа после закрытия месяца
// и умножается на количество строки (в единицах хранения).
// Сумма строки - в валюте документа, себестоимость - в валюте упр. учета, обе без НДС.
Функция ДанныеПечатиССебестоимостью(МассивДокументов) Экспорт
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("МассивДокументов", МассивДокументов);
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Продажи.Регистратор КАК Документ,
| Продажи.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
| Продажи.АналитикаУчетаНоменклатуры.Характеристика КАК Характеристика,
| СУММА(Продажи.Количество) КАК Количество,
| СУММА(Продажи.СтоимостьБезНДС + Продажи.ДопРасходыБезНДС) КАК Себестоимость
|ПОМЕСТИТЬ ВТСебестоимость
|ИЗ
| РегистрНакопления.ВыручкаИСебестоимостьПродаж КАК Продажи
|ГДЕ
| Продажи.Регистратор В (&МассивДокументов)
| И Продажи.Активность
|
|СГРУППИРОВАТЬ ПО
| Продажи.Регистратор,
| Продажи.АналитикаУчетаНоменклатуры.Номенклатура,
| Продажи.АналитикаУчетаНоменклатуры.Характеристика
|
|ИМЕЮЩИЕ
| СУММА(Продажи.Количество) > 0
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Товары.Ссылка КАК Документ,
| Товары.НомерСтроки КАК НомерСтроки,
| Товары.Номенклатура КАК Номенклатура,
| Товары.Характеристика КАК Характеристика,
| Товары.Количество КАК Количество,
| Товары.СуммаСНДС - Товары.СуммаНДС КАК СуммаБезНДС,
| ВЫРАЗИТЬ(Товары.Количество * ЕСТЬNULL(Себестоимость.Себестоимость / Себестоимость.Количество, 0)
| КАК ЧИСЛО(15, 2)) КАК Себестоимость
|ИЗ
| Документ.РеализацияТоваровУслуг.Товары КАК Товары
| ЛЕВОЕ СОЕДИНЕНИЕ ВТСебестоимость КАК Себестоимость
| ПО Товары.Ссылка = Себестоимость.Документ
| И Товары.Номенклатура = Себестоимость.Номенклатура
| И Товары.Характеристика = Себестоимость.Характеристика
|ГДЕ
| Товары.Ссылка В (&МассивДокументов)
|
|УПОРЯДОЧИТЬ ПО
| Документ,
| НомерСтроки";
Данные = Запрос.Выполнить().Выгрузить();
// Наценка строки, %: прибыль к себестоимости
Данные.Колонки.Добавить("Наценка", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(10, 1)));
Для Каждого СтрокаДанных Из Данные Цикл
Если СтрокаДанных.Себестоимость > 0 Тогда
СтрокаДанных.Наценка = Окр((СтрокаДанных.СуммаБезНДС - СтрокаДанных.Себестоимость)
/ СтрокаДанных.Себестоимость * 100, 1);
КонецЕсли;
КонецЦикла;
Возврат Данные;
КонецФункции
Соединение запроса динамического списка с регистром продаж на большом журнале тормозит. Удобнее событие таблицы ПриПолученииДанныхНаСервере (8.3.10+): оно получает только показываемые строки и позволяет дописать в них значения.
Расш_Себестоимость и Расш_Наценка и выведите их колонками. В УТ 11.4 реализации обычно открывают из журнала «Документы продажи» — дорабатывайте ту форму, которой пользуются.УстановитьОграниченияИспользованияВОтборе, ...ВПорядке): значения подставляются после выборки. Метод заменяет список ограничений целиком.// Модуль формы списка в расширении: колонки «Себестоимость» и «Наценка, %».
// В запрос динамического списка добавлены поля-заглушки
// ВЫРАЗИТЬ(0 КАК ЧИСЛО(15, 2)) КАК Расш_Себестоимость,
// ВЫРАЗИТЬ(0 КАК ЧИСЛО(10, 1)) КАК Расш_Наценка,
// а таблице назначен обработчик события ПриПолученииДанныхНаСервере (8.3.10+).
&НаСервереБезКонтекста
Процедура Расш_СписокПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки)
// Документы видимых строк. В списке документов и в журнале «Документы продажи»
// поле Ссылка есть в выборке; ключ строки журнала - запись регистра, а не документ.
Документы = Новый Массив;
Для Каждого ЭлементСтроки Из Строки Цикл
Документы.Добавить(ЭлементСтроки.Значение.Данные.Ссылка);
КонецЦикла;
Суммы = Расш_ВыручкаИСебестоимость(Документы);
Для Каждого ЭлементСтроки Из Строки Цикл
ДанныеСтроки = ЭлементСтроки.Значение.Данные;
СтрокаСумм = Суммы.Найти(ДанныеСтроки.Ссылка, "Документ");
Если СтрокаСумм = Неопределено Тогда
Продолжить; // месяц не закрыт или в документе нет собственных товаров
КонецЕсли;
ДанныеСтроки.Расш_Себестоимость = СтрокаСумм.Себестоимость;
Если СтрокаСумм.Себестоимость > 0 Тогда
ДанныеСтроки.Расш_Наценка = Окр((СтрокаСумм.Выручка - СтрокаСумм.Себестоимость)
/ СтрокаСумм.Себестоимость * 100, 1);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервереБезКонтекста
Функция Расш_ВыручкаИСебестоимость(Документы)
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Документы", Документы);
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Продажи.Регистратор КАК Документ,
| СУММА(Продажи.СуммаВыручкиБезНДС) КАК Выручка,
| СУММА(Продажи.СтоимостьБезНДС + Продажи.ДопРасходыБезНДС) КАК Себестоимость
|ИЗ
| РегистрНакопления.ВыручкаИСебестоимостьПродаж КАК Продажи
|ГДЕ
| Продажи.Регистратор В (&Документы)
| И Продажи.Активность
| И Продажи.ТипЗапасов = ЗНАЧЕНИЕ(Перечисление.ТипыЗапасов.Товар)
|
|СГРУППИРОВАТЬ ПО
| Продажи.Регистратор
|
|ИМЕЮЩИЕ
| СУММА(Продажи.СтоимостьБезНДС + Продажи.ДопРасходыБезНДС) <> 0";
Результат = Запрос.Выполнить().Выгрузить();
Результат.Индексы.Добавить("Документ");
Возврат Результат;
КонецФункцииПодробнее — в статьях про динамический список 1С и расширение конфигурации.
СтоимостьБезНДС), в Обороты(...) — с ним (СтоимостьБезНДСОборот).Ссылка. Другие причины — в статье «Поле объекта не обнаружено».ЗаказКлиента. При продаже по заказу в измерении хранится заказ, и все его реализации сливаются. Для документа отбирайте по Регистратор.КоличествоУпаковок, а регистр хранит количество в единицах хранения.Она рассчитывается при закрытии месяца. До него ориентируйтесь на «Оценку рентабельности продажи» из меню «Отчеты» документа, после — на «Продажи» или «Продажи по заказу».
Только оценочно: предварительным расчётом или предварительным закрытием на дату, по средней цене остатка в отчёте «Себестоимость товаров» или по нормативному виду цен в оценке рентабельности. Окончательная цифра появится после закрытия месяца.
Рентабельность в «Продажах» — валовая прибыль к выручке, наценка — прибыль к себестоимости. Купили за 100, продали за 125 без НДС: прибыль 25, рентабельность 20 %, наценка 25 %.
В неё входят доп. расходы — доставка, таможня и другие услуги, распределённые на товар. Кроме того, средняя усредняет цены разных поставок, а ФИФО списывает более ранние партии.
Да: исправьте документы и закройте месяц заново, а за ним — все следующие, потому что остатки переходят из месяца в месяц. Если стоит дата запрета изменения, её придётся сдвинуть.
Если нужен отчёт по валовой прибыли под ваши правила или себестоимость в накладной и журнале продаж, поручите это программисту, который знает механизм расчёта себестоимости УТ 11. Опишите задачу на странице отчётов и обработок 1С или сразу разместите задачу: оценка бесплатная, ответ в течение рабочего дня. Если закрытие месяца идёт часами, это отдельная работа — см. услугу «1С тормозит».
Станьте частью сообщества!
Войдите или зарегистрируйтесь, и вы сможете участвовать в обсуждениях.