Имя: Пароль:
1C
Админ
Вызов формы ввода адреса по кладру
,
0 Manonegro
 
22.06.12
09:37
Здравствуйте. Только начинаю своё знакомство с восьмой платформой, так что прошу сильно не пинать...
В конфигурации "УТ" изначально адреса вбивались в справочник договоры, причем в произвольном варианте, например: г.Кукуйск,ул.Зеленая, 6-55,м-н"Лотос".
Сейчас нужно эти адреса перенести в регист сведений "контактная информация" в адреса доставки, а затем в документах указать данные адреса. В принципе, алгоритм ясен, но не могу понять, как вызвать из внешней обработки форму подбора адреса по кладру, чтобы вернуть значения полей (1-10) в массив или типа того. Помогите, пожалуйста.
1 kosts
 
22.06.12
09:50
Лучше посмотри как в типовой сделано. В зупе так сделано

// Обработчик события НачалоВыбора элемента формы КонтактнаяИнформация.Представление.
//
Процедура ФормаЭлементаКонтактнаяИнформацияПредставлениеНачалоВыбора(Элемент, СтандартнаяОбработка, ЭтаФорма) Экспорт
   
   СтандартнаяОбработка = Ложь;
   Обработки.РедактированиеКонтактнойИнформации.Создать().РедактироватьЗапись(ЭтаФорма.ЭлементыФормы.КонтактнаяИнформация.ТекущиеДанные,, ЭтаФорма);
   
КонецПроцедуры
2 Manonegro
 
22.06.12
10:01
Это я видел. А что за переменные: Элемент, СтандартнаяОбработка, ЭтаФорма? Что вместо них подставить?
3 kosts
 
22.06.12
10:08
(2)
Табличное поле КонтактнаяИнформация на форме элемента справочника физлица, данные НаборКонтактнойИнформации, тип набор записей регистр сведений контактная информация

// Обработчик события НачалоВыбора элемента формы КонтактнаяИнформация.Представление.
//
Процедура КонтактнаяИнформацияПредставлениеНачалоВыбора(Элемент, СтандартнаяОбработка)
   
   ФизическиеЛицаКлиент.ФормаЭлементаКонтактнаяИнформацияПредставлениеНачалоВыбора(Элемент, СтандартнаяОбработка, ЭтаФорма);
   
КонецПроцедуры
4 Manonegro
 
22.06.12
11:34
Нет. Поставил точку останова на "КонтактнаяИнформацияПредставлениеНачалоВыбора", не срабатывает! Там есть обработка "РедактированиеКонтактнойИнформации". Может там рыть?
5 kosts
 
22.06.12
12:21
(4) Срабатывает. Она самая и вызывается.
6 Manonegro
 
22.06.12
14:35
ОбработкаРедактирования = Обработки.РедактированиеКонтактнойИнформации.Создать();
   ОбработкаРедактирования.ДоступностьОбъекта = Ложь;
   
   МенеджерЗаписи=РегистрыСведений.КонтактнаяИнформация.СоздатьМенеджерЗаписи();
   МенеджерЗаписи.Объект=Справочники.Контрагенты.НайтиПоНаименованию(пКонтрагент);
   МенеджерЗаписи.Вид=Справочники.ВидыКонтактнойИнформации.НайтиПоНаименованию("Адрес доставки");
   МенеджерЗаписи.Тип=Перечисления.ТипыКонтактнойИнформации.Адрес;
   МенеджерЗаписи.Прочитать();
   ОбработкаРедактирования.РедактироватьЗапись(МенеджерЗаписи);

Появляется форма ввода элементов адреса из кладра, но с песочными часами. Не дает ввести значения. А как запустить её модально, чтобы ввести значения, а по выходу иметь результат в МенеджереЗаписи?
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший