Отчет Валовая прибыль для УТ. Как сделать этот отчет на СКД. step by step

20.10.10

Задачи пользователя - Анализ учета

Сделано принципиально на СКД. Принципиально, потому что СКД при соединении таблиц (не на уровне запроса а на уровне СКД) не суммирует ресурсы, даже если задана агрегатная функция Сумма(). Учитывает возвраты покупателей.

Скачать файлы

Наименование Файл Версия Размер
Валовая_прибыль
.erf 16,35Kb
502
.erf 16,35Kb 502 Скачать

Дело в том, что одной строке состава реализации может соответствовать несколько строк списываемых партий и если мы бы соединяли в запросе то ресурсы реализации могут задвоиться, затроиться и т.д. На скриншоте выделена колонка суммы количества из реализации и видно, что отдельные партии не суммируются, но отдельные реализации суммируются. Вычисляемые поля прибыли и рентабельности (Рентабельность=(Цена продажи-Цена поступления)*100/Цена поступления ), диаграммы.

step by step

1. Создаём новый отчет и открываем схему компоновки данных (СКД).

2. Нам надо создать два набора данных. Продажи и Партии.

      Текст запроса продаж:

ВЫБРАТЬ
    ПродажиОбороты.Номенклатура,
    ПродажиОбороты.ХарактеристикаНоменклатуры,
    ПродажиОбороты.ЗаказПокупателя,
    ПродажиОбороты.ДоговорКонтрагента,
    ПродажиОбороты.ДокументПродажи,
    ПродажиОбороты.Подразделение,
    ПродажиОбороты.Проект,
    ПродажиОбороты.Организация,
    ПродажиОбороты.Контрагент,
    СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоОборотПродажи,
    СУММА(ПродажиОбороты.СтоимостьОборот) КАК СтоимостьОборотПродажи,
    СУММА(ПродажиОбороты.СтоимостьБезСкидокОборот) КАК СтоимостьБезСкидокОборотПродажи,
    СУММА(ПродажиОбороты.НДСОборот) КАК НДСОборотПродажи,
    СРЕДНЕЕ(ВЫБОР
            КОГДА ПродажиОбороты.КоличествоОборот <> 0
                ТОГДА ПродажиОбороты.СтоимостьОборот / ПродажиОбороты.КоличествоОборот
            ИНАЧЕ 0
        КОНЕЦ) КАК СредняяЦенаПродажи
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Авто, ) КАК ПродажиОбороты

СГРУППИРОВАТЬ ПО
    ПродажиОбороты.Номенклатура,
    ПродажиОбороты.ХарактеристикаНоменклатуры,
    ПродажиОбороты.ЗаказПокупателя,
    ПродажиОбороты.ДоговорКонтрагента,
    ПродажиОбороты.ДокументПродажи,
    ПродажиОбороты.Подразделение,
    ПродажиОбороты.Проект,
    ПродажиОбороты.Организация,
    ПродажиОбороты.Контрагент

 

 

Текст запроса  партий:

 

ВЫБРАТЬ
    ПартииСУчетомВозвратов.Регистратор КАК Регистратор,
    ПартииСУчетомВозвратов.Номенклатура КАК Номенклатура,
    ПартииСУчетомВозвратов.ДокументОприходования КАК ДокументОприходования,
    ПартииСУчетомВозвратов.Возвраты_КоличествоРасходПартии КАК Возвраты_КоличествоРасходПартии,
    ПартииСУчетомВозвратов.Реализации_КоличествоРасходПартии КАК Реализации_КоличествоРасходПартии,
    ПартииСУчетомВозвратов.КоличествоРасходПартии КАК КоличествоРасходПартии,
    ПартииСУчетомВозвратов.СтоимостьРасходПартии,
    СРЕДНЕЕ(ВЫБОР
            КОГДА ПартииСУчетомВозвратов.КоличествоРасходПартии <> 0
                ТОГДА ПартииСУчетомВозвратов.СтоимостьРасходПартии / ПартииСУчетомВозвратов.КоличествоРасходПартии
            ИНАЧЕ 0
        КОНЕЦ) КАК СредняяЦенаСписанияПартии,
    ПартииСУчетомВозвратов.ХарактеристикаНоменклатуры
ИЗ
    (ВЫБРАТЬ
        Реализации.Регистратор КАК Регистратор,
        Реализации.Номенклатура КАК Номенклатура,
        Реализации.КоличествоРасходПартии + ЕСТЬNULL(Возвраты.КоличествоРасходПартии, 0) КАК КоличествоРасходПартии,
        Реализации.ДокументОприходования КАК ДокументОприходования,
        Возвраты.КоличествоРасходПартии КАК Возвраты_КоличествоРасходПартии,
        Реализации.КоличествоРасходПартии КАК Реализации_КоличествоРасходПартии,
        Реализации.СтоимостьРасходПартии + ЕСТЬNULL(Возвраты.СтоимостьРасходПартии, 0) КАК СтоимостьРасходПартии,
        Реализации.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры
    ИЗ
        (ВЫБРАТЬ
            ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор КАК Регистратор,
            ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
            СУММА(ПартииТоваровНаСкладахОстаткиИОбороты.СтоимостьРасход) КАК СтоимостьРасходПартии,
            ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоРасход КАК КоличествоРасходПартии,
            ПартииТоваровНаСкладахОстаткиИОбороты.ДокументОприходования КАК ДокументОприходования,
            ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор.Сделка КАК Сделка,
            ПартииТоваровНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры
        ИЗ
            РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Регистратор, ДвиженияИГраницыПериода, ) КАК ПартииТоваровНаСкладахОстаткиИОбороты
        ГДЕ
            ПартииТоваровНаСкладахОстаткиИОбороты.Период МЕЖДУ &НачалоПериода И &КонецПериода
            И ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
       
        СГРУППИРОВАТЬ ПО
            ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор,
            ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура,
            ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоРасход,
            ПартииТоваровНаСкладахОстаткиИОбороты.ДокументОприходования,
            ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор.Сделка,
            ПартииТоваровНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры) КАК Реализации
            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
                ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
                ПартииТоваровНаСкладахОстаткиИОбороты.ДокументОприходования КАК ДокументОприходования,
                СУММА(ЕСТЬNULL(ПартииТоваровНаСкладахОстаткиИОбороты.СтоимостьРасход, 0)) КАК СтоимостьРасходПартии,
                ЕСТЬNULL(ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоРасход, 0) КАК КоличествоРасходПартии,
                Продажи.ДокументПродажи КАК ДокументПродажи,
                ПартииТоваровНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры
            ИЗ
                РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Регистратор, ДвиженияИГраницыПериода, ) КАК ПартииТоваровНаСкладахОстаткиИОбороты
                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
                    ПО ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор = Продажи.Регистратор
                        И ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура = Продажи.Номенклатура
                        И ПартииТоваровНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры = Продажи.ХарактеристикаНоменклатуры
            ГДЕ
                ПартииТоваровНаСкладахОстаткиИОбороты.Период МЕЖДУ &НачалоПериода И &КонецПериода
                И ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
           
            СГРУППИРОВАТЬ ПО
                ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура,
                ПартииТоваровНаСкладахОстаткиИОбороты.ДокументОприходования,
                ПартииТоваровНаСкладахОстаткиИОбороты.Заказ,
                ЕСТЬNULL(ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоРасход, 0),
                Продажи.ДокументПродажи,
                ПартииТоваровНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры) КАК Возвраты
            ПО Реализации.ХарактеристикаНоменклатуры = Возвраты.ХарактеристикаНоменклатуры
                И Реализации.ДокументОприходования = Возвраты.ДокументОприходования
                И Реализации.Регистратор = Возвраты.ДокументПродажи
                И Реализации.Номенклатура = Возвраты.Номенклатура) КАК ПартииСУчетомВозвратов
ГДЕ
    ПартииСУчетомВозвратов.КоличествоРасходПартии <> 0

СГРУППИРОВАТЬ ПО
    ПартииСУчетомВозвратов.Регистратор,
    ПартииСУчетомВозвратов.Номенклатура,
    ПартииСУчетомВозвратов.ДокументОприходования,
    ПартииСУчетомВозвратов.Возвраты_КоличествоРасходПартии,
    ПартииСУчетомВозвратов.Реализации_КоличествоРасходПартии,
    ПартииСУчетомВозвратов.КоличествоРасходПартии,
    ПартииСУчетомВозвратов.СтоимостьРасходПартии,
    ПартииСУчетомВозвратов.ХарактеристикаНоменклатуры

Первый запрос тривиален. Все самое интересное во втором.

Я соединяю те движения партий, которые сделаны реализацией, с движениями которые делает возврат покупателя. Чтобы правильно их соединить (для вычитания сторно) , надо соединять по номенклатуре, характеристике, документу оприходования и документу продажи. С документом оприходования все понятно, но откуда в партиях взять документ продажи? Ответ прост. Возврат делает движения по продажам тоже и мы можем во вложеном запросе возвратов сделать соединение с продажами по регистратору (номенклатуре, характеристике) и вытащить таким образом документ продажи.

В СКД всегда так. Сначала долго думаешь, потом быстро делаешь.

Далее номера скриншотов соответствуют пунктам.

3. Теперь на уровне СКД делаем соединение наших наборов данных.

4. Создаем вычисляемые поля.

5. Ресурсы. Для цен продаж, списания и рентабельности задаём агрегатную функцию Среднее()

6. Параметры. Надо проверить ограничение доступности.

7. Настройки. Так должны выглядеть в конечном итоге. Для этого правой кнопкой на корне дерева, добавляем контрагента, номенклатуру. Характеристику добавляем в группировку номенклатуры. Потом документы.

8. Выбираем поля ресурсов, которые хотим видеть.

9. Отключаем рентабельность в группировке документа оприходования. она там не нужна.

10. Сортируем отчет по убыванию прибыли.

11. Задаем макет оформления.

12. Правой кнопкой на корне и добавляем новую диаграмму.

13. Добавляем серии и выбранные поля у диаграммы. Устанавливаем её тип.

См. также

Дополнительный анализ расходов УСН в 1С:Бухгалтерии 3.0

Учет доходов и расходов Анализ учета Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Налоговый учет УСН Платные (руб)

Мы добавили девять новых проверок в Экспресс-проверку учета. Цель таких проверок — узнать, есть ли потенциальные проблемы в учёте УСН.

7200 руб.

27.09.2021    13505    26    11    

35

Экспресс проверка управленческого учёта для УНФ 1.6/3.0

Анализ учета Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Расширение автоматически анализирует учёт 1С:УНФ, помогает находить и исправлять ошибки, а также проверять те места, которые хорошо бы проверить. Разработка для тех, кто хочет построить управленческий финансовый учет в УНФ.

12000 руб.

28.07.2022    8563    5    25    

21

Отчет "ABC-анализ" для 1С УТ 11, КА, ERP

Анализ учета Анализ продаж Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

ABC-анализ — метод, позволяющий классифицировать ресурсы фирмы по степени их важности. Отличный отчет для анализа выручки и продаж! Может применяться в сфере деятельности любого предприятия. В его основе лежит принцип Парето — 20% усилий обеспечивают 80% результата.

6000 руб.

26.06.2022    11216    16    6    

18

Экселька. Универсальный инструмент, построенный по типу классических электронных таблиц, с возможностью использования данных 1С.

Загрузка и выгрузка в Excel Регламентированный учет и отчетность Анализ учета БДР, БДДС Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Инструмент является симбиозом базового функционала Excel с возможностью получения и использования данных 1С для конструирования произвольных отчетов. Область применения - от простого получения нескольких контрольных сумм по типу "Отчет руководителю", до составления сложных аналитических отчетов всех видов учета.

12000 руб.

08.02.2021    19395    12    66    

26

Сверка остатков товаров БУХ3 - УТ11

Анализ учета Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Платные (руб)

Обработка позволяет сравнивать количественные остатки номенклатуры между Бухгалтерия 3.0 и УТ 11.5

3600 руб.

06.02.2023    4049    6    1    

11

Сверка документов между 1С:УНФ и 1С: Бухгалтерией 8

Обмен между базами 1C Анализ учета Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

"Сверка документов" используется для проверки расхождений по документам в 1С:УНФ и 1С: Бухгалтерия 8.

7920 руб.

19.04.2022    9666    6    8    

8

Сверка данных УНФ - БУХ по документам и по долгам

Взаиморасчеты Анализ учета Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Обработка позволяет сравнивать по документам и сверять по долгам покупателей и поставщиков между базами УНФ 1.6, УНФ 3.0 и Бухгалтерия 3.0,

