Здравствуйте, в Бухгалтерии, в печатную форму документа "акт сверки с контрагентом" хочу добавить телефон исполнителя (физ лица).
Если пытаюсь вывести так:
ОбластьПодвал.Параметры.ТелефонИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.НомерТелефона),
   "", ДанныеИсполнителя.НомерТелефона);
пишет что поле обьекта НомерТелефона нет, хотя в физ лице есть табличная часть "Контактная информация" с таким реквизитом.
Как исправить или как по другому можно это реализовать?
---
Должно быть примерно так
ОбластьПодвал.Параметры.ТелефонИсполнителя = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформацииОбъекта(Шапка.Исполнитель, Справочники.ВидыКонтактнойИнформации.ТелефонРабочийФизическиеЛица)
---
какая конфигурация?
скиньте ВПФ
---
Бухгалтерия для Беларуси, редакция 2.1
---
А где в Вашем запросе хоть слово о контактной информации физ.лица ?
---
Поэтому и обратилась сюда ибо не могу разобраться чего не хватает и как это нужно написать.
---
Должно быть примерно так
ОбластьПодвал.Параметры.ТелефонИсполнителя = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформацииОбъекта(Шапка.Исполнитель, Справочники.ВидыКонтактнойИнформации.ТелефонРабочийФизическиеЛица)
---
Спасибо огромное, это работает.
---
Вы что собираетесь сделать... ВПФ или пилить конфу ?
---
Забыла указать, это ВПФ, в ней провожу все эти манипуляции.
---
Значит, в структуру ДанныеИсполнителя надо добавить поле НомерТелефона и заполнить его по данным табличной части "Контактная информация"
---
Есть:
ДанныеИсполнителя = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.Исполнитель, Шапка.ДатаАктаСверки);
ТелефонИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.НомерТелефона), "",ДанныеИсполнителя.НомерТелефона);
Или не то?
---
ДанныеИсполнителя - Отладчиком см.. что в нем есть!
---
Отладчик стопорится на:

ВнешняяОбработкаОбъект.Печать(
  ПараметрыИсточника.ОбъектыНазначения,
  КоллекцияПечатныхФорм,
  ОбъектыПечати,
  ПараметрыВывода);
