Вход | Регистрация
 

Как вычесть НДС из оборотов?

Как вычесть НДС из оборотов?
Я
   Shecurok
 
26.02.21 - 14:09
Всем добрый день.
В СКД делаю отчет, запрос идет по регистру бухгалтерии ХозрасчетныйОборотыДтКт. Сумма попадает из оборотов.
Но тут внезапно понадобилась сумма из документов БЕЗ НДС. А обороты считаются с НДС.
Т.к инфы берется очень много запрос переписывать вообще не хочется. Есть какие-то способы просто вычесть этот НДС? Но и проблема еще в том, что некоторые доки реализации идут с НДС в сумме и НДС сверху.
Конфа БП 2.0
   ДенисЧ
 
1 - 26.02.21 - 14:13
Брать отдельный НДС из проводок и отнимать - не предлагать?
   vicof
 
2 - 26.02.21 - 14:29
(1) Ты не понял, запрос переписывать не хочется)
   ДенисЧ
 
3 - 26.02.21 - 14:30
(2) А. Тогда можно пойти простым путём - вычесть 20%.
И плевать, что неправильно будет ))
   vicof
 
4 - 26.02.21 - 14:35
(3) Это нормально, небольшая погрешность. Зато сколько времени сэкономлено.
   ZDenis
 
5 - 26.02.21 - 14:36
(3) Мне кажется он именно это и спрашивал, просто формулу не знал
   Ногаминебить
 
6 - 26.02.21 - 14:37
Ну если из оборотов и там есть корсчет - то на 90 в НУ сумма должна быть как раз без НДС. СуммаНУКт есть?
   ДенисЧ
 
7 - 26.02.21 - 14:39
(6) См (2)
   piter3
 
8 - 26.02.21 - 14:53
В чем сложность брать сумму из РН по НДС,левое соединение как в (1).Но не видя запроса хз
   Shecurok
 
9 - 26.02.21 - 15:23
(8) не пойму из какого РН по НДС делать запрос. НДС Начисленный?
   piter3
 
10 - 26.02.21 - 15:24
(9) Ну возьми и глянь на движения твоих доков по ним.
   shuhard
 
11 - 26.02.21 - 15:24
(0) НДС на 90.03 из выручки вычти
   Shecurok
 
12 - 26.02.21 - 17:26
Почитал, не пойму как сделать обращение и связь. Сначала сделал обращение к РН НДСЗаписиКнигиПродаж, связь Sales.Регистратор-РН.Регистратор - безумно странные цифры вылезли и по сумме из табл sales и сумма без ндс:

ВЫБРАТЬ
    Sales.Номенклатура КАК Номенклатура,
    Sales.Контрагент КАК Покупатель,
    Sales.ДоговорКонтрагента КАК ДоговорКонтрагента,
    СУММА(Sales.Количество) КАК Количество,
    СУММА(Sales.Сумма) КАК Net_Sales_YTD,
    СРЕДНЕЕ(Sales.Цена) КАК Цена,
    Sales.Регистратор КАК Регистратор,
    ВЫРАЗИТЬ(Sales.Сумма - Sales.Количество * PrimeCost.ЦенаСебест КАК ЧИСЛО(15, 2)) КАК GP1_RUB,
    ВЫБОР
        КОГДА Sales.Количество * PrimeCost.ЦенаСебест = 0
            ТОГДА 0
        ИНАЧЕ ВЫРАЗИТЬ(Sales.Сумма * 100 / (Sales.Количество * PrimeCost.ЦенаСебест) - 100 КАК ЧИСЛО(15, 2))
    КОНЕЦ КАК GP1_Percent1,
    PrimeCost.ЦенаСебест КАК ЦенаСебест,
    ВЫРАЗИТЬ(Sales.Количество * PrimeCost.ЦенаСебест КАК ЧИСЛО(15, 2)) КАК COGS,
    НДСЗаписиКнигиПродаж.Регистратор КАК РегистраторРН,
    НДСЗаписиКнигиПродаж.СуммаБезНДС