6000 руб.

24.08.2022    6284    3    0    

5
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. rasswet 82 13.01.10 12:08 Сейчас в теме
а скин можно покрупнее прицепить? не могу понять надо мне это или нет.
2. sashtet 13.01.10 13:15 Сейчас в теме
Мне пондравилась,буду изучать,думать что улучшить...
3. zlgen10 14.01.10 16:44 Сейчас в теме
Круть, по сравнению со стандартным в торговли мега прост, считает лучше, во всяком случае более развернут, и не дает 100 рентабельности при минусах как в стандарте, респект!
4. ZLG07 167 18.01.10 11:41 Сейчас в теме
Нашел пару ошибок, при возврате товара от покупателя, считает рентабельность 100, и также же возникает по некоторым движениям ошибка деления на 0
5. sashtet 18.01.10 11:46 Сейчас в теме
А что скажет автор?Будешь доделывать?
6. Boris-Leleko 316 18.01.10 20:14 Сейчас в теме
Сложная задачка, буду думать...
7. Boris-Leleko 316 24.01.10 03:48 Сейчас в теме
Ура! теперь фунциклирует. Возвраты учитываются и прибыль между партиями правильно теперь распределяется.
8. Boris-Leleko 316 20.10.10 10:44 Сейчас в теме
изменил ф-лу расчета рентабельности: Рентабельность=(Цена продажи-Цена поступления)*100/Цена поступления
9. tim2004 09.04.11 20:47 Сейчас в теме
Прибыль по услугам не считает. Поправьте, плиз.
10. Katerina_S 18.11.11 14:04 Сейчас в теме
+ для примера в освоении скд пригодилась
11. harisov_r 26 03.02.12 14:14 Сейчас в теме
Есть ошибки в отчете:
- Если есть документ "Поступление доп.расходов", который сделан после документа РТиУ, и сделан в конце месяца док-т "Корректировка стоимости списания товаров" - Ваш отчет не учитывает этого, и себестоимость подсчитывает неправильно. Типовой стандартный отчет "Валовая прибыль" - учитывает.
Рис.1 -

Рис.2 - Типовой стандартный отчет "Валовая прибыль" -


Рис.3 - Ваш отчет:
12. mig090874 06.02.12 14:40 Сейчас в теме
А если партия была создана документом "Приходный ордер", возникает ситуация деления на ноль. А будет ли сделана доработка отчета, чтобы по закрытым ордерам цену брать из документов поступлений, введенных на основании ордеров.
А так отчет нужный, можно много головной боли снять.
13. Boris-Leleko 316 06.02.12 15:39 Сейчас в теме
Спасибо за тест. В ближайшее время времени к сожалению не смогу найти... Но вообще конечно всё это надо учесть.
14. Светлый ум 406 21.05.13 10:58 Сейчас в теме
А как же колонка себестоимость?
15. Boris-Leleko 316 24.05.13 11:54 Сейчас в теме
Это отчет для УТ. В УТ нет такого понятия как себестоимость.
16. Pawlick 10 02.11.13 23:52 Сейчас в теме
(15)Boris-Leleko,
Как это нет ?!?
А регистр ПродажиСебестоимость ?
17. ivankudinr 01.02.14 11:49 Сейчас в теме
В отчет не попадают услуги. (УТ 10.3)
18. zif74 11 12.05.15 22:40 Сейчас в теме
Суммы отличаются от стандартной валовой прибыли..
19. vas2005 8 31.01.17 23:50 Сейчас в теме
Есть косячёк, который все путает((((
Если в базе есть поставки и нал и безнал, то вылезает следующее:
По безналу товар с НДС, а за наличку без НДС
Вот и получается что в некоторой прибыли не хватает НДС((((((
Пример:
по безналу стоит 816=680+136(ндс)
за наличку стоит просто 816
В Этом отчете колонка "Стоимость расход партии" если поступление безналичное то 680, а если наличное то 816

Понятно что эти данные берутся из Регистр накопления "Партии товаров на складах (управленческий учет)", но все же.

Надо что бы в "Стоимость расход партии" попадала цена с учетом НДС.
Прикрепленные файлы:
Оставьте свое сообщение