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