Имя: Пароль:
1C
1С v8
Запись контактной информации 8.2 БП
0 GrafDenisOFF
 
04.06.14
20:18
Доброго времени суток, уважаемые форумчане!
Сделал загрузку справочника контрагентов с адресами и телефонами из файла. Загрузка происходит, РС КонтактнаяИнформация заполняется, в форме элемента справочника через "Перейти"-"Контактная информация" записи с соответствующим типом и видом имеются. Но на самой форме элемента поля с КИ пусты. Копание в типовом коде привело к некоему реквизиту формы "НаборКонтактнойИнформации", который имеет тип "РегистрСведенийНаборЗаписей". Есть подозрение, что в нем и хранится информация с формы. Но, как я понимаю, пока форма не открыта к ее реквизитам доступа нет. Как быть с этой проблемой? Может кто делал что-то подобное? Буду благодарен за любые ответы.
1 Михаил Козлов
 
04.06.14
21:11
Проверьте виды контактной информации, которые выводятся на форму (из там 4). Возможно, это не те виды, которые Вы загружали.
Посмотрите справочник "Виды контактной информации": на форму контрагента выводятся 4 вида КИ в каком-то порядке в этом справочнике (возможно, по коду).
2 Поpyчик-4
 
04.06.14
21:27
(1) Не по  коду, а по реквизиту упорядочивания видов КИ. Как называется не помню.
3 France
 
04.06.14
21:30
Я делал..писать напрямую в регистр
4 GrafDenisOFF
 
05.06.14
08:58
всем огромное спасибо, виновата, как всегда, невнимательность. забыл установить отбор по типу и виду при чтении регистра. Вот кусок кода для записи КИ "Телефон". Может кому и пригодится.
        Наб = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
        Наб.Отбор.Объект.Установить(Элем.Ссылка);
        Наб.Отбор.Тип.Установить(Перечисления.ТипыКонтактнойИнформации.Телефон);
        Наб.Отбор.Вид.Установить(ЭтотОбъект.ВидТелефона);
        Наб.Прочитать();
        Есть = 0;
        Для Каждого СтрН из Наб Цикл
                СтрН.Представление = Телефон;
                СтрН.Активность = Истина;
                СтрН.ЗначениеПоУмолчанию = Истина;
                СтрН.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон;
                СтрН.Вид = ЭтотОбъект.ВидТелефона;
                Есть = 1;
        КонецЦикла;
        Если Есть=0 тогда
            СтрН = Наб.Добавить();
            СтрН.Представление = Телефон;
            СтрН.Объект = Элем.Ссылка;
            СтрН.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон;
            СтрН.Вид = ЭтотОбъект.ВидТелефона;
            СтрН.Активность = Истина;
            СтрН.ЗначениеПоУмолчанию = Истина;
        КонецЕсли;
        Наб.Записать();