Имя: Пароль:
1C
1С v8
НДС в УТ 10.3
0 varyag
 
13.02.13
11:10
Здравствуйте. Тут возникла такая непонятная задачка.. В Общем у клиента стоит УТ 10.3. Раньше они вели там одну организацию ИП, продавали всё со ставкой НДС "Без НДС" (подтягивается из номенклатуры). Теперь открыли ООО и им стало необходимо чтобы в реализациях товаров и услуг по ООО ставилась ставка 18%, а по ИП как и раньше БезНДС(ну или вообще отключить учёт НДС). В учётной политике если даже поставить галочку "Организация не является плательщиком НДС" то всё равно в реализациях УчетНДС=Истина, и ставится ставка НДС из номенклатуры. Короче вопрос, можно ли как то это настроить типовыми методами? а если нет, то как лучше(оптимальней) реализовать?
1 varyag
 
13.02.13
11:15
Ну чего кто подскажет?
2 varyag
 
13.02.13
12:07
ап"""
3 Zombi
 
13.02.13
12:15
Ставка НДС задается в настройках пользователя.
4 varyag
 
13.02.13
12:32
(3) это понятно. Но мне надо в разрезе организаций. Вот я задал пользователю ставку 18% допустим. Но мне надо чтобы по одной организации с НДС а по другой без НДС
5 Shrike
 
13.02.13
12:49
Учитывать НДС, всегда Истина, в документах реализации. А в ТЧ ставка подтягивается из учетной политики организации + карточки товара. Посмотри отладчиком, что у тебя происходит при выборе товара.
6 varyag
 
13.02.13
12:54
(5) А каким образом из учетной политики ставка подтягивается?
Процедура ЗаполнитьСтавкуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект, ВидДокумента = "") Экспорт

   ИмяТабличнойЧасти = ОбщегоНазначения.ПолучитьИмяТабличнойЧастиПоСсылкеНаСтроку(СтрокаТабличнойЧасти);
   МетаданныеДокумента = ДокументОбъект.Метаданные();

   Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("СтавкаНДС", МетаданныеДокумента, ИмяТабличнойЧасти) Тогда
       НеЯвляетсяРезидентом = ?(ОбщегоНазначения.ЕстьРеквизитДокумента("Контрагент", МетаданныеДокумента) И ТипЗнч(ДокументОбъект.Контрагент) = Тип("СправочникСсылка.Контрагенты"), ?(ДокументОбъект.Контрагент.НеЯвляетсяРезидентом = Истина, Истина, Ложь), Ложь);
       ЕстьДоговорКонтрагента = ОбщегоНазначения.ЕстьРеквизитДокумента("ДоговорКонтрагента", МетаданныеДокумента);
       РеализацияНаЭкспорт = ?(ЕстьДоговорКонтрагента, ?(ДокументОбъект.ДоговорКонтрагента.РеализацияНаЭкспорт = Истина, Истина, Ложь), Ложь);
       НалоговыйАгентНерезидент = ?(ЕстьДоговорКонтрагента, ?(ДокументОбъект.ДоговорКонтрагента.УчетАгентскогоНДС = Истина И ДокументОбъект.ДоговорКонтрагента.ВидАгентскогоДоговора = Перечисления.ВидыАгентскихДоговоров.Нерезидент, Истина, Ложь), Ложь);
       Если НеЯвляетсяРезидентом И Не НалоговыйАгентНерезидент И ВидДокумента = "Приобретение" Тогда
           СтрокаТабличнойЧасти.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
       ИначеЕсли РеализацияНаЭкспорт И ВидДокумента = "Реализация" Тогда
           СтрокаТабличнойЧасти.СтавкаНДС = Перечисления.СтавкиНДС.НДС0;
       Иначе
           СтрокаТабличнойЧасти.СтавкаНДС = СтрокаТабличнойЧасти.Номенклатура.СтавкаНДС;
       КонецЕсли;
   КонецЕсли;

КонецПроцедуры // ЗаполнитьСтавкуНДСТабЧасти()
7 varyag
 
13.02.13
12:59
отсюда видно, что для всех видов документа (кроме "Приобретение" или если на экспорт) подтягивается из номенклатуры. Поэтому я и не могу придумать, что делать.. Можно конечно здесь поправить тупо что для конкретной организации ставить конкретную ставку, или по признаку какому-нибудь. Но как то неочень.. Кто ещё чего скажет?
8 Shrike
 
13.02.13
13:00
Процедура ЗаполнитьСтавкуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект, ВидДокумента = "") Экспорт

   ИмяТабличнойЧасти = ОбщегоНазначения.ПолучитьИмяТабличнойЧастиПоСсылкеНаСтроку(СтрокаТабличнойЧасти);
   МетаданныеДокумента = ДокументОбъект.Метаданные();

   Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("СтавкаНДС", МетаданныеДокумента, ИмяТабличнойЧасти) Тогда
       НеЯвляетсяРезидентом = ?(ОбщегоНазначения.ЕстьРеквизитДокумента("Контрагент", МетаданныеДокумента) И ТипЗнч(ДокументОбъект.Контрагент) = Тип("СправочникСсылка.Контрагенты"), ?(ДокументОбъект.Контрагент.НеЯвляетсяРезидентом = Истина, Истина, Ложь), Ложь);
       ЕстьДоговорКонтрагента = ОбщегоНазначения.ЕстьРеквизитДокумента("ДоговорКонтрагента", МетаданныеДокумента);
       РеализацияНаЭкспорт = ?(ЕстьДоговорКонтрагента, ?(ДокументОбъект.ДоговорКонтрагента.РеализацияНаЭкспорт = Истина, Истина, Ложь), Ложь);
       НалоговыйАгентНерезидент = ?(ЕстьДоговорКонтрагента, ?(ДокументОбъект.ДоговорКонтрагента.УчетАгентскогоНДС = Истина И ДокументОбъект.ДоговорКонтрагента.ВидАгентскогоДоговора = Перечисления.ВидыАгентскихДоговоров.Нерезидент, Истина, Ложь), Ложь);
       Если НеЯвляетсяРезидентом И Не НалоговыйАгентНерезидент И ВидДокумента = "Приобретение" Тогда
           СтрокаТабличнойЧасти.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
       ИначеЕсли ВидДокумента = "Реализация" Тогда
           Если РеализацияНаЭкспорт Тогда
               СтрокаТабличнойЧасти.СтавкаНДС = Перечисления.СтавкиНДС.НДС0;
           Иначе
               Отказ = Ложь;
               ПараметрыУП = ОбщегоНазначения.ПолучитьПараметрыУчетнойПолитикиНалоговыйУчет(ДокументОбъект.Дата, Отказ, ДокументОбъект.Организация);
               ОрганизацияНеЯвляетсяПлательщикомНДС = ?(Отказ, Истина, ПараметрыУП.ОрганизацияНеЯвляетсяПлательщикомНДС);
               Если ОрганизацияНеЯвляетсяПлательщикомНДС Тогда
                   СтрокаТабличнойЧасти.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
               Иначе
                   СтрокаТабличнойЧасти.СтавкаНДС = СтрокаТабличнойЧасти.Номенклатура.СтавкаНДС;
               КонецЕсли;
           КонецЕсли;
       Иначе
           СтрокаТабличнойЧасти.СтавкаНДС = СтрокаТабличнойЧасти.Номенклатура.СтавкаНДС;
       КонецЕсли;
   КонецЕсли;

КонецПроцедуры // ЗаполнитьСтавкуНДСТабЧасти()
9 Shrike
 
13.02.13
13:00
видимо конфа доработанная
10 varyag
 
13.02.13
13:57
(9) Спасибо друг) Конфа то доработанная, но не в этом месте. Смотрел в конфигурации поставщика, так же... В общем то что-то подобное и хотел сделать. Значит так и сделаю