Запросы - контактная информация контрагентов (телефоны, юридические и фактические адреса)

06.06.15

Разработка - Инструментарий разработчика

Представляю вашему вниманию готовые запросы для отчетов. Также эти отчеты можно использовать просто в консоли запросов, для получения выборочной информации. Запросы для получения телефонов, Юридического, фактического, почтового адресов контрагентов. Подходят для Управления Торговлей (10, 11), УПП, Бухгалтерия и других конфигураций 1С.

Скачать файлы

Наименование Файл Версия Размер
Контактная информация Контрагентов
.erf 9,74Kb
64
.erf 9,74Kb 64 Скачать

Преимущества использования консоли запросов в любой задаче Программиста 1С

  В 1с Предприятии запустим обработку "Консоль запросов". консоль позволяет конструировать и отлаживать запросы прямо в режиме 1с Предприятие, без Конфигуратора. Это очень полезно. Любые разработки я начинаю с тестирования данных с помощью запросов. Это позволяет решить сразу несколько задач:

  1. Получить выборки данных по интересующим меня критериям
  2. Отладить запрос, сделать его рабочим, выполняющим возложенную задачу
  3. Быть уверенным в работе запроса, что он получает нужные данные от Базы Данных.
  4. Быть уверенным, что в базе данных нужные данные содержатся. Бывает так, что запрос работает, а данных для него просто нет. Вот такие ситуации сразу отслеживаются.
  5. После отладки запроса его можно сразу применить в отчете, модуле, в конфигураторе.

Отладка запросов и получение данных в режиме 1С:Предприятие

  Итак, в консоли запросов я создаю новую строку, запускаю конструктор запросов (в последнее время иногда пишу руками - так проще) и формирую текст запроса. После задания параметров запроса прямо в консоли запросов, его можно выполнить и получить таблицу-результат.

 

Рис. 1. Запрос по юридическим и фактическим адресам Контрагентов. В результатах запроса мы видим таблицу с колонками "Контрагент", "Тип", "Вид", "Адрес".

 

Рис. 1.1. Запрос по юридическим и фактическим адресам - Параметры запроса

 

Текст запроса (УБРАЛ параметры, как просили комментаторы статьи):

ВЫБРАТЬ
    КонтактнаяИнформация.Объект КАК Контрагент,
    КонтактнаяИнформация.Тип КАК Тип,
    КонтактнаяИнформация.Вид,
    МАКСИМУМ(ПОДСТРОКА(КонтактнаяИнформация.Представление, 0, 500)) КАК Адрес
ИЗ
    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты
        ПО КонтактнаяИнформация.Объект = Контрагенты.Ссылка
ГДЕ
    КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес)

СГРУППИРОВАТЬ ПО
    КонтактнаяИнформация.Объект,
    КонтактнаяИнформация.Тип,
    КонтактнаяИнформация.Вид

УПОРЯДОЧИТЬ ПО
    Контрагент,
    Тип

 

Рис. 2. Запрос по телефонам физических лиц

 

Рис. 2.1. Запрос по телефонам физических лиц - параметры запроса

 

Текст запроса (УБРАЛ параметры, как просили комментаторы статьи):

ВЫБРАТЬ
    КонтактнаяИнформация.Представление,
    КонтактнаяИнформация.Объект
ИЗ
    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ГДЕ
    КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.телефон)
    И КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ТелефонКонтрагента)
    И КонтактнаяИнформация.Объект ССЫЛКА Справочник.ФизическиеЛица

 

Рис. 3. Запрос Юр. и Факт. адрес контрагента + телефон

 

Рис. 3.1. Параметры Запроса Юр. и Факт. адрес контрагента + телефон

 

 

Текст запроса (УБРАЛ параметры, как просили комментаторы статьи):

ВЫБРАТЬ
    Контрагенты.Ссылка КАК Контрагент,
    ФактическийАдрес.Представление КАК ФактическийАдрес,
    ЮридическийАдрес.Представление КАК ЮридическийАдрес,
    Телефон.Представление КАК Телефон
ИЗ
    Справочник.Контрагенты КАК Контрагенты
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ФактическийАдрес
        ПО (ФактическийАдрес.Объект = Контрагенты.Ссылка)
            И (ФактическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
            И (ФактическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ЮридическийАдрес
        ПО (ЮридическийАдрес.Объект = Контрагенты.Ссылка)
            И (ЮридическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон))
            И (ЮридическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК Телефон
        ПО (Телефон.Объект = Контрагенты.Ссылка)
            И (Телефон.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон))
            И (Телефон.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ТелефонКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
ГДЕ
    Контрагенты.Ссылка = &Контрагент

УПОРЯДОЧИТЬ ПО
    Контрагенты.Наименование

 

Рис. 4. Запрос Юр. Факт. Адрес Контрагента + телефон + Почт. Адрес

 

Текст запроса (УБРАЛ параметры, как просили комментаторы статьи):

ВЫБРАТЬ
    Контрагенты.Ссылка КАК Контрагент,
    МАКСИМУМ(ПОДСТРОКА(ФактическийАдрес.Представление, 0, 200)) КАК ФактическийАдрес,
    МАКСИМУМ(ПОДСТРОКА(ЮридическийАдрес.Представление, 0, 200)) КАК ЮридическийАдрес,
    МАКСИМУМ(ПОДСТРОКА(Телефон.Представление, 0, 50)) КАК Телефон,
    МАКСИМУМ(ПОДСТРОКА(АдресЭлектроннойПочты.Представление, 0, 200)) КАК АдресЭлектроннойПочты
ИЗ
    Справочник.Контрагенты КАК Контрагенты
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ФактическийАдрес
        ПО (ФактическийАдрес.Объект = Контрагенты.Ссылка)
            И (ФактическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
            И (ФактическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ЮридическийАдрес
        ПО (ЮридическийАдрес.Объект = Контрагенты.Ссылка)
            И (ЮридическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
            И (ЮридическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК Телефон
        ПО (Телефон.Объект = Контрагенты.Ссылка)
            И (Телефон.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон))
            И (Телефон.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ТелефонКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресЭлектроннойПочты
        ПО (АдресЭлектроннойПочты.Объект = Контрагенты.Ссылка)
            И (АдресЭлектроннойПочты.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
            И (АдресЭлектроннойПочты.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.АдресЭлектроннойПочтыКонтрагентаДляОбменаДокументами))
ГДЕ
    Контрагенты.ПометкаУдаления = ЛОЖЬ
    И Контрагенты.ЭтоГруппа = ЛОЖЬ
    И Контрагенты.Ссылка = &Контрагент

СГРУППИРОВАТЬ ПО
    Контрагенты.Ссылка

УПОРЯДОЧИТЬ ПО
    Контрагенты.Наименование

В запросе группировка по Контрагенту. Это сделано с целью выдавать одну строку вместо нескольких в результате запроса, на случай, если у Контрагента несколько адресов, телефонов и т.п.

В случае, если вам необходимо выбрать ВСЮ контактную информацию Контрагента, не используйте группировку.

Оформление запроса в виде отчета в консоли СКД

  После этого запрос можно красиво оформить в виде отчета в Конфигураторе и предоставить в пользование. Чаще всего, я пользуюсь СКД (Система кмпоновки данных), для оформления простых запросов в виде отчетов. Я зашел в конфигуратор, написал простейший отчет на СКД, с использованием запроса, описанного выше.

Запрос к Контактной информации запрос адреса контрагентов телефоны

См. также

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 руб.

02.09.2020    119908    656    389    

701

Infostart PrintWizard

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 руб.

06.10.2023    7007    20    6    

37

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    3243    10    1    

31

SALE! 30%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2520 руб.

14.01.2013    177340    1070    0    

846

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99202    239    97    

296

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    17909    6    8    

38

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    27945    3    10    

14

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    23486    15    15    

31
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Поручик 4670 07.06.15 00:15 Сейчас в теме
Гламурнее вместо параметров Тип и Вид указывать непосредственно значение типа и вида КИ
ЗНАЧЕНИЕ(Перечисление.ТипКонтактнойИнформации.ХХХХХ)
yudartnik; rpgshnik; +2 Ответить
2. pvlunegov 157 08.06.15 07:03 Сейчас в теме
(1) Поручик,
Все правильно. Вы правы. Поменьше параметров, побольше указаний ЗНАЧЕНИЕ(Типп).
Старая статья моя. Перенес со своего сайта.
Если мозолит вам глаза, изменю Запрос
3. Поручик 4670 08.06.15 07:24 Сейчас в теме
(2) Мозолит, кто давно в теме. Начинающий пипл схавает всё.
rpgshnik; +1 Ответить
4. pvlunegov 157 08.06.15 07:34 Сейчас в теме
(3) Поручик,
Ок, исправлю.
Спасибо за комментарий.
5. pvlunegov 157 08.06.15 11:42 Сейчас в теме
(3) Поручик,
исправил. заменил ненужные параметры запроса на конструкции "ЗНАЧЕНИЕ"
во всех запросах.
6. Dr.ZIG 27 16.06.15 05:51 Сейчас в теме
А зачем в левом соединении соединение по "Контрагенты.Ссылка = &Контрагент", если в основной таблице итак есть такое условие?
7. pvlunegov 157 16.06.15 09:49 Сейчас в теме
(6) Dr.ZIG,
чтобы быстрее строился запрос.
Условие в соединении выдаст таблицу меньшего размера, чем ежели строить таблицу по всем контрагентам, а потом отбирать в ней записи по нужному контрагенту.
По идее условие в запросе на контрагента можно убрать.
Я видимо забыл его убрать когда запрос отлаживал в консоли запросов.
Пардон.
Правильно - оставлять условия при соединении таблиц, а еще лучше в условиях виртуальных таблиц
8. natar82 2 24.06.15 12:41 Сейчас в теме
А разве это подойдет для БП 3.0? там ведь нет РС Контактная информация
9. natar82 2 24.06.15 12:42 Сейчас в теме
Не подскажите, каким образом можно в запросе вытащить, например, фактический адрес?
10. VipeRock 30.05.16 09:48 Сейчас в теме
Добрый день!
Не подскажите почему ЛЕВОЕ СОЕДЕНЕНИЕ не отображает информацию из карточки контрагента.
Впервые пишу запрос, извиняюсь за функции ВЫБОР, но так они хоть показывают значения.
Параметр указанный по папке в которой контрагенты.

ВЫБРАТЬ
	Контрагенты.Наименование,
	Контрагенты.Код,
	Контрагенты.КодПоЕДРПОУ КАК Телефон,
	КонтактнаяИнформация.Представление КАК Телефон_Факс_контрагента,
	КонтактнаяИнформация.Объект.ДатаРождения КАК Дата_рождения,  
	ВЫБОР     													//EMAIL   Почта
		КОГДА КонтактнаяИнформация.Тип = &Почта
			ТОГДА ПОДСТРОКА(КонтактнаяИнформация.Представление, 0, 20)
		ИНАЧЕ NULL
	КОНЕЦ КАК Почта,
	ВЫБОР     													//EMAIL   Почта
		КОГДА КонтактнаяИнформация.Тип = &Почта
			ТОГДА ПОДСТРОКА(КонтактнаяИнформация.Представление, 0, 20)
		ИНАЧЕ NULL
	КОНЕЦ КАК E_Mail_Адрес_электронной_почты_контрагента_для_обмена_электр­онными_документами,
	ЮридическийАдрес.Представление КАК ЮридическийАдрес,
	ФактическийАдрес.Представление КАК ФактическийАдрес,
	Контрагенты.Родитель
ИЗ
	РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты
		ПО КонтактнаяИнформация.Объект = Контрагенты.Ссылка
//вариант 1		//
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ЮридическийАдрес
        ПО (ЮридическийАдрес.Объект = Контрагенты.Ссылка)
            И (ЮридическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон))
            И (ЮридическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ФактическийАдрес     //неотображает значения
        ПО (ФактическийАдрес.Объект = Контрагенты.Ссылка)
            И (ФактическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
            И (ФактическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресКонтрагента))
            И (Контрагенты.Ссылка = &Контрагент)
//попытка Факс			
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ТелефонФакс
		ПО (ТелефонФакс.Объект = Контрагенты.Ссылка)
			И (ТелефонФакс.Вид = &ВидКонтИнфТелефонФакс)
			И (ТелефонФакс.Тип = &ТипКонтактнойИнформацииТелефонФакс)
			И (Контрагенты.Ссылка = &Контрагент)
ГДЕ
    Контрагенты.Родитель = &Контрагент
УПОРЯДОЧИТЬ ПО
	Контрагенты.Наименование
Показать
11. pvlunegov 157 31.05.16 15:34 Сейчас в теме
(10) VipeRock,
в вашем запросе куча СИНТАКСИЧЕСКИХ ошибок, не запускается запрос. Это раз.
Вы видимо его вручную писали? Рекомендую пользоваться конструктором запросов. Рекомендую пользоваться обработкой "Консоль запросов", в ней интегрирован конструктор запросов. Обработка позволит ваш запрос собрать ПРАВИЛЬНО и сразу увидеть результат.
Во-вторых. У вас зачем соединение регистра Контактная информация левым соединением со справочником Контрагенты? А затем идет соединение регистра с тем-же регистром с другими отборами. Получается, что если Контактная информация не найдена, а, например, найден фактический адрес по контрагенту, то будет 0 записей, потому что центральный элемент связей - контактная информация.
Хрень получается.
Посмотрите мой запрос выше в публикации. Там все четко. Центральный элемент конструкции соединений таблиц - справочник Контрагенты. К нему левым соединением цепляются все остальные таблицы. Это дает гарантию вывода всех Контрагентов, независимо от того, есть записи по регистру Контактная информация по ним или нет.
12. pvlunegov 157 31.05.16 15:38 Сейчас в теме
(10) VipeRock,
Собственно ваш запрос не работоспособен, потому что перепутан центральный элемент всей конструкции связей таблиц. А это очень важно!
Перед построением запроса вы должны ЧЕТКО осознавать, ЧТО должны получить в конце запроса.
1). Таблицу Контрагентов с возможными контактными данными (у кого то есть телефон, у кого-то нет, у кого-то вообще ничего нет, у кого-то только адрес и т.п.)
2). Таблицу телефонов Контрагентов и,если есть телефон, подцепить к ним е-мэйлы и почтовые адреса.
В этом случае ваш метод построения запроса актуален, но грамматические ошибки надо исправлять.

Зачем в связях вы пишите Контрагенты.Ссылка = &Контрагент ?
У вас в связи левое соединение. Ладно бы полное было, тогда имеет смысл условие в связи накладывать.
Вообще здесь, в запросе с левым соединением условия не в связи надо накладывать, а в условиях запроса
13. DrVitaly 21.01.17 07:41 Сейчас в теме
(12) В последнем варианте для УТ 10.3

И (АдресЭлектроннойПочты.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
            И (АдресЭлектроннойПочты.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.АдресЭлектроннойПочтыКонтрагентаДляОбменаДокументами))


Правильнее

 И (АдресЭлектроннойПочты.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты))
            И (АдресЭлектроннойПочты.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.АдресЭлектроннойПочтыКонтрагентаДляОбменаДокументами))
KazanKokos; +1 Ответить
14. KazanKokos 10 11.02.20 15:01 Сейчас в теме
Поправил запрос как в (12), убрал группировку чтобы можно было вытащить все контакты. Добавил запрос на контактную информацию контактных лиц. Добавил поле Ресурс чтобы без заморочек можно было закинуть в СКД и сделать отчет за 5 сек
ВЫБРАТЬ
	Контрагенты.Ссылка КАК Контрагент,
	Контрагенты.Ссылка КАК Контакт,
	ПОДСТРОКА(ФактическийАдрес.Представление, 0, 200) КАК ФактическийАдрес,
	ПОДСТРОКА(ЮридическийАдрес.Представление, 0, 200) КАК ЮридическийАдрес,
	ПОДСТРОКА(Телефон.Представление, 0, 50) КАК Телефон,
	ПОДСТРОКА(АдресЭлектроннойПочты.Представление, 0, 200) КАК АдресЭлектроннойПочты,
	1 КАК Ресурс
ИЗ
	Справочник.Контрагенты КАК Контрагенты
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ФактическийАдрес
		ПО (ФактическийАдрес.Объект = Контрагенты.Ссылка)
			И (ФактическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ЮридическийАдрес
		ПО (ЮридическийАдрес.Объект = Контрагенты.Ссылка)
			И (ЮридическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента))
			И (ЮридическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК Телефон
		ПО (Телефон.Объект = Контрагенты.Ссылка)
			И (Телефон.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон))
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресЭлектроннойПочты
		ПО (АдресЭлектроннойПочты.Объект = Контрагенты.Ссылка)
			И (АдресЭлектроннойПочты.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты))
ГДЕ
	Контрагенты.ПометкаУдаления = ЛОЖЬ
	И Контрагенты.ЭтоГруппа = ЛОЖЬ

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	Контрагенты.Владелец,
	Контрагенты.Ссылка,
	ПОДСТРОКА(ФактическийАдрес.Представление, 0, 200),
	ПОДСТРОКА(ЮридическийАдрес.Представление, 0, 200),
	ПОДСТРОКА(Телефон.Представление, 0, 50),
	ПОДСТРОКА(АдресЭлектроннойПочты.Представление, 0, 200),
	1
ИЗ
	Справочник.КонтактныеЛицаКонтрагентов КАК Контрагенты
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ФактическийАдрес
		ПО (ФактическийАдрес.Объект = Контрагенты.Ссылка)
			И (ФактическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ЮридическийАдрес
		ПО (ЮридическийАдрес.Объект = Контрагенты.Ссылка)
			И (ЮридическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента))
			И (ЮридическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК Телефон
		ПО (Телефон.Объект = Контрагенты.Ссылка)
			И (Телефон.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон))
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресЭлектроннойПочты
		ПО (АдресЭлектроннойПочты.Объект = Контрагенты.Ссылка)
			И (АдресЭлектроннойПочты.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты))
ГДЕ
	Контрагенты.ПометкаУдаления = ЛОЖЬ
Показать
Светлый ум; +1 Ответить
15. zavsom 103 19.01.23 13:07 Сейчас в теме
Процедура ПоискАдресаВ_КИ(Объект, СтрП = "")
ОбъектКонтактнойИнформации = Объект;

Если СтрП="Доставка" Тогда
ВыбКонтакт = Перечисления.ТипыКонтактнойИнформации.Адрес;
ВидАдреса = Справочники.ВидыКонтактнойИнформации.АдресДоставкиКонтрагента;
ИначеЕсли СтрП="ФактАдрес" Тогда
ВыбКонтакт = Перечисления.ТипыКонтактнойИнформации.Адрес;
ВидАдреса = Справочники.ВидыКонтактнойИнформации.ФактАдресКонтрагента;
Иначе
КонецЕсли;

Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Объект", ОбъектКонтактнойИнформации);
Запрос.УстановитьПараметр("Тип" , ВыбКонтакт);
Запрос.УстановитьПараметр("Вид" , ВидАдреса);

Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
| КонтактнаяИнформация.РегиональныйМенеджер,
| КонтактнаяИнформация.Менеджер,
| КонтактнаяИнформация.Филиал
|ИЗ
| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
|ГДЕ
| КонтактнаяИнформация.Объект = &Объект
| И КонтактнаяИнформация.Тип = &Тип
| И КонтактнаяИнформация.Вид = &Вид";

РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Иначе
ТаблицаРезультат = РезультатЗапроса.Выгрузить();
КонецЕсли;

КонецПроцедуры

понадобилось добавить в адреса менеджеров и филиалы вот приблуда для чтения их
16. pavelma 12 18.04.23 12:13 Сейчас в теме
(15)Откуда регистр сведений? Его сейчас ведь нет в конфигурации
17. pvlunegov 157 27.04.23 07:55 Сейчас в теме
Сейчас эти запросы возможно уже не актуальны. Современные конфигурации построены на БСП, там уже нет упомянутого регистра сведений
Оставьте свое сообщение