Получить Контактную информацию по контрагентам в запросе
1С:Бухгалтерия государственного учреждения
Платформа 1С v8.3
Корп. решения 1С
Бухгалтерский учет
Программист
Здравствуйте! Я недавно начал изучать 1С и ещё и столкнулся с проблемой получения контактной информации контрагентов в запросе.
в конфигурации БГУ2 создал справочник, в нем хранится контрагент ну остальная информация (например рег. номер, должность, дата постановки на учет...).
Сделал печатную форму куда вывожу все эти данные + надо вывести адрес этого контрагента. Изначально в этом справочники я также создал реквизит Адрес и при изменении контрагента получал адрес следующим образом:
Но хранить адрес в моем справочники нет смысла так как если у контрагента изменится адрес тут он будет не актульным, нужно или контрагента перевыбирать либо при открытии сверять данные. Поэтому тут адрес удалил.
Теперь в самом запросе мне нужно как то получить адреса всех контрагентов из моего справочника:
на данный момент запрос выглядит вот так.
Я так полагаю использовать функцию в цикле обхода запроса не правильно, так как создается новый запрос к БД и если у тебя там 1000 человек то это 1000 запросов к БД.
Раньше был регистр сведений Контактная информация (в старых версиях) сейчас его нет. Как правильно выбрать адреса в запросе?
в конфигурации БГУ2 создал справочник, в нем хранится контрагент ну остальная информация (например рег. номер, должность, дата постановки на учет...).
Сделал печатную форму куда вывожу все эти данные + надо вывести адрес этого контрагента. Изначально в этом справочники я также создал реквизит Адрес и при изменении контрагента получал адрес следующим образом:
АдресПредставление = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта(Контрагент.ЮридическоеФизическоеЛицо,Справочники.ВидыКонтактнойИнформации.АдресПоПропискеФизическиеЛица,ТекущаяДата(),Ложь);
Данные = РаботаСАдресами.АдресВФорматеКЛАДР(АдресПредставление[0].ЗначенияПолей);
Но хранить адрес в моем справочники нет смысла так как если у контрагента изменится адрес тут он будет не актульным, нужно или контрагента перевыбирать либо при открытии сверять данные. Поэтому тут адрес удалил.
Теперь в самом запросе мне нужно как то получить адреса всех контрагентов из моего справочника:
Запрос = Новый Запрос();
Запрос.Текст = "ВЫБРАТЬ
| ЕД_ПедагогическиеРаботники.Ссылка КАК ПедРаботник,
| ЕД_ПедагогическиеРаботники.Контрагент КАК Контрагент,
| ЕД_ПедагогическиеРаботники.Организация КАК МестоРаботы,
| ЕД_ПедагогическиеРаботники.РегНомер КАК РегНомер,
| ЕД_ПедагогическиеРаботники.ОснованиеПостановкиНаУчет КАК Основание,
| НАЧАЛОПЕРИОДА(ЕД_ПедагогическиеРаботники.ДатаСнятияСУчета, ДЕНЬ) КАК ДатаСнятия,
| ЕСТЬNULL(ЕД_ПедагогическиеРаботники.СоставСемьи, 0) КАК СоставСемьи,
| ЕД_ПедагогическиеРаботники.Должность КАК Должность,
| ЕД_ПедагогическиеРаботники.ЛицевойСчет КАК ЛицСчет,
| ФИОФизическихЛицСрезПоследних.ФизическоеЛицо.СтраховойНомерПФР КАК СНИЛС
|ИЗ
| Справочник.ЕД_ПедагогическиеРаботники КАК ЕД_ПедагогическиеРаботники
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизическихЛиц.СрезПоследних КАК ФИОФизическихЛицСрезПоследних
| ПО ЕД_ПедагогическиеРаботники.Контрагент.ЮридическоеФизическоеЛицо = ФИОФизическихЛицСрезПоследних.ФизическоеЛицо.Ссылка,
| Справочник.ФизическиеЛица.КонтактнаяИнформация КАК ФизическиеЛицаКонтактнаяИнформация
|ГДЕ
| НЕ ЕД_ПедагогическиеРаботники.ЭтоГруппа
| И &Условие1
| И &Условие2
| И &Условие3";
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&Условие1",?(МестоРаботыСписком.Количество()>0,"ЕД_ПедагогическиеРаботники.Организация В (&МассивМестоРаботы)","Истина"));
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&Условие2",?(ДолжностиСписком.Количество()>0,"ЕД_ПедагогическиеРаботники.Должность В (&ДолжностиСписком)","Истина"));
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&Условие3","ЕД_ПедагогическиеРаботники.СнятСУчета = &СнятСУчета");
Показатьна данный момент запрос выглядит вот так.
Я так полагаю использовать функцию
УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта
Раньше был регистр сведений Контактная информация (в старых версиях) сейчас его нет. Как правильно выбрать адреса в запросе?
По теме из базы знаний
- Запросы - контактная информация контрагентов (телефоны, юридические и фактические адреса)
- Контактная информация в отчетах на основе Универсального отчета встроенными средствами
- История изменения контактной информации контрагентов, на примере cохранения истории изменений адресов партнеров и контрагентов, для УТ 11.2
- Конвертация данных. Выгрузка контактной информации из регистра сведений в табличную часть
- Загрузка данных контрагентов из России, Беларуси и Казахстана из веб-сервисов.
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот