Делаю макет печатной формы,никак не получается вывести телефон из справочника физ лиц, конфигурация для микрофинансовых организаций,сделана на платформе бухгалтерии. Первый скрин предприятие,физ лица где заполняются данные физлиц, на втором скрине вид формы в конфигураторе,но нету табличной части этой,на третем скрине в данных справочника есть табличная часть "Контактная информация" куда попадают эти данные, было обнаружено что табличная часть (так как ее нет на форме) подключается из модуля формы (там есть код). Соответственно пытаюсь обратиться через запрос на 4м скрине и вывести в макет,но ничего не приходит,а так как это внешняя обработка,точку останова поставить и посмотреть что приходит в переменную невозможно.Поскажите как мне вывести номер телефона из справочника физлиц
---
и если нужен просто телефон... зачем такой большой запрос... получай сразу из КИ... потом циклом просто по результату пробегайся...
ВЫБРАТЬ
ФизическиеЛицаКонтактнаяИнформация.Ссылка КАК Ссылка,
ФизическиеЛицаКонтактнаяИнформация.Тип КАК Тип,
ФизическиеЛицаКонтактнаяИнформация.Вид КАК Вид,
ФизическиеЛицаКонтактнаяИнформация.Представление КАК Представление,
ФизическиеЛицаКонтактнаяИнформация.НомерТелефона КАК НомерТелефона,
ФизическиеЛицаКонтактнаяИнформация.НомерТелефонаБезКодов КАК НомерТелефонаБезКодов
ИЗ
Справочник.ФизическиеЛица.КонтактнаяИнформация КАК ФизическиеЛицаКонтактнаяИнформация
ГДЕ
ФизическиеЛицаКонтактнаяИнформация.Ссылка = &Ссылка
И ФизическиеЛицаКонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон)
---
а так как это внешняя обработка,точку останова поставить и посмотреть что приходит в переменную невозможно и с какого это же перепугу внешнюю обработку нельзя отладить, впиливаешь все что тебе надо в модуль формы обработки, и отлаживай сколько твоей душе угодно, а потом уже когда все отладил, перекинул в модуль обработки.
---
Вы не видите страницу "Контактная информация" на форме в режиме конфигуратора, потому что она создается динамически в режиме выполнения средствами библиотеки стандартных подсистем.
Но данные можно достать как кодом (5), так и запросом к табличной части КонтактнаяИнформация справочника ФизическиеЛица, сделав там предварительный отбор по Вид и Тип.
---
Как протестить внешнюю обработку или отчет: вставьте ее в конфу и все точки останова будут работать. Разумеется, не в рабочую, а в копию.
---
А что мешает обратится в запросе сразу к табличной части?
---
Предлагаю Вам не мучиться с получением контактной информации физ. лица одним запросом с данными для печати. Используйте предназначенный для этого программный интерфейс БСП. Конечно, это породит дополнительные запросы к ИБ, зато проще в реализации и сопровождении.
Например, для получения рабочего телефона заданного физ. лица подойдет такой код:

```1c
    Телефон = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформацииОбъекта(ФизЛицо,
    Справочники.ВидыКонтактнойИнформации.ТелефонРабочийФизическиеЛица);
```

Если физ. лиц несколько, для оптимизации соберите их в массив и получите таблицу всех их телефонов (рабочие, домашние и т.д.):

```1c
    ТабКИ = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъектов(МассивФизЛиц,
    Перечисление.ТипыКонтактнойИнформации.Телефон);
```
---
Контактная информация из этого запроса будет иметь тип "РезультатЗапроса", а в коде к ней идет обращение как к коллекции ("для каждого").
Там видимо в исключении ошибку выбрасывает на этой строке, поэтому и в макете нет ничего.

Замените строку

```1c
    ТабЧасть = ВыборкаДетальныеЗаписи.КонтактнаяИнформация;
```

на

```1c
    ТабЧасть = ВыборкаДетальныеЗаписи.КонтактнаяИнформация.Выгрузить();
```
---
Телефон домашний можно получить таким запросом

ВЫБРАТЬ
 ФизическиеЛицаКонтактнаяИнформация.Ссылка КАК Человек,
 ФизическиеЛицаКонтактнаяИнформация.Представление КАК ТелефонДомашний
ИЗ
 Справочник.ФизическиеЛица.КонтактнаяИнформация КАК ФизическиеЛицаКонтактнаяИнформация

ГДЕ
 ФизическиеЛицаКонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ТелефонДомашнийФизическиеЛица)

Вариант ТелефонМобильныйФизическиеЛица или ТелефонРабочийФизическиеЛица соответственно
Все это из ЗУП - но думаю по аналогии можно и в вашей конфе сделать
---
и если нужен просто телефон... зачем такой большой запрос... получай сразу из КИ... потом циклом просто по результату пробегайся...
ВЫБРАТЬ
ФизическиеЛицаКонтактнаяИнформация.Ссылка КАК Ссылка,
ФизическиеЛицаКонтактнаяИнформация.Тип КАК Тип,
ФизическиеЛицаКонтактнаяИнформация.Вид КАК Вид,
ФизическиеЛицаКонтактнаяИнформация.Представление КАК Представление,
ФизическиеЛицаКонтактнаяИнформация.НомерТелефона КАК НомерТелефона,
ФизическиеЛицаКонтактнаяИнформация.НомерТелефонаБезКодов КАК НомерТелефонаБезКодов
ИЗ
Справочник.ФизическиеЛица.КонтактнаяИнформация КАК ФизическиеЛицаКонтактнаяИнформация
ГДЕ
ФизическиеЛицаКонтактнаяИнформация.Ссылка = &Ссылка
И ФизическиеЛицаКонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон)
---
Блин.... А как то можно так сделать чтобы я смогла вывести список телефонов для смс рассылки? Куда эти длинные предложения вставлять?