ИЗ
    (ВЫБРАТЬ
        ХозрасчетныйОборотыДтКт.СубконтоКт3 КАК Номенклатура,
        ХозрасчетныйОборотыДтКт.СубконтоДт1 КАК Контрагент,
        ХозрасчетныйОборотыДтКт.СубконтоДт2 КАК ДоговорКонтрагента,
        ХозрасчетныйОборотыДтКт.КоличествоОборотКт КАК Количество,
        ХозрасчетныйОборотыДтКт.СуммаОборот КАК Сумма,
        ВЫБОР
            КОГДА ХозрасчетныйОборотыДтКт.КоличествоОборотКт = 0
                ТОГДА 0
            ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ХозрасчетныйОборотыДтКт.СуммаОборот, 0) / ХозрасчетныйОборотыДтКт.КоличествоОборотКт КАК ЧИСЛО(15, 2))
        КОНЕЦ КАК Цена,
        ХозрасчетныйОборотыДтКт.Регистратор КАК Регистратор
    ИЗ
        РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачПер, &КонПер, Регистратор, , , СчетКт = &Сч9001, , Организация = &Организация) КАК ХозрасчетныйОборотыДтКт) КАК Sales
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            ХозрасчетныйОборотыДтКт.КоличествоОборотКт КАК Количество,
            ХозрасчетныйОборотыДтКт.СуммаОборот КАК Сумма,
            ХозрасчетныйОборотыДтКт.СубконтоКт1 КАК Номенклатура,
            ВЫБОР
                КОГДА ХозрасчетныйОборотыДтКт.КоличествоОборотКт = 0
                    ТОГДА 0
                ИНАЧЕ ХозрасчетныйОборотыДтКт.СуммаОборот / ХозрасчетныйОборотыДтКт.КоличествоОборотКт
            КОНЕЦ КАК ЦенаСебест
        ИЗ
            РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(
                    &НачПер,
                    &КонПер,
                    Период,
                    СчетДт = &Сч9002
                        ИЛИ СчетДт = &Сч9102,
                    ,
                    СчетКт = &Сч43
                        ИЛИ СчетКт = &Сч4101
                        ИЛИ СчетКт = &Сч4104
                        ИЛИ СчетКт = &Сч10,
                    ,
                    Организация = &Организация) КАК ХозрасчетныйОборотыДтКт) КАК PrimeCost
        ПО Sales.Номенклатура = PrimeCost.Номенклатура
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.НДСЗаписиКнигиПродаж КАК НДСЗаписиКнигиПродаж
        ПО Sales.Регистратор = НДСЗаписиКнигиПродаж.Регистратор

СГРУППИРОВАТЬ ПО
    Sales.Номенклатура,
    Sales.Контрагент,
    Sales.ДоговорКонтрагента,
    Sales.Регистратор,
    PrimeCost.ЦенаСебест,
    ВЫРАЗИТЬ(Sales.Сумма - Sales.Количество * PrimeCost.ЦенаСебест КАК ЧИСЛО(15, 2)),
    ВЫБОР
        КОГДА Sales.Количество * PrimeCost.ЦенаСебест = 0
            ТОГДА 0
        ИНАЧЕ ВЫРАЗИТЬ(Sales.Сумма * 100 / (Sales.Количество * PrimeCost.ЦенаСебест) - 100 КАК ЧИСЛО(15, 2))
    КОНЕЦ,
    ВЫРАЗИТЬ(Sales.Количество * PrimeCost.ЦенаСебест КАК ЧИСЛО(15, 2)),
    НДСЗаписиКнигиПродаж.Регистратор,
    НДСЗаписиКнигиПродаж.СуммаБезНДС
   Shecurok
 
13 - 26.02.21 - 17:26
а без связи бесконечный вывод отчета
   Shecurok
 
14 - 26.02.21 - 17:27
Дальше попробовал так:

ВЫБРАТЬ
    Sales.Номенклатура КАК Номенклатура,
    Sales.Контрагент КАК Покупатель,
    Sales.ДоговорКонтрагента КАК ДоговорКонтрагента,
    Sales.Количество КАК Количество,
    Sales.Сумма КАК Net_Sales_YTD,
    Sales.Цена КАК Цена,
    Sales.Регистратор КАК Регистратор,
    ВЫРАЗИТЬ(Sales.Сумма - Sales.Количество * PrimeCost.ЦенаСебест КАК ЧИСЛО(15, 2)) КАК GP1_RUB,
    ВЫБОР
        КОГДА Sales.Количество * PrimeCost.ЦенаСебест = 0
            ТОГДА 0
        ИНАЧЕ ВЫРАЗИТЬ(Sales.Сумма * 100 / (Sales.Количество * PrimeCost.ЦенаСебест) - 100 КАК ЧИСЛО(15, 2))
    КОНЕЦ КАК GP1_Percent1,
    PrimeCost.ЦенаСебест КАК ЦенаСебест,
    ВЫРАЗИТЬ(Sales.Количество * PrimeCost.ЦенаСебест КАК ЧИСЛО(15, 2)) КАК COGS,
    ВложенныйЗапрос.СуммаОборот КАК Тест