---
нешняяОбработкаОбъект.Печать(
ПараметрыИсточника.ОбъектыНазначения,
КоллекцияПечатны
Еще и ВПФ без отладки.. супер
---
Это моя первая ВПФ, если не сложно обьясните что не так.
---
Запрос формирования данных для печати! Выложите ( Вам же уже выше (7)) написали.. мы же не телепаты, что у вас там в самом теле запроса
---
```1c
    Функция ПолучитьТекстЗапросаДляФормированияПечатнойФормыАктСверкиСКонтрагентом()

    ТекстЗапроса =
    "ВЫБРАТЬ
    | Акт.Ссылка КАК АктСверкиСКонтрагентом,
    | ВЫБОР
    | КОГДА Акт.РазбитьПоДоговорам
    | ТОГДА ТЧПоДаннымОрганизации.Договор
    | ИНАЧЕ NULL
    | КОНЕЦ КАК Договор,
    | ТЧПоДаннымОрганизации.НомерСтроки КАК НомерСтроки,
    | ТЧПоДаннымОрганизации.Дата КАК Дата,
    | NULL КАК ДатаК,
    | ТЧПоДаннымОрганизации.Документ КАК Документ,
    | ТЧПоДаннымОрганизации.Представление КАК Представление,
    | NULL КАК ПредставлениеК,
    | ТЧПоДаннымОрганизации.Дебет КАК Дебет,
    | ТЧПоДаннымОрганизации.Кредит КАК Кредит,
    | 0 КАК ДебетК,
    | 0 КАК КредитК,
    | 0 КАК НомерТабЧасти
    |ПОМЕСТИТЬ ДанныеДокумента
    |ИЗ
    | Документ.АктСверкиВзаиморасчетов КАК Акт
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.АктСверкиВзаиморасчетов.ПоДаннымОрганизации КАК ТЧПоДаннымОрганизации
    | ПО Акт.Ссылка = ТЧПоДаннымОрганизации.Ссылка
    |ГДЕ
    | Акт.Ссылка В(&МассивДокументов)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | Акт.Ссылка,
    | ВЫБОР
    | КОГДА Акт.РазбитьПоДоговорам
    | ТОГДА ТЧПоДаннымКонтрагента.Договор
    | ИНАЧЕ NULL
    | КОНЕЦ,
    | ТЧПоДаннымКонтрагента.НомерСтроки,
    | NULL,
    | ТЧПоДаннымКонтрагента.Дата,
    | NULL,
    | NULL,
    | ТЧПоДаннымКонтрагента.Представление,
    | 0,
    | 0,
    | ТЧПоДаннымКонтрагента.Дебет,
    | ТЧПоДаннымКонтрагента.Кредит,
    | 1
    |ИЗ
    | Документ.АктСверкиВзаиморасчетов КАК Акт
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.АктСверкиВзаиморасчетов.ПоДаннымКонтрагента КАК ТЧПоДаннымКонтрагента
    | ПО Акт.Ссылка = ТЧПоДаннымКонтрагента.Ссылка
    |ГДЕ
    | Акт.Ссылка В(&МассивДокументов)
    |
    |ИНДЕКСИРОВАТЬ ПО
    | АктСверкиСКонтрагентом
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ДанныеДокумента.АктСверкиСКонтрагентом КАК АктСверкиСКонтрагентом,
    | ДанныеДокумента.Договор КАК Договор,
    | ДанныеДокумента.НомерСтроки КАК НомерСтроки,
    | ДанныеДокумента.Дата КАК Дата,
    | ДанныеДокумента.Дата КАК МинДата,
    | ДанныеДокумента.Документ,
    | ДанныеДокумента.Представление,
    | ДанныеДокумента.ДатаК,
    | ДанныеДокумента.ПредставлениеК,
    | ДанныеДокумента.Дебет КАК СуммаДогДт,
    | ДанныеДокумента.Кредит КАК СуммаДогКт,
    | ДанныеДокумента.ДебетК КАК СуммаДогДтКонтр,
    | ДанныеДокумента.КредитК КАК СуммаДогКтКонтр,
    | АктСверкиВзаиморасчетов.Организация КАК Организация,
    | АктСверкиВзаиморасчетов.Контрагент КАК Контрагент,
    | АктСверкиВзаиморасчетов.Дата КАК ДатаАктаСверки,
    | АктСверкиВзаиморасчетов.ПредставительОрганизации КАК ПредставительОрганизации,
    // (
    | АктСверкиВзаиморасчетов.ПредставительОрганизации1 КАК ПредставительОрганизации1,
    | АктСверкиВзаиморасчетов.Ответственный КАК Ответственный,
    | АктСверкиВзаиморасчетов.Исполнитель КАК Исполнитель,
    // )
    | АктСверкиВзаиморасчетов.ПредставительКонтрагента КАК ПредставительКонтрагента,
    | АктСверкиВзаиморасчетов.ДатаНачала КАК ДатаНачала,
    | АктСверкиВзаиморасчетов.ДатаОкончания КАК ДатаОкончания,
    | АктСверкиВзаиморасчетов.ОстатокНаНачало КАК ОстатокНаНачало,
    | АктСверкиВзаиморасчетов.Расхождение КАК Расхождение,
    | АктСверкиВзаиморасчетов.ДоговорКонтрагента КАК ДоговорКонтрагентаВШапке,
    | АктСверкиВзаиморасчетов.ВалютаДокумента КАК ВалютаДокумента,
    | АктСверкиВзаиморасчетов.РазбитьПоДоговорам КАК РазбитьПоДоговорам,
    | АктСверкиВзаиморасчетов.СверкаСогласована КАК СверкаСогласована,
    //1С-Минск
    | АктСверкиВзаиморасчетов.МестоСоставленияАкта КАК МестоСоставленияАкта,
    //1С-Минск
    | ДанныеДокумента.НомерТабЧасти КАК НомерТабЧасти
    |ИЗ
    | ДанныеДокумента КАК ДанныеДокумента
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.АктСверкиВзаиморасчетов КАК АктСверкиВзаиморасчетов
    | ПО ДанныеДокумента.АктСверкиСКонтрагентом = АктСверкиВзаиморасчетов.Ссылка
    |
    |УПОРЯДОЧИТЬ ПО
    | НомерТабЧасти,
    | ДанныеДокумента.НомерСтроки
    |ИТОГИ
    | МИНИМУМ(МинДата),
    | СУММА(СуммаДогДт),
    | СУММА(СуммаДогКт),
    | СУММА(СуммаДогДтКонтр),
    | СУММА(СуммаДогКтКонтр),
    | МАКСИМУМ(Организация),
    | МАКСИМУМ(Контрагент),
    | МАКСИМУМ(ДатаАктаСверки),
    | МАКСИМУМ(ПредставительОрганизации),
    // (
    | МАКСИМУМ(ПредставительОрганизации1),
    | МАКСИМУМ(Ответственный),
    | МАКСИМУМ(Исполнитель),
    // )
    | МАКСИМУМ(ПредставительКонтрагента),
    | МАКСИМУМ(ДатаНачала),
    | МАКСИМУМ(ДатаОкончания),
    | МАКСИМУМ(ОстатокНаНачало),
    | МАКСИМУМ(Расхождение),
    | МАКСИМУМ(ДоговорКонтрагентаВШапке),
    | МАКСИМУМ(ВалютаДокумента),
    | МАКСИМУМ(РазбитьПоДоговорам),
    | МАКСИМУМ(СверкаСогласована),
    //1С-Минск
    | МАКСИМУМ(МестоСоставленияАкта)
    //1С-Минск
    |ПО
    | АктСверкиСКонтрагентом,
    | Договор";

    Возврат ТекстЗапроса;

    КонецФункции

    // Функция формирует табличный документ с печатной формой накладной,
    //
    // Возвращаемое значение:
    // Табличный документ - печатная форма накладной
    //
    Функция ПечатьАктаСверкиСКонтрагентом(МассивОбъектов, ОбъектыПечати)

    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.АвтоМасштаб = Истина;
    ТабличныйДокумент.РазмерКолонтитулаСверху = 0;
    ТабличныйДокумент.РазмерКолонтитулаСнизу = 0;
    ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_АктСверкиВзаиморасчетов";

    Макет = ПолучитьМакет("ПФ_MXL_АктСверки_Локализация");

    Запрос = Новый Запрос();
    Запрос.УстановитьПараметр("МассивДокументов", МассивОбъектов);
    Запрос.Текст = ПолучитьТекстЗапросаДляФормированияПечатнойФормыАктСверкиСКо­нтрагентом();

    Шапка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "АктСверки");

    ПервыйДокумент = Истина;

    Пока Шапка.Следующий() Цикл
    Если Не ПервыйДокумент Тогда

    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ПервыйДокумент = Ложь;
    // Запомним номер строки, с которой начали выводить текущий документ.
    НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;

    // Получаем области:
    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьНачОстатки = Макет.ПолучитьОбласть("НачОстатки");
    ОбластьДоговор = Макет.ПолучитьОбласть("Договор");
    ОбластьДоговорИтоги = Макет.ПолучитьОбласть("ДоговорИтоги");
    ОбластьОбороты = Макет.ПолучитьОбласть("Обороты");
    ОбластьОборотыИтог = Макет.ПолучитьОбласть("ОборотыИтог");
    ОбластьКонОстатки = Макет.ПолучитьОбласть("КонОстатки");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");

    // Заполняем шапку:
    СведенияОбОрганизации = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Организация, Шапка.ДатаАктаСверки);
    ПредставлениеОрганизации = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,");

    СведенияОКонтрагенте = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Контрагент, Шапка.ДатаАктаСверки);
    ПредставлениеКонтрагента = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОКонтрагенте, "НаименованиеДляПечатныхФорм,");
    //(
    //СведенияОИсполнителе = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Исполнитель, Шапка.ДатаАктаСверки);
    //ПредставлениеИсполнителя = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОИсполнителе, "НаименованиеДляПечатныхФорм,");
    //(

    ОбластьЗаголовок.Параметры.НазваниеОрганизации = ПредставлениеОрганизации;
    ОбластьЗаголовок.Параметры.НаименованиеКонтрагента = ПредставлениеКонтрагента;
    ДатаНачалаОтчета = ?(ЗначениеЗаполнено(Шапка.ДатаНачала), Шапка.ДатаНачала, Шапка.МинДата);

    ОписаниеПериода = ?(ЗначениеЗаполнено(ДатаНачалаОтчета),"за период: " + ПредставлениеПериода(НачалоДня( ДатаНачалаОтчета), КонецДня( Шапка.ДатаОкончания), "ФП = Истина"),");

    ТекстЗаголовка = "взаимных расчетов " + ОписаниеПериода + Символы.ПС
    + "между " + ПредставлениеОрганизации + Символы.ПС + "и " + ПредставлениеКонтрагента;
    ДоговорКонтрагента = Шапка.ДоговорКонтрагентаВШапке;
    Если ЗначениеЗаполнено(ДоговорКонтрагента) И НЕ ДоговорКонтрагента.ЭтоГруппа Тогда
    ТекстЗаголовка = ТекстЗаголовка + Символы.ПС + "по договору " + ДоговорКонтрагента;
    КонецЕсли;

    ОбластьЗаголовок.Параметры.ТекстЗаголовка = ТекстЗаголовка;

    ДанныеПредставителяОрганизации = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.ПредставительОрганизации, Шапка.ДатаАктаСверки);
    // (
    ДанныеПредставителяОрганизации1 = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.ПредставительОрганизации1, Шапка.ДатаАктаСверки);
    ФИОПредставителя1 = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Фамилия), ",ДанныеПредставителяОрганизации1.Фамилия
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Имя), ", " "+ ДанныеПредставителяОрганизации1.Имя)
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Отчество), ", " "+ ДанныеПредставителяОрганизации1.Отчество));
    ДанныеИсполнителя = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.Исполнитель, Шапка.ДатаАктаСверки);
    ФИОИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Фамилия), ",ДанныеИсполнителя.Фамилия
    + ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Имя), ", " "+ ДанныеИсполнителя.Имя)
    + ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Отчество), ", " "+ ДанныеИсполнителя.Отчество));
    ТелефонИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.НомерТелефона), ",ДанныеИсполнителя.НомерТелефона);

    // )
    ДанныеПредставителяКонтрагента = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Шапка.ПредставительКонтрагента, "Должность, Фамилия, Имя, Отчество");
    ФИОПредставителя = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Фамилия), ",ДанныеПредставителяОрганизации.Фамилия
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Имя), ", " "+ ДанныеПредставителяОрганизации.Имя)
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Отчество), ", " "+ ДанныеПредставителяОрганизации.Отчество));

    СтрЗаголовокТаблица = "Мы, нижеподписавшиеся, " + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Должность),
    "________________", ДанныеПредставителяОрганизации.Должность) + " " + ПредставлениеОрганизации
    + " " + ?(ФИОПредставителя <> ", ФИОПредставителя, "_______________________") + ", с одной стороны, "
    + "и " + ?(НЕ ЗначениеЗаполнено(Шапка.ПредставительКонтрагента) ИЛИ НЕ ЗначениеЗаполнено(ДанныеПредставителяКонтрагента.Должность),
    "________________", ДанныеПредставителяКонтрагента.Должность)
    + " " + ПредставлениеКонтрагента + " " + ?(НЕ ЗначениеЗаполнено(Шапка.ПредставительКонтрагента),
    "_______________________", Шапка.ПредставительКонтрагента) + ", с другой стороны, "
    + "составили настоящий акт сверки в том, что состояние взаимных расчетов по данным учета следующее:";

    ОбластьЗаголовок.Параметры.СтрЗаголовокТаблица = СтрЗаголовокТаблица;
    ОбластьЗаголовок.Параметры.ВалютаДокумента = Шапка.ВалютаДокумента;

    ТабличныйДокумент.Вывести(ОбластьЗаголовок);
    ТабличныйДокумент.Вывести(ОбластьШапкаТаблицы);

    ОбластьНачОстатки.Параметры.СуммаНачальныйОстатокДт = ?(Шапка.ОстатокНаНачало > 0, Шапка.ОстатокНаНачало, 0);
    ОбластьНачОстатки.Параметры.СуммаНачальныйОстатокКт = ?(Шапка.ОстатокНаНачало < 0, -Шапка.ОстатокНаНачало, 0);
    ТабличныйДокумент.Вывести(ОбластьНачОстатки);

    ОборотыДт = Шапка.СуммаДогДт;
    ОборотыКт = Шапка.СуммаДогКт;
    ОборотыДтКонтр = Шапка.СуммаДогДтКонтр;
    ОборотыКтКонтр = Шапка.СуммаДогКтКонтр;

    ОбходПоДоговорам = Шапка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Договор");
    Пока ОбходПоДоговорам.Следующий() Цикл

    Если Шапка.РазбитьПоДоговорам Тогда
    //Выводим заголовок с договором
    ОбластьДоговор.Параметры.Договор = ОбходПоДоговорам.Договор;
    ОбластьДоговор.Параметры.Регистратор = ОбходПоДоговорам.Договор;
    ТабличныйДокумент.Вывести(ОбластьДоговор);
    ОбходПоДокументам=ОбходПоДоговорам.Выбрать();
    Иначе
    ОбходПоДокументам=ОбходПоДоговорам.Выбрать();
    КонецЕсли;

    //Создадим список документов по организации и контрагенту
    СписокДокументов = новый массив;
    СписокДокументовК = новый массив;
    Пока ОбходПоДокументам.Следующий() Цикл
    Если ОбходПоДокументам.Дата<>NULL Тогда
    СписокДокументов.Добавить(новый структура("ДатаДокумента, РегистраторПредставление, Регистратор, СуммаОборотДт, СуммаОборотКт",
    ОбходПоДокументам.Дата,ОбходПоДокументам.Представление,ОбходПоДокументам.Документ,ОбходПоДокументам.СуммаДогДт,ОбходПоДокументам.СуммаДогКт));
    КонецЕсли;

    Если ОбходПоДокументам.ДатаК<>NULL Тогда
    СписокДокументовК.Добавить(новый структура("ДатаДокументаКонтр,РегистраторПредставлениеКонтр,СуммаОборотДтКонтр,СуммаОборотКтКонтр",
    ОбходПоДокументам.ДатаК,ОбходПоДокументам.ПредставлениеК,ОбходПоДокументам.СуммаДогДтКонтр,ОбходПоДокументам.СуммаДогКтКонтр));
    КонецЕсли;
    КонецЦикла;

    //Для упрощения вывода, сравним списки по количеству элементов, добавив пустые
    МаксИндекс = Макс(СписокДокументов.Количество(), СписокДокументовК.Количество())-1;
    МинИндекс = Мин(СписокДокументов.Количество(), СписокДокументовК.Количество())-1;
    Если СписокДокументов.Количество() < СписокДокументовК.Количество() Тогда
    Для инд = МинИндекс По МаксИндекс-1 Цикл
    СписокДокументов.Добавить(новый структура("ДатаДокумента,РегистраторПредставление,Регистратор,СуммаОборотДт,СуммаОборотКт",",",",","));
    КонецЦикла;
    ИначеЕсли СписокДокументов.Количество() > СписокДокументовК.Количество() Тогда
    Для инд = МинИндекс По МаксИндекс-1 Цикл
    СписокДокументовК.Добавить(новый структура("ДатаДокументаКонтр,РегистраторПредставлениеКонтр,СуммаОборотДтКонтр,СуммаОборотКтКонтр",",",","));
    КонецЦикла;
    КонецЕсли;

    Для Инд = 0 По МаксИндекс Цикл
    ОбластьОбороты.Параметры.Заполнить(СписокДокументов[Инд]);
    ОбластьОбороты.Параметры.Заполнить(СписокДокументовК[Инд]);
    ТабличныйДокумент.Вывести(ОбластьОбороты);
    КонецЦикла;

    Если Шапка.РазбитьПоДоговорам Тогда
    //Выводим итоги по каждому договору
    ОбластьДоговорИтоги.Параметры.Заполнить(ОбходПоДоговорам);
    ТабличныйДокумент.Вывести(ОбластьДоговорИтоги);
    Иначе
    Прервать;
    КонецЕсли;

    КонецЦикла;

    ОбластьОборотыИтог.Параметры.СуммаОборотДт = ОборотыДт;
    ОбластьОборотыИтог.Параметры.СуммаОборотКт = ОборотыКт;
    Если Шапка.СверкаСогласована тогда
    ОбластьОборотыИтог.Параметры.СуммаОборотДтКонтр = ОборотыДтКонтр;
    ОбластьОборотыИтог.Параметры.СуммаОборотКтКонтр = ОборотыКтКонтр;
    КонецЕсли;
    ТабличныйДокумент.Вывести(ОбластьОборотыИтог);

    ОстатокНаКонец = Шапка.ОстатокНаНачало + ОборотыДт - ОборотыКт;
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокДт = ?(ОстатокНаКонец > 0, ОстатокНаКонец, 0);
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокКт = ?(ОстатокНаКонец < 0, -ОстатокНаКонец, 0);

    Если Шапка.СверкаСогласована тогда
    ОстатокНаКонецК = Шапка.ОстатокНаНачало - ОборотыДтКонтр + ОборотыКтКонтр;
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокКтКонтр = ?(ОстатокНаКонецК > 0, ОстатокНаКонецК, 0);
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокДтКонтр = ?(ОстатокНаКонецК < 0, -ОстатокНаКонецК, 0);
    КонецЕсли;

    ТабличныйДокумент.Вывести(ОбластьКонОстатки);

    // Результаты сверки
    Если НЕ ЗначениеЗаполнено(Шапка.ДатаОкончания) Тогда
    РезультатыСверки = "<не указана дата сверки>";
    ИначеЕсли НЕ ЗначениеЗаполнено(Шапка.Контрагент) Тогда
    РезультатыСверки = "<не указан контрагент>";
    Иначе
    РезультатыСверки = "на " + Формат(Шапка.ДатаОкончания, "ДФ=dd.MM.yyyy") + " задолженность ";

    Если ОстатокНаКонец > 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеОрганизации + " "
    + Формат(ОстатокНаКонец, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    +" ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(ОстатокНаКонец, Шапка.ВалютаДокумента,Ложь)+")" ;

    ИначеЕсли ОстатокНаКонец < 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеКонтрагента + " "
    + Формат(-ОстатокНаКонец, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    +" ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(-ОстатокНаКонец, Шапка.ВалютаДокумента,Ложь)+")" ;

    Иначе
    РезультатыСверки = РезультатыСверки + "отсутствует.";
    КонецЕсли;
    КонецЕсли;
    ОбластьПодвал.Параметры.РезультатыСверки = РезультатыСверки;

    Если Шапка.СверкаСогласована тогда
    ОбластьПодвал.Параметры.ПоДаннымКонтрагента = "По данным " + ПредставлениеКонтрагента;

    Если НЕ ЗначениеЗаполнено(Шапка.ДатаОкончания) Тогда
    РезультатыСверки = "<не указана дата сверки>";
    ИначеЕсли НЕ ЗначениеЗаполнено(Шапка.Контрагент) Тогда
    РезультатыСверки = "<не указан контрагент>";
    Иначе
    РезультатыСверки = "на " + Формат(Шапка.ДатаОкончания, "ДФ=dd.MM.yyyy") + " задолженность ";

    Если ОстатокНаКонецК > 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеОрганизации + " "
    + Формат(ОстатокНаКонецК, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    + " ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(ОстатокНаКонецК, Шапка.ВалютаДокумента,Ложь)+")" ;

    ИначеЕсли ОстатокНаКонецК < 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеКонтрагента + " "
    + Формат(-ОстатокНаКонецК, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    +" ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(-ОстатокНаКонецК, Шапка.ВалютаДокумента,Ложь)+")" ;

    Иначе
    РезультатыСверки = РезультатыСверки + "отсутствует.";
    КонецЕсли;
    КонецЕсли;

    ОбластьПодвал.Параметры.РезультатыСверкиК = РезультатыСверки;

    Если Шапка.Расхождение <> 0 Тогда
    ИтогСверки = "В результате сверки выявлено расхождение информации о состоянии расчетов в размере "
    + Формат(?(Шапка.Расхождение > 0, 1, -1) * Шапка.Расхождение, "ЧЦ=21; ЧДЦ=2")
    + " "+ Строка(Шапка.ВалютаДокумента)
    + " ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(
    ?(Шапка.Расхождение > 0, 1, -1) * Шапка.Расхождение, Шапка.ВалютаДокумента, Ложь)+")" ;
    ОбластьПодвал.Параметры.ИтогСверки = Символы.ПС + ИтогСверки+Символы.ПС+" ";
    КонецЕсли;
    КонецЕсли;

    ОбластьПодвал.Параметры.НазваниеОрганизации = ПредставлениеОрганизации;
    ОбластьПодвал.Параметры.НаименованиеКонтрагента = ПредставлениеКонтрагента;

    ОбластьПодвал.Параметры.Должность = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Должность),
    "________________", ДанныеПредставителяОрганизации.Должность);
    // (
    ОбластьПодвал.Параметры.Должность1 = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Должность),
    "________________", ДанныеПредставителяОрганизации1.Должность);
    ОбластьПодвал.Параметры.ДолжностьИ = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Должность),
    "________________", ДанныеИсполнителя.Должность);
    ОбластьПодвал.Параметры.ТелефонИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.НомерТелефона),", ДанныеИсполнителя.НомерТелефона);
    // )
    ОбластьПодвал.Параметры.ДолжностьК = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяКонтрагента.Должность),
    "________________", ДанныеПредставителяКонтрагента.Должность);

    ОбластьПодвал.Параметры.ФИОПредставителя = "("+?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации),
    "_______________________",ДанныеПредставителяОрганизации.Представление)+")";
    // (
    ОбластьПодвал.Параметры.ФИОПредставителя1 = "("+?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1),
    "_______________________",ДанныеПредставителяОрганизации1.Представление)+")";
    ОбластьПодвал.Параметры.ФИОИсполнителя = "("+?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя),
    "_______________________",ДанныеИсполнителя.Представление)+")";
    // )
    ОбластьПодвал.Параметры.ФИОПредставителяК = "("+?(НЕ ЗначениеЗаполнено(Шапка.ПредставительКонтрагента),
    "_______________________",ОбщегоНазначенияБПВызовСервера.ФамилияИнициалыФизЛица(
    ДанныеПредставителяКонтрагента.Фамилия + " " + ДанныеПредставителяКонтрагента.Имя + " " + ДанныеПредставителяКонтрагента.Отчество))+")";

    ТабличныйДокумент.Вывести(ОбластьПодвал);

    // В табличном документе зададим имя области, в которую был
    // выведен объект. Нужно для возможности печати покомплектно.
    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент,
    НомерСтрокиНачало, ОбъектыПечати, Шапка.АктСверкиСКонтрагентом);

    КонецЦикла; // Пока Шапка.Следующий()

    Возврат ТабличныйДокумент;

    КонецФункции

    Функция ПечатьАктаСверкиСКонтрагентом_Локализация(МассивОбъектов, ОбъектыПечати)

    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.АвтоМасштаб = Истина;
    ТабличныйДокумент.РазмерКолонтитулаСверху = 0;
    ТабличныйДокумент.РазмерКолонтитулаСнизу = 0;
    ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_АктСверкиВзаиморасчетов";

    Макет = ПолучитьМакет("ПФ_MXL_АктСверки_Локализация");

    Запрос = Новый Запрос();
    Запрос.УстановитьПараметр("МассивДокументов", МассивОбъектов);
    Запрос.Текст = ПолучитьТекстЗапросаДляФормированияПечатнойФормыАктСверкиСКо­нтрагентом();

    Шапка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "АктСверкиСКонтрагентом");

    ПервыйДокумент = Истина;

    Пока Шапка.Следующий() Цикл

    Если Не ПервыйДокумент Тогда
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ПервыйДокумент = Ложь;
    // Запомним номер строки, с которой начали выводить текущий документ.
    НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;

    // Получаем области:
    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьНачОстатки = Макет.ПолучитьОбласть("НачОстатки");
    ОбластьДоговор = Макет.ПолучитьОбласть("Договор");
    ОбластьДоговорИтоги = Макет.ПолучитьОбласть("ДоговорИтоги");
    ОбластьОбороты = Макет.ПолучитьОбласть("Обороты");
    ОбластьОборотыИтог = Макет.ПолучитьОбласть("ОборотыИтог");
    ОбластьКонОстатки = Макет.ПолучитьОбласть("КонОстатки");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");

    // Заполняем шапку:
    СведенияОбОрганизации = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Организация, Шапка.ДатаАктаСверки);
    ПредставлениеОрганизации = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,");

    СведенияОКонтрагенте = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Контрагент, Шапка.ДатаАктаСверки);
    ПредставлениеКонтрагента = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОКонтрагенте, "НаименованиеДляПечатныхФорм,");

    //(
    //СведенияОИсполнителе = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(Шапка.Исполнитель, Шапка.ДатаАктаСверки);
    //ПредставлениеИсполнителя = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОИсполнителе, "НаименованиеДляПечатныхФорм,");
    //(

    ОбластьЗаголовок.Параметры.НазваниеОрганизации = ПредставлениеОрганизации;
    ОбластьЗаголовок.Параметры.НаименованиеКонтрагента = ПредставлениеКонтрагента;
    ОбластьЗаголовок.Параметры.ДатаДокумента = Формат(Шапка.ДатаАктаСверки, "ДФ="дд ММММ гггг 'г.'"");
    ОбластьЗаголовок.Параметры.МестоСоставленияАкта = Шапка.МестоСоставленияАкта;
    ДатаНачалаОтчета = ?(ЗначениеЗаполнено(Шапка.ДатаНачала), Шапка.ДатаНачала, Шапка.МинДата);

    ОписаниеПериода = "за период: " + ПредставлениеПериода(НачалоДня( ДатаНачалаОтчета), КонецДня( Шапка.ДатаОкончания), "ФП = Истина");

    ТекстЗаголовка = "взаимных расчетов " + ОписаниеПериода + Символы.ПС
    + "между " + ПредставлениеОрганизации + Символы.ПС + "и " + ПредставлениеКонтрагента;
    ДоговорКонтрагента = Шапка.ДоговорКонтрагентаВШапке;
    Если ЗначениеЗаполнено(ДоговорКонтрагента) И НЕ ДоговорКонтрагента.ЭтоГруппа Тогда
    ТекстЗаголовка = ТекстЗаголовка + Символы.ПС + "по договору " + ДоговорКонтрагента;
    КонецЕсли;

    ОбластьЗаголовок.Параметры.ТекстЗаголовка = ТекстЗаголовка;

    ДанныеПредставителяОрганизации = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.ПредставительОрганизации, Шапка.ДатаАктаСверки);
    // (
    ДанныеПредставителяОрганизации1 = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.ПредставительОрганизации1, Шапка.ДатаАктаСверки);
    ФИОПредставителя1 = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Фамилия), ",ДанныеПредставителяОрганизации1.Фамилия
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Имя), ", " "+ ДанныеПредставителяОрганизации1.Имя)
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Отчество), ", " "+ ДанныеПредставителяОрганизации1.Отчество));
    ДанныеИсполнителя = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.Исполнитель, Шапка.ДатаАктаСверки);
    ФИОИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Фамилия), ",ДанныеИсполнителя.Фамилия
    + ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Имя), ", " "+ ДанныеИсполнителя.Имя)
    + ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Отчество), ", " "+ ДанныеИсполнителя.Отчество));
    ДанныеИсполнителя = ОбщегоНазначенияБПВызовСервера.ДанныеФизЛица(Шапка.Организация, Шапка.Исполнитель, Шапка.ДатаАктаСверки);
    ТелефонИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.НомерТелефона), ",ДанныеИсполнителя.НомерТелефона);
    // )
    ДанныеПредставителяКонтрагента = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Шапка.ПредставительКонтрагента, "Должность, Фамилия, Имя, Отчество"); // 1С-Минск.
    ФИОПредставителя = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Фамилия), ",ДанныеПредставителяОрганизации.Фамилия
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Имя), ", " "+ ДанныеПредставителяОрганизации.Имя)
    + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Отчество), ", " "+ ДанныеПредставителяОрганизации.Отчество));

    СтрЗаголовокТаблица = "Мы, нижеподписавшиеся, " + ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Должность),
    "________________", ДанныеПредставителяОрганизации.Должность) + " " + ПредставлениеОрганизации
    + " " + ?(ФИОПредставителя <> ", ФИОПредставителя, "_______________________") + ", с одной стороны, "
    + "и " + ?(НЕ ЗначениеЗаполнено(Шапка.ПредставительКонтрагента) ИЛИ НЕ ЗначениеЗаполнено(ДанныеПредставителяКонтрагента.Должность),
    "________________", ДанныеПредставителяКонтрагента.Должность)
    + " " + ПредставлениеКонтрагента + " " + ?(НЕ ЗначениеЗаполнено(Шапка.ПредставительКонтрагента),
    "_______________________", Шапка.ПредставительКонтрагента) + ", с другой стороны, "
    + "составили настоящий акт сверки в том, что состояние взаимных расчетов по данным учета следующее:";

    ОбластьЗаголовок.Параметры.СтрЗаголовокТаблица = СтрЗаголовокТаблица;
    ОбластьЗаголовок.Параметры.ВалютаДокумента = Шапка.ВалютаДокумента;

    ТабличныйДокумент.Вывести(ОбластьЗаголовок);
    ТабличныйДокумент.Вывести(ОбластьШапкаТаблицы);

    ОбластьНачОстатки.Параметры.СуммаНачальныйОстатокДт = ?(Шапка.ОстатокНаНачало > 0, Шапка.ОстатокНаНачало, 0);
    ОбластьНачОстатки.Параметры.СуммаНачальныйОстатокКт = ?(Шапка.ОстатокНаНачало < 0, -Шапка.ОстатокНаНачало, 0);
    ТабличныйДокумент.Вывести(ОбластьНачОстатки);

    ОборотыДт = Шапка.СуммаДогДт;
    ОборотыКт = Шапка.СуммаДогКт;
    ОборотыДтКонтр = Шапка.СуммаДогДтКонтр;
    ОборотыКтКонтр = Шапка.СуммаДогКтКонтр;

    ОбходПоДоговорам = Шапка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Договор");
    Пока ОбходПоДоговорам.Следующий() Цикл

    Если Шапка.РазбитьПоДоговорам Тогда
    //Выводим заголовок с договором
    ОбластьДоговор.Параметры.Договор = ОбходПоДоговорам.Договор;
    ОбластьДоговор.Параметры.Регистратор = ОбходПоДоговорам.Договор;
    ТабличныйДокумент.Вывести(ОбластьДоговор);
    ОбходПоДокументам=ОбходПоДоговорам.Выбрать();
    Иначе
    ОбходПоДокументам=ОбходПоДоговорам.Выбрать();
    КонецЕсли;

    //Создадим список документов по организации и контрагенту
    СписокДокументов = новый массив;
    СписокДокументовК = новый массив;
    Пока ОбходПоДокументам.Следующий() Цикл
    Если ОбходПоДокументам.Дата<>NULL Тогда
    СписокДокументов.Добавить(новый структура("ДатаДокумента, РегистраторПредставление, Регистратор, СуммаОборотДт, СуммаОборотКт",
    ОбходПоДокументам.Дата,ОбходПоДокументам.Представление,ОбходПоДокументам.Документ,ОбходПоДокументам.СуммаДогДт,ОбходПоДокументам.СуммаДогКт));
    КонецЕсли;

    Если ОбходПоДокументам.ДатаК<>NULL Тогда
    СписокДокументовК.Добавить(новый структура("ДатаДокументаКонтр,РегистраторПредставлениеКонтр,СуммаОборотДтКонтр,СуммаОборотКтКонтр",
    ОбходПоДокументам.ДатаК,ОбходПоДокументам.ПредставлениеК,ОбходПоДокументам.СуммаДогДтКонтр,ОбходПоДокументам.СуммаДогКтКонтр));
    КонецЕсли;
    КонецЦикла;

    //Для упрощения вывода, сравним списки по количеству элементов, добавив пустые
    МаксИндекс = Макс(СписокДокументов.Количество(), СписокДокументовК.Количество())-1;
    МинИндекс = Мин(СписокДокументов.Количество(), СписокДокументовК.Количество())-1;
    Если СписокДокументов.Количество() < СписокДокументовК.Количество() Тогда
    Для инд = МинИндекс По МаксИндекс-1 Цикл
    СписокДокументов.Добавить(новый структура("ДатаДокумента,РегистраторПредставление,Регистратор,СуммаОборотДт,СуммаОборотКт",",",",","));
    КонецЦикла;
    ИначеЕсли СписокДокументов.Количество() > СписокДокументовК.Количество() Тогда
    Для инд = МинИндекс По МаксИндекс-1 Цикл
    СписокДокументовК.Добавить(новый структура("ДатаДокументаКонтр,РегистраторПредставлениеКонтр,СуммаОборотДтКонтр,СуммаОборотКтКонтр",",",","));
    КонецЦикла;
    КонецЕсли;

    Для Инд = 0 По МаксИндекс Цикл
    ОбластьОбороты.Параметры.Заполнить(СписокДокументов[Инд]);
    ОбластьОбороты.Параметры.Заполнить(СписокДокументовК[Инд]);
    ТабличныйДокумент.Вывести(ОбластьОбороты);
    КонецЦикла;

    Если Шапка.РазбитьПоДоговорам Тогда
    //Выводим итоги по каждому договору
    ОбластьДоговорИтоги.Параметры.Заполнить(ОбходПоДоговорам);
    ТабличныйДокумент.Вывести(ОбластьДоговорИтоги);
    Иначе
    Прервать;
    КонецЕсли;

    КонецЦикла;

    ОбластьОборотыИтог.Параметры.СуммаОборотДт = ОборотыДт;
    ОбластьОборотыИтог.Параметры.СуммаОборотКт = ОборотыКт;
    Если Шапка.СверкаСогласована тогда
    ОбластьОборотыИтог.Параметры.СуммаОборотДтКонтр = ОборотыДтКонтр;
    ОбластьОборотыИтог.Параметры.СуммаОборотКтКонтр = ОборотыКтКонтр;
    КонецЕсли;
    ТабличныйДокумент.Вывести(ОбластьОборотыИтог);

    ОстатокНаКонец = Шапка.ОстатокНаНачало + ОборотыДт - ОборотыКт;
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокДт = ?(ОстатокНаКонец > 0, ОстатокНаКонец, 0);
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокКт = ?(ОстатокНаКонец < 0, -ОстатокНаКонец, 0);

    Если Шапка.СверкаСогласована тогда
    ОстатокНаКонецК = Шапка.ОстатокНаНачало - ОборотыДтКонтр + ОборотыКтКонтр;
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокКтКонтр = ?(ОстатокНаКонецК > 0, ОстатокНаКонецК, 0);
    ОбластьКонОстатки.Параметры.СуммаКонечныйОстатокДтКонтр = ?(ОстатокНаКонецК < 0, -ОстатокНаКонецК, 0);
    КонецЕсли;

    ТабличныйДокумент.Вывести(ОбластьКонОстатки);

    // Результаты сверки
    Если НЕ ЗначениеЗаполнено(Шапка.ДатаОкончания) Тогда
    РезультатыСверки = "<не указана дата сверки>";
    ИначеЕсли НЕ ЗначениеЗаполнено(Шапка.Контрагент) Тогда
    РезультатыСверки = "<не указан контрагент>";
    Иначе
    РезультатыСверки = "на " + Формат(Шапка.ДатаОкончания, "ДФ=dd.MM.yyyy") + " задолженность ";

    Если ОстатокНаКонец > 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеОрганизации + " "
    + Формат(ОстатокНаКонец, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    +" ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(ОстатокНаКонец, Шапка.ВалютаДокумента,Ложь)+")" ;

    ИначеЕсли ОстатокНаКонец < 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеКонтрагента + " "
    + Формат(-ОстатокНаКонец, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    +" ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(-ОстатокНаКонец, Шапка.ВалютаДокумента,Ложь)+")" ;

    Иначе
    РезультатыСверки = РезультатыСверки + "отсутствует.";
    КонецЕсли;
    КонецЕсли;
    ОбластьПодвал.Параметры.РезультатыСверки = РезультатыСверки;

    Если Шапка.СверкаСогласована тогда
    ОбластьПодвал.Параметры.ПоДаннымКонтрагента = "По данным " + ПредставлениеКонтрагента;

    Если НЕ ЗначениеЗаполнено(Шапка.ДатаОкончания) Тогда
    РезультатыСверки = "<не указана дата сверки>";
    ИначеЕсли НЕ ЗначениеЗаполнено(Шапка.Контрагент) Тогда
    РезультатыСверки = "<не указан контрагент>";
    Иначе
    РезультатыСверки = "на " + Формат(Шапка.ДатаОкончания, "ДФ=dd.MM.yyyy") + " задолженность ";

    Если ОстатокНаКонецК > 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеОрганизации + " "
    + Формат(ОстатокНаКонецК, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    + " ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(ОстатокНаКонецК, Шапка.ВалютаДокумента,Ложь)+")" ;

    ИначеЕсли ОстатокНаКонецК < 0 Тогда
    РезультатыСверки = РезультатыСверки + "в пользу " + ПредставлениеКонтрагента + " "
    + Формат(-ОстатокНаКонецК, "ЧЦ=21; ЧДЦ=2") + " "
    + строка(Шапка.ВалютаДокумента)
    +" ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(-ОстатокНаКонецК, Шапка.ВалютаДокумента,Ложь)+")" ;

    Иначе
    РезультатыСверки = РезультатыСверки + "отсутствует.";
    КонецЕсли;
    КонецЕсли;

    ОбластьПодвал.Параметры.РезультатыСверкиК = РезультатыСверки;

    Если Шапка.Расхождение <> 0 Тогда
    ИтогСверки = "В результате сверки выявлено расхождение информации о состоянии расчетов в размере "
    + Формат(?(Шапка.Расхождение > 0, 1, -1) * Шапка.Расхождение, "ЧЦ=21; ЧДЦ=2")
    + " "+ Строка(Шапка.ВалютаДокумента)
    + " ("+УчетДенежныхСредствБП.ФорматироватьСуммуПрописьюПлатежногоДокумента(
    ?(Шапка.Расхождение > 0, 1, -1) * Шапка.Расхождение, Шапка.ВалютаДокумента, Ложь)+")" ;
    ОбластьПодвал.Параметры.ИтогСверки = Символы.ПС + ИтогСверки+Символы.ПС+" ";
    КонецЕсли;
    КонецЕсли;

    ОбластьПодвал.Параметры.НазваниеОрганизации = ПредставлениеОрганизации;
    ОбластьПодвал.Параметры.НаименованиеКонтрагента = ПредставлениеКонтрагента;

    //выводит юридические адреса и телефоны
    ОбластьПодвал.Параметры.ЮрАдресОрганизации = СведенияОбОрганизации.ЮридическийАдрес;
    ОбластьПодвал.Параметры.ТелефонОрганизации = СведенияОбОрганизации.Телефоны;
    //ОбластьПодвал.Параметры.ТелефонИсполнителя = СведенияОИсполнителе.НомерТелефона;

    ОбластьПодвал.Параметры.ЮрАдресКонтрагента = СведенияОКонтрагенте.ЮридическийАдрес;
    ОбластьПодвал.Параметры.ТелефонКонтрагента = СведенияОКонтрагенте.Телефоны;
    ОбластьПодвал.Параметры.ИНН = СведенияОКонтрагенте.ИНН;

    ОбластьПодвал.Параметры.Должность = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации.Должность),
    "________________", ДанныеПредставителяОрганизации.Должность);
    // (
    ОбластьПодвал.Параметры.Должность1 = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1.Должность),
    "________________", ДанныеПредставителяОрганизации1.Должность);
    ОбластьПодвал.Параметры.ДолжностьИ = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.Должность),
    "________________", ДанныеИсполнителя.Должность);
    ОбластьПодвал.Параметры.ТелефонИсполнителя = ?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя.НомерТелефона),
    ", ДанныеИсполнителя.НомерТелефона);
    // )
    ОбластьПодвал.Параметры.ДолжностьК = ?(НЕ ЗначениеЗаполнено(ДанныеПредставителяКонтрагента.Должность),
    "________________", ДанныеПредставителяКонтрагента.Должность);

    ОбластьПодвал.Параметры.ФИОПредставителя = "("+?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации),
    "_______________________",ДанныеПредставителяОрганизации.Представление)+")";
    // (
    ОбластьПодвал.Параметры.ФИОПредставителя1 = "("+?(НЕ ЗначениеЗаполнено(ДанныеПредставителяОрганизации1),
    "_______________________",ДанныеПредставителяОрганизации1.Представление)+")";
    ОбластьПодвал.Параметры.ФИОИсполнителя = "("+?(НЕ ЗначениеЗаполнено(ДанныеИсполнителя),
    "_______________________",ДанныеИсполнителя.Представление)+")";
    // )
    ОбластьПодвал.Параметры.ФИОПредставителяК = "("+?(НЕ ЗначениеЗаполнено(Шапка.ПредставительКонтрагента),
    "_______________________",ОбщегоНазначенияБПВызовСервера.ФамилияИнициалыФизЛица(
    ДанныеПредставителяКонтрагента.Фамилия + " " + ДанныеПредставителяКонтрагента.Имя + " " + ДанныеПредставителяКонтрагента.Отчество))+")";

    ТабличныйДокумент.Вывести(ОбластьПодвал);

    // В табличном документе зададим имя области, в которую был
    // выведен объект. Нужно для возможности печати покомплектно.
    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент,
    НомерСтрокиНачало, ОбъектыПечати, Шапка.АктСверкиСКонтрагентом);

    КонецЦикла; // Пока Шапка.Следующий()

    Возврат ТабличныйДокумент;

    КонецФункции
```
---
Запрос скиньте. Мы же не экстрасенсы )
---
Если говорить о моем вопросе я все скинула вроде, могу сбросить ВПФ целиком, если вы хотите помочь.
---
Не так, то что обращаетесь к табличной части. Нужно указать конкретно строку в табличной части, через точку не получится.
Надо так скорее всего так

