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