Получить фактический адрес контрагента не строкой
Как получить отдельно город, улицу, дом итд из фактич. адреса контрагента
в 8.2 работало так
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| КонтактнаяИнформация.Объект как ФИО,
| КонтактнаяИнформация.Тип,
| КонтактнаяИнформация.Вид,
| КонтактнаяИнформация.Представление,
| КонтактнаяИнформация.Поле1 КАК Индекс,
| КонтактнаяИнформация.Поле2 КАК Область,
| КонтактнаяИнформация.Поле3,
| КонтактнаяИнформация.Поле4 КАК Город,
| КонтактнаяИнформация.Поле5,
| КонтактнаяИнформация.Поле6 КАК Улица,
| КонтактнаяИнформация.Поле7 КАК Дом,
| КонтактнаяИнформация.Поле8 КАК Корпус,
| КонтактнаяИнформация.Поле9 КАК Квартира,
| КонтактнаяИнформация.Поле10,
| КонтактнаяИнформация.Комментарий,
| КонтактнаяИнформация.ЗначениеПоУмолчанию,
| КонтактнаяИнформация.ТипДома,
| КонтактнаяИнформация.ТипКорпуса,
| КонтактнаяИнформация.ТипКвартиры,
| КонтактнаяИнформация.ПользовательЛичногоКонтакта,
| Контрагенты.Ссылка,Контрагенты.Код
|ИЗ
| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты
| ПО КонтактнаяИнформация.Объект = Контрагенты.Ссылка
|ГДЕ
| Контрагенты.ЮрФизЛицо = &ВидКнтр
| //И КонтактнаяИнформация.Тип.Ссылка = &Тип
| И КонтактнаяИнформация.Вид.Ссылка = &Вид И Контрагенты.Родитель.Ссылка = &Родитель
|»;
//Запрос.УстановитьПараметр(«Тип», Перечисления.ТипыКонтактнойИнформации.Адрес);
Запрос.УстановитьПараметр(«ВидКнтр», Перечисления.ЮрФизЛицо.ФизЛицо);
Запрос.УстановитьПараметр(«Вид»,Справочники.ВидыКонтактнойИнформации.ФактАдресКонтрагента);
Запрос.УстановитьПараметр(«Родитель», ГруппаКонтрагентов.Ссылка);
РезультатЗапроса = Запрос.Выполнить();
В 8.3 могу получить только пердставление адреса. а как его обработать? Помогите пжл
Преимущества использования консоли запросов в любой задаче Программиста 1С
В 1с Предприятии запустим обработку «Консоль запросов». консоль позволяет конструировать и отлаживать запросы прямо в режиме 1с Предприятие, без Конфигуратора. Это очень полезно. Любые разработки я начинаю с тестирования данных с помощью запросов. Это позволяет решить сразу несколько задач:
Отладка запросов и получение данных в режиме 1с Предприятие
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи ):
![]() | 2. Запрос по телефонам физических лиц |
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи ) :
![]() | 3. Запрос Юр. и Факт. адрес контрагента + телефон |
![]() | 3.1. Параметры Запроса Юр. и Факт. адрес контрагента + телефон |
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи ) :
![]() | 4. Запрос Юр. Факт. Адрес Контрагента + телефон + Почт. Адрес |
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи) :
Оформление запроса в виде отчета в консоли СКД
После этого запрос можно красиво оформить в виде отчета в Конфигураторе и предоставить в пользование. Чаще всего, я пользуюсь СКД (Система кмпоновки данных), для оформления простых запросов в виде отчетов. Я зашел в конфигуратор, написал простейший отчет на СКД, с использованием запроса, описанного выше.
Работаем с контактной информацией в конфигурациях на БСП
Введение
Итак, перехожу к разделу получения контактной информации объектов с помощью БСП:
Получение контактной информации объектов
Чтобы получить полную контактную информацию контрагента, организации, партнера можно воспользоваться функцией:
КонтактнаяИнформацияОбъекта(СсылкаИлиОбъект, ВидКонтактнойИнформации = Неопределено, Дата = Неопределено, ТолькоПредставление = Истина) Экспорт
В данном примере, получаем полную контактную информацию на текущую дату. При установленном параметре ложь, будет возвращаться ТаблицаЗначений со всей контактной информацией.
В следующем примере вернем фактический адрес контрагента строкой:
Так же существует схожая функция, производящая получение контактной информации для нескольких ссылок или объектов одновременно:
Функция КонтактнаяИнформацияОбъектов(СсылкиИлиОбъекты, Знач ТипыКонтактнойИнформации = Неопределено, Знач ВидыКонтактнойИнформации = Неопределено, Дата = Неопределено) Экспорт
Пример использования такой:
Вышеперечисленные функции можно использовать в связке с «индивидуальными» функциями конфигураций по получению информации об организации и контрагентах. Частично об «индивидуальных» функциях я изложил материал вот здесь .
Теперь, давайте посмотрим немного глубже в результаты вышеуказанных функций. Строка возвращаемой таблицы значений выглядит вот так:
Рис.1. Строка таблицы значений контактной информации.
Рис.2. Формат json в колонке Значение.
Сейчас, я хочу преобразовать эту json-строку в структуру для дальнейшего использования. Сделаю это стандартными методами БСП, воспользуюсь функцией:
Функция СтрокуJSONВСтруктуру(Значение) Экспорт
Доработанный код будет выглядеть вот так:
Рис.3. Преобразованная json в структуру.
Здесь, я ничего не придумываю, использую только типовые функции и процедуры БСП и получаю требуемую контактную информацию «по полям» в удобном виде.
Преобразование контактной информации объектов
Сначала рассмотрим функцию, которая позволяет получить контактную информацию в формате xml
Функция КонтактнаяИнформацияВXML(Знач ЗначенияПолей, Знач Представление = «», Знач ОжидаемыйВид = Неопределено) Экспорт
Рассмотрим пример работы с данной функцией, предварительно доработав предыдущий пример:
В качестве результата в переменную ККК возвращается XML-структура, согласно схемы пакетов КонтактнаяИнформация или Адрес.
Рис.4. Преобразованная структура в XML-строку.
Еще один пример с телефоном:
В переменную ТелефонXML возвращается XML строка вот такого содержания:
Рис.5. XML-строка с типом «Номер телефона».
Преобразование структуры «телефона» идет по такой типовой схеме:
Теперь, преобразуем полученную строку XML в строку JSON, доработаем код процедуры:
Полученный ТелефонJSON такой:
Рис.6. JSON-строка с типом «Номер телефона».
Его так же можно преобразовать в структуру с помощью вышеуказанной функции
Функция СтрокуJSONВСтруктуру(Значение) Экспорт
Так, базовые вещи с преобразованием контактной информации я описал. Теперь, переходим к разделу записи контактной информации объектов.
Запись контактной информации объектов
В данном разделе я рассмотрю базовую процедуру добавления контактной информации по ссылке
Процедура ДобавитьКонтактнуюИнформацию(СсылкаИлиОбъект, ЗначениеИлиПредставление, ВидКонтактнойИнформации, Дата = Неопределено, Замещать = Истина) Экспорт
Доработаем наш пример:
Рис.7. Результат добавления «Номера телефона» в карточку контрагента с помощью возможностей БСП.
В данном примере номер телефона «красиво разложен» по полям. Хорошо, переходим к заключению.
Заключение
В данной статье, я постарался обозначить основные правила и методы работы с контактной информацией в рамках библиотеки стандартных подсистем конфигурации. Я описал чтение, преобразование и запись контактной информации объектов.
Надеюсь, что данная информация будем вам полезна, применение данных стандартных методов позволит вам экономить ваше время на разработку ваших решений.
Примеры данной статьи я реализовывал на Платформе 1с 8.3.17.1549, конфигурации Розница 2.3.5 с включенной БСП 3.1.2.457.
Всем спасибо за прочтение, до новых встреч!
Предыдущие материалы
Так же, я прошу посмотреть мои предыдущие статьи, посвященные базовым возможностям типовых конфигураций:
Как получить адрес контрагента
какие ещё есть способы?
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Адрес контрагента
Здравствуйте, 1С:Предприятие 8.3 (8.3.10.2561) Бухгалтерия для Казахстана, редакция 2.0.
Получить остаток возвратной тары контрагента
Здравствуйте, подскажите код как получить задолженность возвратной тары по текущему клиенту и.
Не могу получить список счетов контрагента.
Товарищи, вопрос может и глупый, но что-то никак не удается получить счета контрагента (в событиях.
Как выбрать контрагента.
Доброго времени суток. Опишу ситуацию в целом. 1С 7.7 бухгалтерия. С дописанной конфигурацией под.
Помощь в написании контрольных, курсовых и дипломных работ здесь.

Всем привет! Получаю СчетНаОплатуПокупателю и из него ни в какую не получается получить.

Добрый день! Помогите пожалуйста. Кто-то уже разобрался в вопросе как в 1С ЗУП 3.1 во внешней.
Как выдернуть данные банковского счета контрагента?
Подскажите пожалуйста, как в Модуле менеджера дока Заказ клиента получить данные банковского счета.
Ваш браузер устарел, пожалуйста обновите ваш браузер пройдя по ссылке www.microsoft.com/download
Преимущества использования консоли запросов в любой задаче Программиста 1С
В 1с Предприятии запустим обработку «Консоль запросов». консоль позволяет конструировать и отлаживать запросы прямо в режиме 1с Предприятие, без Конфигуратора. Это очень полезно. Любые разработки я начинаю с тестирования данных с помощью запросов. Это позволяет решить сразу несколько задач:
Отладка запросов и получение данных в режиме 1с Предприятие
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи ):
![]() | 2. Запрос по телефонам физических лиц |
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи ) :
![]() | 3. Запрос Юр. и Факт. адрес контрагента + телефон |
![]() | 3.1. Параметры Запроса Юр. и Факт. адрес контрагента + телефон |
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи ) :
![]() | 4. Запрос Юр. Факт. Адрес Контрагента + телефон + Почт. Адрес |
Текст запроса ( УБРАЛ параметры, как просили комментаторы статьи) :
Оформление запроса в виде отчета в консоли СКД
После этого запрос можно красиво оформить в виде отчета в Конфигураторе и предоставить в пользование. Чаще всего, я пользуюсь СКД (Система кмпоновки данных), для оформления простых запросов в виде отчетов. Я зашел в конфигуратор, написал простейший отчет на СКД, с использованием запроса, описанного выше.














