Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

ВидСтавкиНДС (1сБП_3.0)

ВидСтавкиНДС (1сБП_3.0)
Я
   aleksejafonkin
 
14.01.19 - 12:10
Добрый день! Помогите разобраться, как в отчете переделать маленькую часть запроса:

КОГДА &СуммаСНДС
   ТОГДА СебестоимостиПродукции.ЦенаФакт * ВЫБОР                                    
      КОГДА ОтчётыПроизводства.Номенклатура.СтавкаНДС =
            ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18_118)
    ИЛИ ОтчётыПроизводства.Номенклатура.СтавкаНДС =
            ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС18)
      ТОГДА 1.18

В номенклатуре 1с-ки избавляются от реквизита СтавкаНДС и вместо него начали использовать ВидСтавкиНДС. Помогите разобрать!
 
 
   ДенисЧ
 
1 - 14.01.19 - 12:15
Заменить СтавкаНДС на ВидСтавкиНДС не предлагать? Или там тип меняется?
   aleksejafonkin
 
2 - 14.01.19 - 12:21
Само перечисление СтавкаНДС оставляют, и только в справочнике номенклатура его заменяют на ВидСтавкиНДС, который не содержит значений 18,20...
   ДенисЧ
 
3 - 14.01.19 - 12:24
ВидСтавкиНДС какого типа?
   Вафель
 
4 - 14.01.19 - 12:24
в каком релизе появился вид ставки?
   unregistered
 
5 - 14.01.19 - 12:26
(3) Перечисление ВидыСтавокНДС. Значения: - Общая, ОбщаяРасчетная, Пониженная, ПониженнаяРасчетная, Нулевая, БезНДС.
   aleksejafonkin
 
6 - 14.01.19 - 12:27
(5) Всё верно!
   aleksejafonkin
 
7 - 14.01.19 - 12:27
Только вот как теперь запрос переделать?
   ДенисЧ
 
8 - 14.01.19 - 12:28
(7) Ну так сопоставляй, что есть что, и какому бывшему проценту соответствует новый вид...
   unregistered
 
9 - 14.01.19 - 12:29
(6) Ну так и в чем проблема? У тебя величина ставки зависит от даты. До 1 января 2019 года Общая и ОбщаяРасчетная - 18%, с 1 января - 20%. Вопрос только где в твоём отчете эта самая дата, на которую надо ориентироваться? - дата отчета, какое-то поле в самом отчете, или ещё какая-то дата.
   aleksejafonkin
 
10 - 14.01.19 - 12:57
(9) Я так понимаю не дату отчета, дату документа?
   ptiz
 
11 - 14.01.19 - 13:10
(5) Жесть какая!
Потом начнется в запросах: ВЫБОР КОГДА Общая ТОГДА 20
   hhhh
 
12 - 14.01.19 - 13:11
(10) там хрен поймешь пока. где-то 18 будет, где-то 20.
   unregistered
 
13 - 14.01.19 - 14:24
(10) > не дату отчета, дату документа?

Так это к тебе вопрос. Нам отсюда не видно. И логику твоего отчета мы не знаем, и того что там в нём есть - тоже.
   unregistered
 
14 - 14.01.19 - 14:28
(11) > начнется в запросах: ВЫБОР КОГДА Общая ТОГДА 20.

Хуже. Начнется КОГДА Дата < ДАТАВРЕМЯ(2019,1,1) И Общая ТОГДА 18 ИНАЧЕ 20.

Идиотизм. Смысл идеи с общей и пониженной ставками понятен, но реализация - редкостное УГ. Кто обещал 1С-никам, что законодатель не начнёт завтра плодить разнообразие в части пониженных ставок. Сейчас как начнут поддержку отечественного производителя со своей ставкой НДС в каждом секторе - что 1С-ники будут делать? Плодить варианты пониженных ставок или еще одно перечисление запилят "ТипыПониженныхСтавокНДС"?
   zak555
 
15 - 14.01.19 - 14:28
они там упали на голову ?
   spiller26
 
16 - 14.01.19 - 14:33
(12) Вообще переделать нужно запрос.
Вообще для чего данный запрос используется?
Реквизит "СтавкиНДС" в справочнике Номенклатура, сделан был для того чтобы ставить по умолчанию Ставку НДС. В документах можно поставить какую угодно ставку НДС при этом.
Зачем привязываться к этому реквизиту для меня непонятно.
   aleksejafonkin
 