ИЗ
    (ВЫБРАТЬ
        ХозрасчетныйОборотыДтКт.СубконтоКт3 КАК Номенклатура,
        ХозрасчетныйОборотыДтКт.СубконтоДт1 КАК Контрагент,
        ХозрасчетныйОборотыДтКт.СубконтоДт2 КАК ДоговорКонтрагента,
        ХозрасчетныйОборотыДтКт.КоличествоОборотКт КАК Количество,
        ХозрасчетныйОборотыДтКт.СуммаОборот КАК Сумма,
        ВЫБОР
            КОГДА ХозрасчетныйОборотыДтКт.КоличествоОборотКт = 0
                ТОГДА 0
            ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ХозрасчетныйОборотыДтКт.СуммаОборот, 0) / ХозрасчетныйОборотыДтКт.КоличествоОборотКт КАК ЧИСЛО(15, 2))
        КОНЕЦ КАК Цена,
        ХозрасчетныйОборотыДтКт.Регистратор КАК Регистратор
    ИЗ
        РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачПер, &КонПер, Регистратор, , , СчетКт = &Сч9001, , Организация = &Организация) КАК ХозрасчетныйОборотыДтКт) КАК Sales
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            ХозрасчетныйОборотыДтКт.КоличествоОборотКт КАК Количество,
            ХозрасчетныйОборотыДтКт.СуммаОборот КАК Сумма,
            ХозрасчетныйОборотыДтКт.СубконтоКт1 КАК Номенклатура,
            ВЫБОР
                КОГДА ХозрасчетныйОборотыДтКт.КоличествоОборотКт = 0
                    ТОГДА 0
                ИНАЧЕ ХозрасчетныйОборотыДтКт.СуммаОборот / ХозрасчетныйОборотыДтКт.КоличествоОборотКт
            КОНЕЦ КАК ЦенаСебест
        ИЗ
            РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(
                    &НачПер,
                    &КонПер,
                    Период,
                    СчетДт = &Сч9002
                        ИЛИ СчетДт = &Сч9102,
                    ,
                    СчетКт = &Сч43
                        ИЛИ СчетКт = &Сч4101
                        ИЛИ СчетКт = &Сч4104
                        ИЛИ СчетКт = &Сч10,
                    ,
                    Организация = &Организация) КАК ХозрасчетныйОборотыДтКт) КАК PrimeCost
        ПО Sales.Номенклатура = PrimeCost.Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            ХозрасчетныйОборотыДтКт.СчетДт КАК СчетДт,
            ХозрасчетныйОборотыДтКт.СуммаОборот КАК СуммаОборот,
            ХозрасчетныйОборотыДтКт.СубконтоДт3 КАК Номенклатура
        ИЗ
            РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачПер, &КонПер, , , , СчетКт = &Сч6802, , Организация = &Организация) КАК ХозрасчетныйОборотыДтКт) КАК ВложенныйЗапрос
        ПО Sales.Номенклатура = ВложенныйЗапрос.Номенклатура

В поле тест ничего не выводит.
   RomanYS
 
15 - 26.02.21 - 17:46
(12) Перечитай (6) и забудь про регистры и соединения
   Ногаминебить
 
16 - 26.02.21 - 17:50
(14) Попробуй в исходном запросе заменить ХозрасчетныйОборотыДтКт.СуммаОборот КАК Сумма на ХозрасчетныйОборотыДтКт.СуммаНУОборотКт КАК Сумма.
   Ненавижу 1С
 
17 - 26.02.21 - 17:51
Может задачу полностью озвучить?
   Shecurok
 
18 - 26.02.21 - 19:06
(16) Да, это помогло. Сам еще это утром нашел, правда меня тут на стороне запутали :/
   john22
 
19 - 30.03.21 - 15:26
Тут главное внимательно почитать и вникнуть в суть :) Запутать конечно могут...

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.