```1c
    СтрокаСТелефоном = ДанныеИсполнителя.Найти(ВидКонтакнойИнформации,"НазваниеКолонки");
    Если СтрокаСТелефоном <> Неопределено Тогда
    Телефон = СтрокаСТелефоном.ИмяКолонкиСоЗначением;
    КонецЕсли;
```
---
А вообще лучше сделайте отладку и поставьте точку остановки. И там все станет ясно, не только в данном случае, но и в будущем и не придется по каждой проблеме создавать тему "Почему не работает и как сделать правильно".
---
Либо выложили бы сам файл ВПФ, либо пользуйтесь тегами

```1c
    //Вот так комфортно читать код:
    Если ВижуКрасивыйКод = Истина Тогда
    //Здесь пытаюсь разобраться
    Иначе
    //Что за фигню я вижу
    КонецЕсли;
```
---
Конечно спасибо за ответы ваши, но новичку самому не очень легко разобраться, поэтому пишут сюда, если вас сильно задевают такие вопросы, что я могу сказать, игнорируйте.
Ры.Сы. ВПФ выложила. Если говорить о тегах, еще не научилась пользоваться ими.
---
Умеете работать с конструктором запросов ?
---
Учусь, что-то уже освоила.
---
Телефон = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта(ДанныеИсполнителя, Справочники.ВидыКонтактнойИнформации.ТелефонПользователя);
---
Спасибо за ответы.
---
ТелефонИсполнителя = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта(Шапка.Исполнитель, Справочники.ВидыКонтактнойИнформации.ТелефонПользователя); ;
---
Спасибо за ответы.