17 - 14.01.19 - 14:40
Спасибо!
   zak555
 
18 - 14.01.19 - 14:43
(16) нелогично его удалить, а не переименовать в УдалитьСтавкаНДС
   mastodont
 
19 - 14.01.19 - 14:44
(18) а где его удалили?
   hhhh
 
20 - 14.01.19 - 14:47
(14) дык есть уже пониженные. Для Крыма, 4 и 2%.
   DexterMorgan
 
21 - 14.01.19 - 14:48
(14) Добавят еще одно значение ВидыСтавокНДС, ПониженныеУточнение
   zak555
 
22 - 14.01.19 - 14:49
(19) наврали (
   unregistered
 
23 - 14.01.19 - 14:50
(20) "Пониженная" - это про ставку 10%.
Крымские 4% и 2% были на переходный период и приравнивались к российским 18%. Данные об этом НДС шли в графу книг покупок и продаж с 18%. Иными словами это относится к Основной ставке.
   unregistered
 
24 - 14.01.19 - 14:54
Когда уже до них допрёт, что нужен справочник или регистр сведений для хранения значения ставок?
   DexterMorgan
 
25 - 14.01.19 - 14:55
(14) Ну а РС не добавили со значениями этимх видов ставок?
   runoff_runoff
 
26 - 14.01.19 - 15:02
(0) замените на ОтчётыПроизводства.Номенклатура.УдалитьСтавкаНДС, и еще несколько релизов отчет протянет..
   Вафель
 
27 - 14.01.19 - 15:03
а как быть с книгой покупок/продаж на переходный период.
Там же 18% и 20% будут некоторое время
   aleksejafonkin
 
28 - 14.01.19 - 15:18
(18) нет
   DexterMorgan
 
29 - 14.01.19 - 15:28
ГЫыы
Функция ОбщаяСтавкаНДС(Период) Экспорт
    
    Если Период < '20190101' Тогда
        Возврат ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18");
    Иначе
        Возврат ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20");
    КонецЕсли;
    
КонецФункции
   DexterMorgan
 
30 - 14.01.19 - 15:28
Как им не стыдно ток xDDDDD
 
 
   DexterMorgan
 
31 - 14.01.19 - 15:30
Не ну неужели не проще сделать РС со значениями ставок?
   unregistered
 
32 - 14.01.19 - 15:45
(30) ОЙ, да ладно! Вспомните переходный период с 20% на 18%. *авнокода а-ля (29) был полно в тогдашних конфигурациях на каждом шагу. Постепенно его выпилили. А тут - на тебе - новое значение ставки. Это ж национальный вид спорта - прыжки на собственных граблях.
   DexterMorgan
 
33 - 14.01.19 - 15:52
(32) Так сколько лет прошло, 1с вона какая крутая стала
   hhhh
 
34 - 14.01.19 - 15:55
(33) ну, из-за двух строчек целый регистр заводить. Они на это не пойдут.
   DexterMorgan
 
35 - 14.01.19 - 15:56
(34) Ага, проще в запросах нагавнокодить (14)
   dft2014
 
36 - 15.01.19 - 10:32
Цитирую партнерку 1С:

Как планируется реализовать ставку НДС 20% в справочнике "Номенклатура"в программах 1С?
Валеев Ренат (1С, Москва) 07.11.2018 15:22 

В связи с увеличением общей ставки НДС с 18 до 20 % мы планируем отказаться от хранения ставки НДС в номенклатуре, которая у нас используется для подстановки по умолчанию при вводе документов. Вместо ставки будем хранить новую сущность "Вид ставки НДС", которая может принимать значения:
-Общая
- Общая расчетная 
- Пониженная 
- Пониженная расчетная 
- Нулевая 
- Без НДС 
- Общая ставка - 18% в 2018 году и 20% в 2019-м. 


Вид ставки будет установлен обработчиком обновления.

Для пользователя с точки зрения интерфейса ничего не поменяется, выбирать он будет конкретное значение ставки в реквизите "% НДС", при этом список выбора будет зависеть от текущей даты. Но программа сохранит вид ставки, а не конкретное значение. В модуле менеджера перечисления будет реализована функция, возвращающая ставку НДС (значение перечисления Ставки НДС) в зависимости от вида ставки и даты.

Плюсы решения
-Пользователю ничего не надо делать в новогоднюю ночь или первый рабочий день 2019 года, т.е. отсутствует момент замены ставок в справочнике
-Отсутствует ситуация, когда в 2019 году в справочнике 18, а подставляется 20, и наоборот (мы были бы вынуждены так делать)
-Универсальность на случай появления новой пониженной ставки, изменения существующей пониженной ставки (повышения 10% до 12 и т.п.) 

Минусы 
-Нужно поддержать изменение в обменах 
-Необходим обработчик обновления
   unregistered
 
37 - 15.01.19 - 10:41
(36) Да это всё и так понятно.
Проблема в том, что решение остаётся по-прежнему дебилистическим и никак не решает проблему изменения величины ставки в будущем. Точнее - это решение переносит эту проблему с одного места на другое. Теперь для определения величины основной или пониженной ставки кругом появится *авнокод, анализирующий дату. А в случае очередных изменений это код будет дополняться анализом новых дат. А в случае появления ставки 12% (пример который приводит представитель самой 1С) это не избавит от необходимости дополнять перечисление СтавкиНДС и опять *авнокодить со втыканием этой ставки во все возможные места.

Хоть режьте меня, но я не понимаю, почему нельзя принять нормально решение со справочником или регистром сведений (или их комбинацией).
   Rema Dan
 
38 - 15.01.19 - 12:22
(37) Основная идея не в том, чтобы избавится от говнокода, а в том, чтобы всегда можно было однозначно определить ставку НДС. Документы имеют привязку к дате и в них ставка НДС всегда однозначна. Потому в документах ничего и не меняется. А вот идея хранить ставку НДС в чистом виде в справочнике номенклатуры не работает в виду отсутствия привязки номенклатуры к дате. Потому типовые и перестают хранить её в чистом виде в карточке.
Решение со справочником и автоматически заполняемыми предопределёнными элементами справочника действительно могло бы облегчить расчёт процентов в запросах выбирая их из реквизитов, но это другая проблема и 1С сейчас её не решает.
   ptiz
 
39 - 15.01.19 - 12:41
(38) " в виду отсутствия привязки номенклатуры к дате" - поэтому в нашей самописке ставка НДС сразу была сделана через периодический РС. Куда уж нам до гениев типовой 1С!
   oksla
 
40 - 15.02.19 - 10:28
если еще тема актуальна (только что наткнулся в самодельной печатной форме УПД):
меняем исходный запрос на конструкцию, типа:

ТОГДА ТаблицаДокумента.Сумма * ВЫБОР
  КОГДА СтавкиНДСНоменклатура.ВидСтавкиНДС = ЗНАЧЕНИЕ(Перечисление.ВидыСтавокНДС.Пониженная)
     ИЛИ СтавкиНДСНоменклатура.ВидСтавкиНДС = ЗНАЧЕНИЕ(Перечисление.ВидыСтавокНДС.ПониженнаяРасчетная)
  ТОГДА 0.1
  КОГДА СтавкиНДСНоменклатура.ВидСтавкиНДС = ЗНАЧЕНИЕ(Перечисление.ВидыСтавокНДС.Общая)
     ИЛИ СтавкиНДСНоменклатура.ВидСтавкиНДС = ЗНАЧЕНИЕ(Перечисление.ВидыСтавокНДС.ОбщаяРасчетная)
  ТОГДА 0.2    
  ИНАЧЕ 0.18
КОНЕЦ

костыль, конечно, но работоспособный
   Mankubus
 
41 - 15.02.19 - 10:30
(40) а если печатаем документ 18 года?
   oksla
 
42 - 15.02.19 - 10:57
эт всё зависит от того, что делает твоя печатная форма. моя, например в километровом запросе подготавливает табличную часть счета фактуры в зависимости от вида документа, его даты, настроек учета и фазы луны. я привел конкретный кусочек кода, как заменить выводимую из употребления сущность "СтавкаНДС" (из за чего лезет ошибка) на новую - "ВидСтавкиНДС"
   oksla
 
43 - 15.02.19 - 11:06
Например, в типовой БП 3.0.67.70 можно заглянуть в ОбщийМодуль.УчетНДС.ТекстЗапросаДанныеДляПечатиСчетовФактур() Именно там используется (и исправлен по сравнению со старыми релизами) новый механизм.
   Aleksey
 
44 - 15.02.19 - 11:10
(42) т.е. если у тебя будет без НДС, то будет печататься с 0.18?
   Вафель
 
45 - 15.02.19 - 11:15
так в документах же ставка осталась как СтавкаНДС.
Зачем в запросах юзать ВидСтавки?
   Вафель
 
46 - 15.02.19 - 11:15
ну и какбы вид ставки НЕ заменяет ставку, а дополняет его
   unregistered
 
47 - 15.02.19 - 11:32
(41) Это к вопросу о том, что печатные формы вообще не должны ничего рассчитывать.
Максимум - складывать и/или вычитать, когда надо посчитать сумму с НДС (всего), а в документе храниться отдельно СуммаБезНДС и СуммаНДС, или наоборот - посчитать  СуммуБезНДС путем вычитания из СуммаВсего СуммаНДС. Ну и итоги по строкам, листам, колонкам и т.п.
Рассчётов а-ля (40) быть не должно. Если они есть - это ошибка либо проектировщиков данных (недостаточно данных в документе), либо программиста, пишущего обработку печати (не так берёт имеющиеся данные, делая ненужные расчеты).
   unregistered
 
48 - 15.02.19 - 11:33
(44) > если у тебя будет без НДС.

У него не будет. Ему бухгалетр лично обещала. Клялась здоровьем мамы!
   oksla
 
49 - 15.02.19 - 11:53
ребята, чем флудить, загляните в конфу, в отладчике, много нового для себя обнаружите. еще раз говорю: гляньте в ОбщийМодуль.УчетНДС.ТекстЗапросаДанныеДляПечатиСчетовФактур() - это ТИПОВОЙ функционал и я не буду здесь приводить несколько тысяч строк кода, чтоб проиллюстрировать, что печформа все таки работает корректно с любым документом, как 2019-го, так и 2018-го года.
так что ёрничество здесь неуместно.
косяков от "большого брата" в связи с переходом НДС18->20 (особенно в запросах) - доюя и больше, еще 100500 релизов вычищать своё же овно будут. в модуле УчетНДС сплошь и рядом гвоздями прибиты ссылки на перечисления НДС, в отчетах (в Компоновках) - тоже (((
когда вручную делал исправления необновляемой УТ для перехода на 20% - просто офигел от количества типовых костылей от 1С.
и вообще, внешние печатные формы/отчеты напрямую оперирующие данными без использования программного интерфейса (который так усиленно двигает 1С) - это зло!
   oksla
 
50 - 15.02.19 - 11:56
кстати, никогда не видели движения у удаленного/распроведенного документа? милости прошу в типовую ЗУП 3.1, кадровые документы с суффиксом "...Списком"
   unregistered
 
51 - 15.02.19 - 12:21
(49) > загляните в конфу.

Вот только не надо отмазок типа раз 1С *авнокодит, то и я буду *авнокодить, как в (40).
Что касается запроса в УчетНДС.ТекстЗапросаДанныеДляПечатиСчетовФактур(), то это как раз типичный пример методологического изъяна, когда в определённых случаях для печатной формы счета-фактуры нет данных в исходных документах (в исходном документе, по которому произошел отказ в подтверждении нулевой ставки НДС, ставка 0%, а в счете-фактуре, который в данном случае выписывается должна быть указана ставка 10% или 18%/20%). К твоему творчеству из (40) это не относится.
   oksla
 
52 - 15.02.19 - 12:40
а, кстати, если шибко правильный, приведи пример реально работающего НЕ овнокода, который будет еще и с типовой совместим? чет я не заметил от тебя ничего конкретного, кроме общих фраз... слабо? в конфу заглянул, молодец, наконец то хоть кто то с ней знаком не понаслышке, но что конкретно предлагаешь изменить? переписать весь блок учета НДС? видел я таких умельцев, они никак с 2017 года теперь обновится не могут... пока одно обновление подготовят - 1С пять новых выпустят...
и это не мое творчество, а 1С; мое творчество работает годами без сбоев и не только на 1С написанное


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