Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
в семерке искать не надо. надо знать.
для ТиС/Комплексной:
менять в трех местах по коду (насколько мне навскиду помнится, менял недели три назад)
дополнить перечисление ставок НДС.
менять в карточке номенклатуры.
менять в настройках пользователя.
Как вообще искать в семёрке, где
в семерке искать не надо. надо знать.
для ТиС/Комплексной:
менять в трех местах по коду (насколько мне навскиду помнится, менял недели три назад)
дополнить перечисление ставок НДС.
менять в карточке номенклатуры.
менять в настройках пользователя.
(5)
типа такого:
типа такого:
Функция глВыделяемыйНДС(Ставка) Экспорт
Если ПустоеЗначение(Ставка)=1 Тогда
Возврат 0;
ИначеЕсли(Ставка=Перечисление.СтавкиНДС.БезНДС) Тогда
Возврат 0;
ИначеЕсли (Ставка=Перечисление.СтавкиНДС.НДС10)
или (Ставка=Перечисление.СтавкиНДС.НДС10_110) Тогда
Возврат 0.09090909090909090909090909091; // Это 1/11, только точнее
.....
//добавка +
ИначеЕсли (Ставка=Перечисление.СтавкиНДС.НДС5) Тогда
Возврат 0.0476190476190476;
ИначеЕсли (Ставка=Перечисление.СтавкиНДС.НДС7) Тогда
Возврат 0.0654205607476635;
Иначе
//добавка-
Сообщить("Функция глВыделяемыйНДС(Ставка): неверная ставка");
Возврат 0;
КонецЕсли;
КонецФункции //глВыделяемыйНДС()
Функция глНачисляемыйНДС(Ставка) Экспорт
Если ПустоеЗначение(Ставка)=1 Тогда
Возврат 0;
ИначеЕсли(Ставка=Перечисление.СтавкиНДС.БезНДС) Тогда
Возврат 0;
...
//добавка+
ИначеЕсли (Ставка=Перечисление.СтавкиНДС.НДС5) Тогда
Возврат 0.05;
ИначеЕсли (Ставка=Перечисление.СтавкиНДС.НДС7) Тогда
Возврат 0.07;
//добавка-
Иначе
Сообщить("Функция глНачисляемыйНДС(Ставка): неверная ставка");
Возврат 0;
КонецЕсли;
КонецФункции //глНачисляемыйНДС()
Показать
(16) Я имею ввиду только в этом модуле изменения ?
Функция глПоказательДокумента(Док, ИмяПоказателя) Экспорт
Если Док.Вид() = "ИнвентаризацияТМЦ" Тогда
ВклНДС = 1;
ВклНП = 1;
Иначе
ВклНДС = Док.ВариантРасчетаНалогов.СуммаВключаетНДС;
ВклНП = Док.ВариантРасчетаНалогов.СуммаВключаетНП;
КонецЕсли;
СтНДС = глСтавкаНалога(Док, "НДС").Ставка;
СтНП = глСтавкаНалога(Док, "НП").Ставка;
Если ((Док.Вид() = "ПоступлениеОС") или (Док.Вид() = "ПоступлениеНМА")) Тогда
Сумма = Док.Стоимость;
ИначеЕсли ((Док.Вид() = "ПередачаОС") или (Док.Вид() = "ПередачаНМА")) Тогда
Сумма = Док.Цена;
ИначеЕсли Док.Вид() = "ИнвентаризацияТМЦ" Тогда
Сумма = Док.СуммаПродажи;
Иначе
Сумма = Док.Сумма;
КонецЕсли;
НДС = Док.НДС;
НП = Док.НП;
Результат = 0;
Если ВРег(ИмяПоказателя) = ВРег("СуммаБезНалогов") Тогда
Результат = Сумма;
Если ВклНДС = 1 Тогда
Результат = Результат - НДС;
КонецЕсли;
Если ВклНП = 1 Тогда
Результат = Результат - НП;
КонецЕсли;
ИначеЕсли (ВРег(ИмяПоказателя) = ВРег("НДС")) Тогда // расчет суммы НДС
Если ВклНП = 1 Тогда
Если ВклНДС = 1 Тогда // НДС в сумме, НП в сумме
Если (СтНДС = 20) или (СтНДС = 18) или (СтНДС = 10) или (СтНДС = 0) или (СтНДС = 5) или (СтНДС = 7) Тогда
Результат = Сумма*СтНДС*100/(100 + СтНДС)/(100 + СтНП);
Иначе
Результат = Сумма*СтНДС/(100 + СтНП);
КонецЕсли;
Иначе // НДС сверху, НП в сумме
Если (СтНДС = 20) или (СтНДС = 18) или (СтНДС = 10) или (СтНДС = 0) или (СтНДС = 5) или (СтНДС = 7) Тогда
Результат = Сумма*СтНДС/(100 + СтНП + СтНДС*СтНП/100);
Иначе
Результат = Сумма*(1-СтНП/(100 - СтНДС + СтНП))*СтНДС/(100 - СтНДС);
КонецЕсли;
КонецЕсли;
Иначе
Если ВклНДС = 1 Тогда // НДС в сумме, НП сверху
Если (СтНДС = 20) или (СтНДС = 18) или (СтНДС = 10) или (СтНДС = 0) или (СтНДС = 5) или (СтНДС = 7)Тогда
Результат = Сумма*СтНДС/(100 + СтНДС);
Иначе
Результат = Сумма*СтНДС/100;
КонецЕсли;
Иначе // НДС сверху, НП сверху
Если (СтНДС = 20) или (СтНДС = 18) или (СтНДС = 10) или (СтНДС = 0) или (СтНДС = 5) или (СтНДС = 7) Тогда
Результат = Сумма*СтНДС/100;
Иначе
Результат = Сумма*СтНДС/(100 - СтНДС);
КонецЕсли;
КонецЕсли;
КонецЕсли;
ИначеЕсли ВРег(ИмяПоказателя) = ВРег("НП") Тогда // расчет суммы НП
Если ВклНП = 1 Тогда
Если ВклНДС = 1 Тогда // НДС в сумме, НП в сумме
Результат = Сумма*СтНП/(100 + СтНП);
Иначе // НДС сверху, НП в сумме
Если (СтНДС = 20) или (СтНДС = 18) или (СтНДС = 10) или (СтНДС = 0) или (СтНДС = 5) или (СтНДС = 7) Тогда
Результат = Сумма*(СтНДС/(100 + СтНП + СтНДС*СтНП/100)+1)*СтНП/(СтНП+100);
Иначе
Результат = Сумма*СтНП/(100 - СтНДС + СтНП);
КонецЕсли;
КонецЕсли;
Иначе
Если ВклНДС = 1 Тогда // НДС в сумме, НП сверху
Результат = Сумма*СтНП/100;
Иначе // НДС сверху, НП сверху
Если (СтНДС = 20) или (СтНДС = 18) или (СтНДС = 10) или (СтНДС = 0) или (СтНДС = 5) или (СтНДС = 7) Тогда
Результат = Сумма*(100 + СтНДС)*СтНП/10000;
Иначе
Результат = Сумма*СтНП/(100 - СтНДС);
КонецЕсли;
КонецЕсли;
КонецЕсли;
ИначеЕсли ВРег(ИмяПоказателя) = ВРег("СуммаСНалогами") Тогда // расет суммы "Всего"
Результат = Сумма;
Если ВклНДС = 0 Тогда
Результат = Результат + НДС;
КонецЕсли;
Если ВклНП = 0 Тогда
Результат = Результат + НП;
КонецЕсли;
КонецЕсли;
Возврат Окр(Результат, 2, 1);
КонецФункции // глПоказательДокумента()
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот