• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Помогите новичку!

  • Автор темы iliych747
  • Дата начала
I

iliych747

1С 7.7 Конфигурация "Бухгалтерский учет, редакция 4.5" 7.70.504
В документе "Отгрузка товаров, продукции" в пункте "Налоги" можно выбрать только 2 пункта из 4-х: "Без налогов" и "НДС сверху".
Как сделать, чтобы выбирались все пункты справочника "Варианты расчета налогов"? Как например в документе "Поступление ОС"...
 
I

iliych747

Выкладываю текст процедуры "ПриВыбореВариантаРасчетаНалогов()" из модуля формы документа, которая вызывается при раскрытии списка "Вариант расчета налогов". Идентификатор этого поля "ВариантРасчетаНалогов".

// ПриВыбореВариантаРасчетаНалогов()
//
// Вызывается из формул элементов диалога:
// Поле ввода "ВариантРасчетаНалогов".
//
// Описание:
// Пересчитывает суммы в документе при смене варианта расчета налогов.
//
Процедура ПриВыбореВариантаРасчетаНалогов()

Если ВариантРасчетаНалогов = ТекущийВариантРасчетаНалогов Тогда
Возврат
КонецЕсли;

Если КоличествоСтрок() > 0 Тогда
Ответ = Вопрос("Пересчитать суммы налогов в существующих строках
|табличной части (суммы налогов будут
|обновлены в соответствии с выбранным вариантом)?", "Да+Нет+Отмена");
Если Ответ = "Да" Тогда

ОбщееКоличество = КоличествоСтрок();
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
РассчитатьНалоги();
Состояние("Обработано: " + Окр(НомерСтроки/ОбщееКоличество*100, 0, 1) + "%");
КонецЦикла;

ИначеЕсли Ответ = "Отмена" Тогда
ВариантРасчетаНалогов = ТекущийВариантРасчетаНалогов;
КонецЕсли;

КонецЕсли;
УчитыватьНП = глПризнакУчетаНалога(Контекст, "НП");
УчитыватьНДС = глПризнакУчетаНалога(Контекст, "НДС");
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
НДС = ?(УчитыватьНДС = 0, 0, НДС);
НП = ?(УчитыватьНП = 0, 0, НП);
КонецЦикла;
Форма.НДС.Видимость(УчитыватьНДС);
Форма.НП.Видимость(УчитыватьНП);

КонецПроцедуры // ПриВыбореВариантаРасчетаНалогов()

Также в модуле формы есть процедура "ВариантРасчетаНалогов()", название которой совпадает с идентификатором.

Выкладываю текст этой процедуры:

// ВариантРасчетаНалогов()
//
// Вызывается из формул элементов диалога:
// Нет.
//
// Описание:
// Подбирает вариант расчета налогов.
//
Процедура ВариантРасчетаНалогов(ВРН)
Если (ВРН.СтавкаНП.Ставка = 0) и
(ВРН.СтавкаНДС.Ставка = 0) Тогда
ВариантРасчетаНалогов = ВРН;

Иначе // попробуем найти подходящий из существующих вариантов расчета налогов

СпрВариант = СоздатьОбъект("Справочник.ВариантыРасчетаНалогов");
СпрВариант.ВыбратьЭлементы();
Пока СпрВариант.ПолучитьЭлемент() = 1 Цикл

Если ((ВРН.СтавкаНДС.Ставка = 0)
и (СпрВариант.СтавкаНДС = ВРН.СтавкаНДС)
и (СпрВариант.СуммаВключаетНДС = ВРН.СуммаВключаетНДС))

или ((ВРН.СтавкаНДС.Ставка <> 0)
и (СпрВариант.СтавкаНДС.Выбран() = 0)
и (СпрВариант.СуммаВключаетНДС = ВРН.СуммаВключаетНДС)) Тогда

Если ((ВРН.СтавкаНП.Ставка = 0)
и (СпрВариант.СтавкаНП = ВРН.СтавкаНП)
и (СпрВариант.СуммаВключаетНП = ВРН.СуммаВключаетНП))

или ((ВРН.СтавкаНП.Ставка <> 0)
и (СпрВариант.СтавкаНП.Выбран() = 0)
и (СпрВариант.СуммаВключаетНП = ВРН.СуммаВключаетНП)) Тогда

ВариантРасчетаНалогов = СпрВариант.ТекущийЭлемент();
Прервать;
КонецЕсли;
КонецЕсли;

КонецЦикла;

КонецЕсли;
// Форма.НДС.Видимость(УчитыватьНДС);
// Форма.НП.Видимость(УчитыватьНП);
КонецПроцедуры // ВариантРасчетаНалогов()

Други!!!!!!!!!!!!!
ПОДСКАЖИТЕ ГДЕ КОПАТЬ!!!
 
V

vbs

В расходной накладной допускается выбор только тех вариантов налогов, где ставка = 0,
Т.е, если в справочнике "ВариантыРасчетаНалогов" явно указана ставка, то данный элемент не попадает в список
допустимых вариантов для выбора.
Возможный подход - в справочнике "ВариантыРасчетаНалогов" поставить переключатель в вид "Использовать ставку из справочника"
 
I

iliych747

Для какого налога переключатель поменять?
У меня переключатель стоит на пункте "Использовать ставку из справочника" только для "НДС сверху"...
Остальные : "Без налогов", "НДС в сумме 18%" и "НДС Сверху 18%" - переключатель стоит в "Использовать ставку...."

Понял!!!!
Теперь пункт появляется :) ...
Сейчас буду смотреть как считать будет....

;) Работает..Но налоги не пересчитывает... :(
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!