#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
#Область Проведение
Процедура ЗарегистрироватьУчетныеМеханизмы(МеханизмыДокумента) Экспорт
МеханизмыДокумента.Добавить("ИмущественныеНалоги");
МеханизмыДокумента.Добавить("ОсновныеСредства");
МеханизмыДокумента.Добавить("РеестрДокументов");
КонецПроцедуры
Функция ДанныеДокументаДляПроведения(Документ, Регистры, ДопПараметры = Неопределено) Экспорт
Если ДопПараметры = Неопределено Тогда
ДопПараметры = ПроведениеДокументов.ДопПараметрыИнициализироватьДанныеДокументаДляПроведения();
КонецЕсли;
Если ТипЗнч(Документ) = Тип("ДокументОбъект.ПараметрыНачисленияТранспортногоНалога") Тогда
ДокументСсылка = Документ.Ссылка;
Иначе
ДокументСсылка = Документ;
КонецЕсли;
Запрос = Новый Запрос;
ТекстыЗапроса = Новый СписокЗначений;
Если Не ДопПараметры.ПолучитьТекстыЗапроса Тогда
ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка, ДопПараметры);
ТекстЗапросаТаблицаРеестрДокументов(ТекстыЗапроса, Регистры);
ТекстЗапросаТаблицаДокументыПоОС(ТекстыЗапроса, Регистры);
ТекстЗапросаТаблицаПараметрыНачисленияТранспортногоНалога(ТекстыЗапроса, Регистры);
ТекстЗапросаТаблицаСпособыОтраженияРасходовПоИмущественнымНалогам(ТекстыЗапроса, Регистры);
КонецЕсли;
Возврат ПроведениеДокументов.ИнициализироватьДанныеДокументаДляПроведения(Запрос, ТекстыЗапроса, ДопПараметры);
КонецФункции
Функция ТаблицыОтложенногоФормированияДвижений(МенеджерВременныхТаблиц) Экспорт
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
ПолучитьДанныеДокумента(Запрос);
ЗначенияПараметровПроведения = ЗначенияПараметровПроведения();
Для каждого КлючИЗначение Из ЗначенияПараметровПроведения Цикл
Запрос.УстановитьПараметр(КлючИЗначение.Ключ, КлючИЗначение.Значение);
КонецЦикла;
ТекстыЗапроса = Новый СписокЗначений;
ТекстЗапросаТаблицаПараметрыНачисленияТранспортногоНалога(ТекстыЗапроса, Неопределено);
ТаблицыДвижений = ПроведениеДокументов.ИнициализироватьДанныеДокументаДляПроведения(Запрос, ТекстыЗапроса);
Возврат ТаблицыДвижений;
КонецФункции
#КонецОбласти
#Область ДляВызоваИзДругихПодсистем
Процедура ПриОпределенииНастроекВерсионированияОбъектов(Настройки) Экспорт
Возврат;
КонецПроцедуры
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
Ограничение.Текст =
"РазрешитьЧтениеИзменение
|ГДЕ
| ЗначениеРазрешено(Организация)";
КонецПроцедуры
#КонецОбласти
#Область Прочее
Функция КатегорииТСПоКодуВида() Экспорт
КатегорииТСПоКодуВида = Новый Соответствие;
Макет = ПолучитьМакет("КодыВидовИКатегорииТС");
КодыВидовИКатегорииТС = ОбщегоНазначения.ПрочитатьXMLВТаблицу(Макет.ПолучитьТекст()).Данные;
Для Каждого СтрокаВида Из КодыВидовИКатегорииТС Цикл
КатегорииТСПоКодуВида.Вставить(СтрокаВида.КодВида, СтрокаВида.НомерКатегории);
КонецЦикла;
Возврат КатегорииТСПоКодуВида;
КонецФункции
Функция ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании) Экспорт
Если ПравоДоступа("Добавление", Метаданные.Документы.ПараметрыНачисленияТранспортногоНалога) Тогда
КомандаСоздатьНаОсновании = КомандыСозданияНаОсновании.Добавить();
КомандаСоздатьНаОсновании.Менеджер = Метаданные.Документы.ПараметрыНачисленияТранспортногоНалога.ПолноеИмя();
КомандаСоздатьНаОсновании.Представление = ОбщегоНазначенияУТ.ПредставлениеОбъекта(Метаданные.Документы.ПараметрыНачисленияТранспортногоНалога);
КомандаСоздатьНаОсновании.ФункциональныеОпции = "ИспользоватьРеглУчет";
КомандаСоздатьНаОсновании.РежимЗаписи = "Проводить";
Возврат КомандаСоздатьНаОсновании;
КонецЕсли;
Возврат Неопределено;
КонецФункции
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#Область Проведение
Функция АдаптированныйТекстЗапросаДвиженийПоРегистру(ИмяРегистра) Экспорт
ТекстыЗапроса = Новый СписокЗначений;
ПолноеИмяДокумента = "Документ.ПараметрыНачисленияТранспортногоНалога";
ЗначенияПараметров = ЗначенияПараметровПроведения();
ПереопределениеРасчетаПараметров = Новый Структура;
ПереопределениеРасчетаПараметров.Вставить("НомерНаПечать", """""");
ВЗапросеЕстьИсточник = Истина;
Если ИмяРегистра = "СпособыОтраженияРасходовПоИмущественнымНалогам" Тогда
ТекстЗапроса = ТекстЗапросаТаблицаСпособыОтраженияРасходовПоИмущественнымНалогам(ТекстыЗапроса, Неопределено);
СинонимТаблицыДокумента = "ТаблицаОС";
ИначеЕсли ИмяРегистра = "ПараметрыНачисленияТранспортногоНалога" Тогда
ТекстЗапроса = ТекстЗапросаТаблицаПараметрыНачисленияТранспортногоНалога(ТекстыЗапроса, Неопределено);
СинонимТаблицыДокумента = "ТаблицаОС";
ИначеЕсли ИмяРегистра = "РеестрДокументов" Тогда
ТекстЗапроса = ТекстЗапросаТаблицаРеестрДокументов(ТекстыЗапроса, ИмяРегистра);
СинонимТаблицыДокумента = "ДанныеДокумента";
ИначеЕсли ИмяРегистра = "ДокументыПоОС" Тогда
ТекстЗапроса = ТекстЗапросаТаблицаДокументыПоОС(ТекстыЗапроса, ИмяРегистра);
СинонимТаблицыДокумента = "ДанныеДокумента";
Иначе
ТекстИсключения = НСтр("ru = 'В документе %ПолноеИмяДокумента% не реализована адаптация текста запроса формирования движений по регистру %ИмяРегистра%.'");
ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ПолноеИмяДокумента%", ПолноеИмяДокумента);
ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ИмяРегистра%", ИмяРегистра);
ВызватьИсключение ТекстИсключения;
КонецЕсли;
Если ИмяРегистра = "РеестрДокументов"
ИЛИ ИмяРегистра = "ДокументыПоОС" Тогда
ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросПроведенияПоНезависимомуРегистру(
ТекстЗапроса,
ПолноеИмяДокумента,
СинонимТаблицыДокумента,
ВЗапросеЕстьИсточник,
ПереопределениеРасчетаПараметров);
Иначе
ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросМеханизмаПроведения(
ТекстЗапроса,
ПолноеИмяДокумента,
СинонимТаблицыДокумента,
ПереопределениеРасчетаПараметров);
КонецЕсли;
Результат = ОбновлениеИнформационнойБазыУТ.РезультатАдаптацииЗапроса();
Результат.ЗначенияПараметров = ЗначенияПараметров;
Результат.ТекстЗапроса = ТекстЗапроса;
Возврат Результат;
КонецФункции
Функция ДополнительныеИсточникиДанныхДляДвижений(ИмяРегистра) Экспорт
ИсточникиДанных = Новый Соответствие;
Возврат ИсточникиДанных;
КонецФункции
Процедура ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка, ДопПараметры)
ПроведениеДокументов.ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка, ДопПараметры);
СформироватьТаблицуВтСписокДокументов(Запрос);
ПолучитьДанныеДокумента(Запрос);
Запрос.Текст =
"ВЫБРАТЬ
| ДанныеДокумента.Период КАК Период,
| ДанныеДокумента.Номер КАК Номер,
| ДанныеДокумента.Организация КАК Организация
|ИЗ
| ДанныеДокументаРеквизиты КАК ДанныеДокумента";
Результат = Запрос.Выполнить();
Реквизиты = Результат.Выбрать();
Реквизиты.Следующий();
ЗначенияПараметровПроведения = ЗначенияПараметровПроведения(Реквизиты);
Для каждого КлючИЗначение Из ЗначенияПараметровПроведения Цикл
Запрос.УстановитьПараметр(КлючИЗначение.Ключ, КлючИЗначение.Значение);
КонецЦикла;
КонецПроцедуры
Процедура СформироватьТаблицуВтСписокДокументов(Запрос)
Запрос.Текст =
"ВЫБРАТЬ
| СписокДокументов.Ссылка КАК Ссылка,
| СписокДокументов.Организация КАК Организация,
| СписокДокументов.Дата КАК Период
|
|ПОМЕСТИТЬ ВтСписокДокументов
|
|ИЗ
| Документ.ПараметрыНачисленияТранспортногоНалога КАК СписокДокументов
|
|ГДЕ
| СписокДокументов.Ссылка = &Ссылка
|
|ИНДЕКСИРОВАТЬ ПО
| Ссылка
|";
Запрос.Выполнить();
КонецПроцедуры
Процедура ПолучитьДанныеДокумента(Запрос)
СписокЗапросов = Новый Массив;
#Область ДанныеДокументаРеквизиты
ТекстЗапроса =
"ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ДанныеДокумента.Ссылка КАК Ссылка,
| ДанныеДокумента.Номер КАК Номер,
| ДанныеДокумента.ПометкаУдаления КАК ПометкаУдаления,
| ДанныеДокумента.Проведен КАК Проведен,
| ДанныеДокумента.Комментарий КАК Комментарий,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Ответственный КАК Ответственный,
| ДанныеДокумента.ПостановкаНаУчетВНалоговомОргане КАК ПостановкаНаУчетВНалоговомОргане,
| ДанныеДокумента.НалоговыйОрган КАК НалоговыйОрган,
| ДанныеДокумента.КодПоОКТМО КАК КодПоОКТМО,
| ДанныеДокумента.КодПоОКАТО КАК КодПоОКАТО,
| ДанныеДокумента.КодВидаТранспортногоСредства КАК КодВидаТранспортногоСредства,
| ДанныеДокумента.НалоговаяБаза КАК НалоговаяБаза,
| ДанныеДокумента.ЕдиницаИзмеренияНалоговойБазы КАК ЕдиницаИзмеренияНалоговойБазы,
| ДанныеДокумента.НалоговаяСтавка КАК НалоговаяСтавка,
| ДанныеДокумента.СтавкаОпределяетсяАвтоматически КАК СтавкаОпределяетсяАвтоматически,
| ДанныеДокумента.НалоговаяЛьгота КАК НалоговаяЛьгота,
| ДанныеДокумента.КодНалоговойЛьготы КАК КодНалоговойЛьготы,
| ДанныеДокумента.ЛьготнаяСтавка КАК ЛьготнаяСтавка,
| ДанныеДокумента.ПроцентУменьшения КАК ПроцентУменьшения,
| ДанныеДокумента.СуммаУменьшения КАК СуммаУменьшения,
| ДанныеДокумента.РегиональныйКодЛьготы КАК РегиональныйКодЛьготы,
| ДанныеДокумента.ЭкологическийКласс КАК ЭкологическийКласс,
| ДанныеДокумента.ПовышающийКоэффициент КАК ПовышающийКоэффициент,
| ДанныеДокумента.НалоговаяСтавкаЗависитОтГодаВыпускаТС КАК НалоговаяСтавкаЗависитОтГодаВыпускаТС,
| ДанныеДокумента.УказаныСпособыОтражениеРасходов КАК УказаныСпособыОтражениеРасходов,
| ДанныеДокумента.РежимИсправленияСПрошлойДаты КАК РежимИсправленияСПрошлойДаты,
| КОНЕЦПЕРИОДА(ДанныеДокумента.НачалоДействия, ДЕНЬ) КАК НачалоДействия
|
|ПОМЕСТИТЬ ДанныеДокументаРеквизиты
|
|ИЗ
| Документ.ПараметрыНачисленияТранспортногоНалога КАК ДанныеДокумента
|
|ГДЕ
| ДанныеДокумента.Ссылка В (
| ВЫБРАТЬ
| ВтСписокДокументов.Ссылка
| ИЗ
| ВтСписокДокументов КАК ВтСписокДокументов)
|
|ИНДЕКСИРОВАТЬ ПО
| Ссылка
|";
СписокЗапросов.Добавить(ТекстЗапроса);
#КонецОбласти
#Область ДанныеДокументаТаблицаОС
ТекстЗапроса =
"ВЫБРАТЬ
| ТаблицаДокумента.Ссылка КАК Ссылка,
| ТаблицаДокумента.ОсновноеСредство КАК ОсновноеСредство,
| ТаблицаДокумента.ОсновноеСредство КАК ОбъектУчета,
|
| ТаблицаДокумента.ДатаРегистрации КАК ДатаРегистрации,
| ТаблицаДокумента.РегистрационныйЗнак КАК РегистрационныйЗнак,
| ТаблицаДокумента.ИдентификационныйНомер КАК ИдентификационныйНомер,
| ТаблицаДокумента.Марка КАК Марка,
| ТаблицаДокумента.ОбщаяСобственность КАК ОбщаяСобственность,
| ТаблицаДокумента.ДоляВПравеОбщейСобственностиЧислитель КАК ДоляВПравеОбщейСобственностиЧислитель,
| ТаблицаДокумента.ДоляВПравеОбщейСобственностиЗнаменатель КАК ДоляВПравеОбщейСобственностиЗнаменатель
|
|ПОМЕСТИТЬ ДанныеДокументаТаблицаОС
|
|ИЗ
| Документ.ПараметрыНачисленияТранспортногоНалога.ОС КАК ТаблицаДокумента
|
|ГДЕ
| ТаблицаДокумента.Ссылка В (
| ВЫБРАТЬ
| ВтСписокДокументов.Ссылка
| ИЗ
| ВтСписокДокументов КАК ВтСписокДокументов)
|
|ИНДЕКСИРОВАТЬ ПО
| Ссылка,
| ОсновноеСредство
|";
СписокЗапросов.Добавить(ТекстЗапроса);
#КонецОбласти
#Область ДанныеДокументаТаблицаОтражениеРасходов
ТекстЗапроса =
"ВЫБРАТЬ
| ТаблицаДокумента.Ссылка КАК Ссылка,
| ТаблицаДокумента.НомерСтроки КАК НомерСтроки
|
|ПОМЕСТИТЬ ДанныеДокументаТаблицаОтражениеРасходов
|
|ИЗ
| Документ.ПараметрыНачисленияТранспортногоНалога.ОтражениеРасходов КАК ТаблицаДокумента
|
|ГДЕ
| ТаблицаДокумента.Ссылка В (
| ВЫБРАТЬ
| ВтСписокДокументов.Ссылка
| ИЗ
| ВтСписокДокументов КАК ВтСписокДокументов)
|
|ИНДЕКСИРОВАТЬ ПО
| Ссылка
|";
СписокЗапросов.Добавить(ТекстЗапроса);
#КонецОбласти
Запрос.Текст = СтрСоединить(СписокЗапросов, ОбщегоНазначения.РазделительПакетаЗапросов());
Запрос.Выполнить();
КонецПроцедуры
Функция ЗначенияПараметровПроведения(Реквизиты = Неопределено)
ЗначенияПараметровПроведения = Новый Структура;
ЗначенияПараметровПроведения.Вставить("ИдентификаторМетаданных", ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Документ.ПараметрыНачисленияТранспортногоНалога"));
ЗначенияПараметровПроведения.Вставить("ХозяйственнаяОперация", Перечисления.ХозяйственныеОперации.ПараметрыНачисленияТранспортногоНалога);
Если Реквизиты <> Неопределено Тогда
ЗначенияПараметровПроведения.Вставить("НомерНаПечать", ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(Реквизиты.Номер));
КонецЕсли;
Возврат ЗначенияПараметровПроведения;
КонецФункции
Функция ТекстЗапросаТаблицаПараметрыНачисленияТранспортногоНалога(ТекстыЗапроса, Регистры)
ИмяРегистра = "ПараметрыНачисленияТранспортногоНалога";
Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
ВнеоборотныеАктивыЛокализация.ТекстЗапросаТаблицаВтПараметрыНачисленияТранспортногоНалога(ТекстыЗапроса);
ТекстЗапроса =
"ВЫБРАТЬ
| ДанныеДокумента.Ссылка КАК Регистратор,
|
| ВЫБОР
| КОГДА ТаблицаОС.ДатаРегистрации <> ДАТАВРЕМЯ(1,1,1)
| И НЕ ДанныеДокумента.РежимИсправленияСПрошлойДаты
| ТОГДА
| ВЫБОР
| КОГДА РАЗНОСТЬДАТ(ТаблицаОС.ДатаРегистрации,ДанныеДокумента.Период,МЕСЯЦ) > 0 ТОГДА
| НАЧАЛОПЕРИОДА(ДанныеДокумента.Период, ДЕНЬ)
| ИНАЧЕ
| ТаблицаОС.ДатаРегистрации
| КОНЕЦ
| ИНАЧЕ
| НАЧАЛОПЕРИОДА(ДанныеДокумента.Период, ДЕНЬ)
| КОНЕЦ КАК Период,
|
| ДАТАВРЕМЯ(1,1,1) КАК ДатаИсправления,
|
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаОС.ОсновноеСредство КАК ОсновноеСредство,
|
| ИСТИНА КАК ВключатьВНалоговуюБазу,
| ТаблицаОС.РегистрационныйЗнак КАК РегистрационныйЗнак,
| ТаблицаОС.ИдентификационныйНомер КАК ИдентификационныйНомер,
| ТаблицаОС.Марка КАК Марка,
| ДанныеДокумента.ПостановкаНаУчетВНалоговомОргане КАК ПостановкаНаУчетВНалоговомОргане,
| ДанныеДокумента.НалоговыйОрган КАК НалоговыйОрган,
| ДанныеДокумента.КодПоОКТМО КАК КодПоОКТМО,
| ДанныеДокумента.КодПоОКАТО КАК КодПоОКАТО,
| ДанныеДокумента.КодВидаТранспортногоСредства КАК КодВидаТранспортногоСредства,
| ДанныеДокумента.НалоговаяБаза КАК НалоговаяБаза,
| ДанныеДокумента.ЕдиницаИзмеренияНалоговойБазы КАК ЕдиницаИзмеренияНалоговойБазы,
| ДанныеДокумента.НалоговаяСтавка КАК НалоговаяСтавка,
| ДанныеДокумента.СтавкаОпределяетсяАвтоматически КАК СтавкаОпределяетсяАвтоматически,
| ДанныеДокумента.НалоговаяЛьгота КАК НалоговаяЛьгота,
| ДанныеДокумента.КодНалоговойЛьготы КАК КодНалоговойЛьготы,
| ДанныеДокумента.ЛьготнаяСтавка КАК ЛьготнаяСтавка,
| ДанныеДокумента.ПроцентУменьшения КАК ПроцентУменьшения,
| ДанныеДокумента.СуммаУменьшения КАК СуммаУменьшения,
| ДанныеДокумента.РегиональныйКодЛьготы КАК РегиональныйКодЛьготы,
| ДанныеДокумента.ЭкологическийКласс КАК ЭкологическийКласс,
| ТаблицаОС.ОбщаяСобственность КАК ОбщаяСобственность,
| ТаблицаОС.ДоляВПравеОбщейСобственностиЧислитель КАК ДоляВПравеОбщейСобственностиЧислитель,
| ТаблицаОС.ДоляВПравеОбщейСобственностиЗнаменатель КАК ДоляВПравеОбщейСобственностиЗнаменатель,
| ДанныеДокумента.ПовышающийКоэффициент КАК ПовышающийКоэффициент,
| ДанныеДокумента.НалоговаяСтавкаЗависитОтГодаВыпускаТС КАК НалоговаяСтавкаЗависитОтГодаВыпускаТС,
| ЗНАЧЕНИЕ(Перечисление.ВидЗаписиОРегистрации.Регистрация) КАК ВидЗаписи
|
|ИЗ
| ДанныеДокументаРеквизиты КАК ДанныеДокумента
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеДокументаТаблицаОС КАК ТаблицаОС
| ПО ТаблицаОС.Ссылка = ДанныеДокумента.Ссылка
|
| ЛЕВОЕ СОЕДИНЕНИЕ ВтПараметрыНачисленияТранспортногоНалога КАК ДанныеРегистраПоследнее
| ПО ДанныеРегистраПоследнее.Ссылка = ТаблицаОС.Ссылка
| И ДанныеРегистраПоследнее.ОсновноеСредство = ТаблицаОС.ОсновноеСредство
|
|ГДЕ
| (НЕ ДанныеДокумента.РежимИсправленияСПрошлойДаты
| ИЛИ ЕСТЬNULL(ДанныеРегистраПоследнее.Период, ДАТАВРЕМЯ(1,1,1)) < ДанныеДокумента.НачалоДействия)
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ДанныеДокумента.Ссылка КАК Регистратор,
| НАЧАЛОПЕРИОДА(ДанныеДокумента.НачалоДействия, ДЕНЬ) КАК Период,
| ДанныеДокумента.Период КАК ДатаИсправления,
|
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаОС.ОсновноеСредство КАК ОсновноеСредство,
|
| ИСТИНА КАК ВключатьВНалоговуюБазу,
| ТаблицаОС.РегистрационныйЗнак КАК РегистрационныйЗнак,
| ТаблицаОС.ИдентификационныйНомер КАК ИдентификационныйНомер,
| ТаблицаОС.Марка КАК Марка,
| ДанныеДокумента.ПостановкаНаУчетВНалоговомОргане КАК ПостановкаНаУчетВНалоговомОргане,
| ДанныеДокумента.НалоговыйОрган КАК НалоговыйОрган,
| ДанныеДокумента.КодПоОКТМО КАК КодПоОКТМО,
| ДанныеДокумента.КодПоОКАТО КАК КодПоОКАТО,
| ДанныеДокумента.КодВидаТранспортногоСредства КАК КодВидаТранспортногоСредства,
| ДанныеДокумента.НалоговаяБаза КАК НалоговаяБаза,
| ДанныеДокумента.ЕдиницаИзмеренияНалоговойБазы КАК ЕдиницаИзмеренияНалоговойБазы,
| ДанныеДокумента.НалоговаяСтавка КАК НалоговаяСтавка,
| ДанныеДокумента.СтавкаОпределяетсяАвтоматически КАК СтавкаОпределяетсяАвтоматически,
| ДанныеДокумента.НалоговаяЛьгота КАК НалоговаяЛьгота,
| ДанныеДокумента.КодНалоговойЛьготы КАК КодНалоговойЛьготы,
| ДанныеДокумента.ЛьготнаяСтавка КАК ЛьготнаяСтавка,
| ДанныеДокумента.ПроцентУменьшения КАК ПроцентУменьшения,
| ДанныеДокумента.СуммаУменьшения КАК СуммаУменьшения,
| ДанныеДокумента.РегиональныйКодЛьготы КАК РегиональныйКодЛьготы,
| ДанныеДокумента.ЭкологическийКласс КАК ЭкологическийКласс,
| ТаблицаОС.ОбщаяСобственность КАК ОбщаяСобственность,
| ТаблицаОС.ДоляВПравеОбщейСобственностиЧислитель КАК ДоляВПравеОбщейСобственностиЧислитель,
| ТаблицаОС.ДоляВПравеОбщейСобственностиЗнаменатель КАК ДоляВПравеОбщейСобственностиЗнаменатель,
| ДанныеДокумента.ПовышающийКоэффициент КАК ПовышающийКоэффициент,
| ДанныеДокумента.НалоговаяСтавкаЗависитОтГодаВыпускаТС КАК НалоговаяСтавкаЗависитОтГодаВыпускаТС,
| ЗНАЧЕНИЕ(Перечисление.ВидЗаписиОРегистрации.Регистрация) КАК ВидЗаписи
|
|ИЗ
| ДанныеДокументаРеквизиты КАК ДанныеДокумента
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеДокументаТаблицаОС КАК ТаблицаОС
| ПО ТаблицаОС.Ссылка = ДанныеДокумента.Ссылка
|
|ГДЕ
| ДанныеДокумента.РежимИсправленияСПрошлойДаты
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаСпособыОтраженияРасходовПоИмущественнымНалогам(ТекстыЗапроса, Регистры)
ИмяРегистра = "СпособыОтраженияРасходовПоИмущественнымНалогам";
Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Текст =
"ВЫБРАТЬ
| ДанныеДокумента.Ссылка КАК Регистратор,
| ДанныеДокумента.Период КАК Период,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаОС.ОсновноеСредство КАК ОсновноеСредство,
| ЗНАЧЕНИЕ(Перечисление.ВидыИмущественныхНалогов.ТранспортныйНалог) КАК ВидНалога,
| ИСТИНА КАК СпособОтраженияРасходовЗаданДокументом,
| ДанныеДокумента.Ссылка КАК СпособОтраженияРасходов
|
|ИЗ
| ДанныеДокументаРеквизиты КАК ДанныеДокумента
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеДокументаТаблицаОС КАК ТаблицаОС
| ПО ТаблицаОС.Ссылка = ДанныеДокумента.Ссылка
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеДокументаТаблицаОтражениеРасходов КАК ТаблицаОтражениеРасходов
| ПО (ТаблицаОтражениеРасходов.Ссылка = ТаблицаОС.Ссылка)
| И (ТаблицаОтражениеРасходов.НомерСтроки = 1)
|";
ТекстыЗапроса.Добавить(Текст, ИмяРегистра);
Возврат Текст;
КонецФункции
Функция ТекстЗапросаТаблицаРеестрДокументов(ТекстыЗапроса, Регистры)
ИмяРегистра = "РеестрДокументов";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса =
"ВЫБРАТЬ
| ДанныеДокумента.Ссылка КАК Ссылка,
| ДанныеДокумента.Дата КАК ДатаДокументаИБ,
| ДанныеДокумента.Номер КАК НомерДокументаИБ,
| &ИдентификаторМетаданных КАК ТипСсылки,
| ДанныеДокумента.Организация КАК Организация,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Ответственный КАК Ответственный,
| ДанныеДокумента.Комментарий КАК Комментарий,
| ДанныеДокумента.Проведен КАК Проведен,
| ДанныеДокумента.ПометкаУдаления КАК ПометкаУдаления,
| ЛОЖЬ КАК ДополнительнаяЗапись,
| ДанныеДокумента.Дата КАК ДатаПервичногоДокумента,
| &НомерНаПечать КАК НомерПервичногоДокумента,
| ЛОЖЬ КАК СторноИсправление,
| НЕОПРЕДЕЛЕНО КАК СторнируемыйДокумент,
| НЕОПРЕДЕЛЕНО КАК ИсправляемыйДокумент,
| ДанныеДокумента.Дата КАК ДатаОтраженияВУчете,
| НЕОПРЕДЕЛЕНО КАК Приоритет
|
|ИЗ
| Документ.ПараметрыНачисленияТранспортногоНалога КАК ДанныеДокумента
|
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДокументыПоОС(ТекстыЗапроса, Регистры)
ИмяРегистра = "ДокументыПоОС";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса =
"ВЫБРАТЬ
| ЕСТЬNULL(ТаблицаОС.НомерСтроки-1, 0) КАК НомерЗаписи,
| ДанныеДокумента.Ссылка КАК Ссылка,
| ДанныеДокумента.Дата КАК Дата,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Проведен КАК Проведен,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &ИдентификаторМетаданных КАК ТипСсылки,
| ИСТИНА КАК ОтражатьВРеглУчете,
| ЛОЖЬ КАК ОтражатьВУпрУчете,
| ТаблицаОС.ОсновноеСредство КАК ОсновноеСредство,
| ДанныеДокумента.РежимИсправленияСПрошлойДаты КАК ЭтоИсправление,
|
| ВЫБОР
| КОГДА ДанныеДокумента.РежимИсправленияСПрошлойДаты
| ТОГДА ДанныеДокумента.НачалоДействия
| ИНАЧЕ ДАТАВРЕМЯ(1,1,1)
| КОНЕЦ КАК НачалоПериодаИсправления,
|
| ВЫБОР
| КОГДА ДанныеДокумента.РежимИсправленияСПрошлойДаты
| ТОГДА НАЧАЛОПЕРИОДА(КОНЕЦПЕРИОДА(ДанныеДокумента.Дата, МЕСЯЦ), ДЕНЬ)
| ИНАЧЕ ДАТАВРЕМЯ(1,1,1)
| КОНЕЦ КАК КонецПериодаИсправления
|
|ИЗ
| Документ.ПараметрыНачисленияТранспортногоНалога КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПараметрыНачисленияТранспортногоНалога.ОС КАК ТаблицаОС
| ПО ДанныеДокумента.Ссылка = ТаблицаОС.Ссылка
|
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра, Истина);
Возврат ТекстЗапроса;
КонецФункции
#КонецОбласти
#Область Печать
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
КонецПроцедуры
#КонецОбласти
#Область БлокировкаПриОбновленииИБ
Процедура ПроверитьБлокировкуВходящихДанныхПриОбновленииИБ(ПредставлениеОперации) Экспорт
ВходящиеДанные = Новый Соответствие;
ЗакрытиеМесяцаСервер.ПроверитьБлокировкуВходящихДанныхПриОбновленииИБ(ВходящиеДанные, ПредставлениеОперации);
КонецПроцедуры
#КонецОбласти
#Область СтандартныеПодсистемы
Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
Возврат;
КонецПроцедуры
Процедура ДобавитьКомандыОтчетов(КомандыОтчетов, Параметры) Экспорт
КонецПроцедуры
#КонецОбласти
#Область Прочее
Функция ПараметрыВыбораСтатейИАналитик() Экспорт
ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
ПараметрыВыбора.ПутьКДанным = "Объект.ОтражениеРасходов";
ПараметрыВыбора.Статья = "СтатьяРасходов";
ПараметрыВыбора.ВыборСтатьиРасходов = Истина;
ПараметрыВыбора.АналитикаРасходов = "АналитикаРасходов";
ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("ОтражениеРасходовСтатьяРасходов");
ПараметрыВыбора.ЭлементыФормы.АналитикаРасходов.Добавить("ОтражениеРасходовАналитикаРасходов");
Возврат ПараметрыВыбора;
КонецФункции
#КонецОбласти
#КонецОбласти
#КонецЕсли