Вопрос, видимо, или слишком элементарный, или слишком редкий, но я уже перерыла весь гугл, и не нашла ничего, что мне поможет. Спасите, мозг уже кипит!
Документооборот 8, КОРП 2.1 (Вряд ли это важно, но мало ли). Версия конфигурации - 8.3.12. При помощи расширения конфигурации я прикрутила к одному из справочников свою табличную часть. Проблема в том, что один из реквизитов этой табличной части представляет собой адрес размещения неких объектов. Вопрос на миллион нервных клеток: как прикрутить к этому реквизиту вызов адресного классификатора, чтобы он заполнялся так же, как адреса в справочнике Контрагенты и т.д. Я вижу, что в конфигурации есть регистр сведений "Адресные объекты", но каких-то винтиков голове, видимо, не хватает, чтобы понять, как это все использовать. Хотела посмотреть, как реализовано использование этого классификатора все на той же самой форме "Контрагенты", но физически в этом справочнике даже нет всех этих реквизитов (физ. адрес, юр. адрес и так далее) Видимо, они формируются как-то динамически и через костыли, но я не понимаю, есть ли смысл в этом копаться.
Неужели, не предусмотрено какого-то очевидного способа прикрутить Адресный классификатор к собственноручно созданному реквизиту? Наподобие использования типа данных реквизита - СправочникСсылка, или же вызовом какого-то метода при заполнении данных на форме - типа
???
Помогите, пожалуйста.
Документооборот 8, КОРП 2.1 (Вряд ли это важно, но мало ли). Версия конфигурации - 8.3.12. При помощи расширения конфигурации я прикрутила к одному из справочников свою табличную часть. Проблема в том, что один из реквизитов этой табличной части представляет собой адрес размещения неких объектов. Вопрос на миллион нервных клеток: как прикрутить к этому реквизиту вызов адресного классификатора, чтобы он заполнялся так же, как адреса в справочнике Контрагенты и т.д. Я вижу, что в конфигурации есть регистр сведений "Адресные объекты", но каких-то винтиков голове, видимо, не хватает, чтобы понять, как это все использовать. Хотела посмотреть, как реализовано использование этого классификатора все на той же самой форме "Контрагенты", но физически в этом справочнике даже нет всех этих реквизитов (физ. адрес, юр. адрес и так далее) Видимо, они формируются как-то динамически и через костыли, но я не понимаю, есть ли смысл в этом копаться.
Неужели, не предусмотрено какого-то очевидного способа прикрутить Адресный классификатор к собственноручно созданному реквизиту? Наподобие использования типа данных реквизита - СправочникСсылка, или же вызовом какого-то метода при заполнении данных на форме - типа
Процедура ТЧ1_ИмяРеквизитаНачалоРедактирования (...)
//Какая-то магия, в результате которой из моей формы откроется форма для заполнения данных по адресному классификатору.
КонецПроцедуры
???
Помогите, пожалуйста.
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Общие модули смотреть по контактным данным.
да, адреса могут "ехать" в форму динамически в зависимости от роли - защита данных же.
И КЛАДР недавно переехал на рельсы ФИАС в типовых, некоторые няшки работать перестали, зато у каждого дома свой УИД. Правда, когда я хочу узнать(и понять почему он не "приехал") этот УИД на сайте ФИАС, то без боли это обходиться редко.
Наверное у меня интернет плохой, а сайт хороший)
да, адреса могут "ехать" в форму динамически в зависимости от роли - защита данных же.
И КЛАДР недавно переехал на рельсы ФИАС в типовых, некоторые няшки работать перестали, зато у каждого дома свой УИД. Правда, когда я хочу узнать(и понять почему он не "приехал") этот УИД на сайте ФИАС, то без боли это обходиться редко.
Наверное у меня интернет плохой, а сайт хороший)
(2) Я читала, что пишут про БСП контактной информации, но мне не очень это все помогло. В справочниках типа Контрагенты, Организации и так далее это все реализовано через ТЧ КонтактнаяИнформация, каждая строка которой, по-простому говоря, отвечает за вывод одного единственного поля (у которого в ТЧ КИ записаны реквизиты "вид ки, тип ки" и так далее) на форму, динамически, в раздел ГруппаКонтактнойИнформации. А у меня должен быть массив полей "ТЧ_АдресОбъекта", неизвестной заранее длинны, который является столбцом моей ТЧ. Причем мне очень надо, чтобы данные оттуда потом можно было получить без километровых запросов. Короче, мне интересно, нет ли какого-то другого способа. Допустим, мой реквизит ТЧ_АдресОбъекта останется простой строкой... повесить на редактирование этого поля какой-то обработчик, который вызовет всю ту же форму заполнения адреса по классификатору и потом запишет набранные пользователем данные обратно в эту строку. Но я тупо не понимаю, как это сделать.
(3)
и у них даже пример описан
повесить на редактирование этого поля какой-то обработчик, который вызовет всю ту же форму заполнения адреса по классификатору и потом запишет набранные пользователем данные обратно в эту строку. Но я тупо не понимаю, как это сделать.
не понятно как повесить обработчик, как вызвать форму, или как записать данные обратно? Или как запрос к строкам неизвестной длины строить?
и у них даже пример описан
(3) Оно так и работает, ваш реквизит - строка. У меня так, есть реквизит - строка неограниченная и на форме элемент - представление тоже строка. И вот например подписка у элемента при начале выбора:
ВидКонтактнойИнформацииАдресаМестаДействия - структура
И Обработка выбора:
ПараметрыОткрытия = Новый Структура;
ПараметрыОткрытия.Вставить("ВидКонтактнойИнформации", ВидКонтактнойИнформацииАдресаМестаДействия);
ПараметрыОткрытия.Вставить("ЗначенияПолей", Объект.АдресМестаДействия);
ПараметрыОткрытия.Вставить("Представление", ПредставлениеАдресаМестаДействия);
//ПараметрыОткрытия.Вставить("Комментарий", КомментарийАдресаДоставки);
// Переопределямый заголовок формы,
// по умолчанию отобразятся данные по ВидКонтактнойИнформации
ПараметрыОткрытия.Вставить("Заголовок", НСтр("ru='Адрес места действия'"));
УправлениеКонтактнойИнформациейКлиент.ОткрытьФормуКонтактнойИнформации(ПараметрыОткрытия, Элемент);
ПоказатьВидКонтактнойИнформацииАдресаМестаДействия - структура
ВидКонтактнойИнформацииАдресаМестаДействия = Новый Структура;
ВидКонтактнойИнформацииАдресаМестаДействия.Вставить("Тип", Перечисления.ТипыКонтактнойИнформации.Адрес);
ВидКонтактнойИнформацииАдресаМестаДействия.Вставить("АдресТолькоРоссийский", Ложь);
ВидКонтактнойИнформацииАдресаМестаДействия.Вставить("ВключатьСтрануВПредставление", Ложь);
ВидКонтактнойИнформацииАдресаМестаДействия.Вставить("СкрыватьНеактуальныеАдреса", Ложь);
И Обработка выбора:
СтандартнаяОбработка = Ложь;
Если ТипЗнч(ВыбранноеЗначение)<>Тип("Структура") Тогда
// Отказ от выбора, данные неизменны
Возврат;
КонецЕсли;
ПредставлениеАдресаМестаДействия = ВыбранноеЗначение.Представление;
// КомментарийАдресаДоставки = ВыбранноеЗначение.Комментарий;
Объект.АдресМестаДействия = ВыбранноеЗначение.КонтактнаяИнформация;
ЭтаФорма.Модифицированность = Истина;
Показать
Внимание! Тема сдана в архив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот