8.х Регистр сведений контактная информация

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем mhl, 8 май 2009.

  1. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    при попытке записать данные в этот регистр выходит ошибка:
    Не заполнен объект
    Ошибка при вызове метода контекста (Записать): Операция не выполнена!
    РегКонтакты.Записать();
    Вот код процедуры:
    Код:
    Процедура ЗагрузкаКонтрагентов(Элемент)
    Эксель = ПолучитьCOMОбъект("C:\Documents and Settings\Администратор\Мои документы\Контрагенты.xls");
    КоличествоСтраниц = 1;
    
    Для ТекНомер = 1 По 1985 Цикл
    Код       = Эксель.Sheets(1).Cells(ТекНомер, 1).Value;
    Спонсор   = Эксель.Sheets(1).Cells(ТекНомер, 2).Value;
    ИмяКонтра = Эксель.Sheets(1).Cells(ТекНомер, 3).Value;
    Телефон   = Эксель.Sheets(1).Cells(ТекНомер, 4).Value;
    Мобильник = Эксель.Sheets(1).Cells(ТекНомер, 5).Value;
    Паспорт   = Эксель.Sheets(1).Cells(ТекНомер, 6).Value;
    
    Если ИмяКонтра = "Имя" Тогда
    Продолжить;
    КонецЕсли;
    
    СпрКонтрыПроверка = Справочники.Контрагенты.НайтиПоНаименованию(ИмяКонтра);
    Если СпрКонтрыПроверка.Наименование <> "" Тогда
    Продолжить;
    КонецЕсли;
    
    СпрКонтры = Справочники.Контрагенты.СоздатьЭлемент();
    СпрКонтры.Наименование  = ИмяКонтра;
    СпрКонтры.НомерПаспорта = Паспорт;
    
    РегКонтакты = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
    РегКонтактыЗапись = РегКонтакты.Добавить();
    
    РегКонтактыЗапись.Объект = СпрКонтры;
    РегКонтактыЗапись.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон;
    РегКонтактыЗапись.Вид = Справочники.ВидыКонтактнойИнформации.ТелефонКонтрагента;
    РегКонтактыЗапись.Представление = Телефон;
    
    РегКонтактыЗапись.Тип = Перечисления.ТипыКонтактнойИнформации.Мобильный;
    РегКонтактыЗапись.Вид = Справочники.ВидыКонтактнойИнформации.МобильныйТелефонКонтактногоЛицаКонтрагента;
    РегКонтактыЗапись.Представление= Мобильник;
    РегКонтакты.Записать();
    
    СпрКонтры.Записать();
    КонецЦикла;
    
    Собственно мне надо в справочнике Контрагенты заполнить вкладку контакты, которая ссылается на данный регистр
  2. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Код:
    СпрКонтры = Справочники.Контрагенты.СоздатьЭлемент();
    СпрКонтры.Наименование  = ИмяКонтра;
    СпрКонтры.НомерПаспорта = Паспорт;
    
    РегКонтакты = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
    РегКонтактыЗапись = РегКонтакты.Добавить();
    
    РегКонтактыЗапись.Объект = СпрКонтры;
    
    Потому, что нужно вначале объект СпрКонтры записать.

    Код:
    СпрКонтры.Записать(); // Вот это должно быть перед
    РегКонтактыЗапись.Объект = СпрКонтры.Ссылка;
    
    
    Не проверял.
  3. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    а как теперь записать в этот регистр два значения телефона на одно контактное лицо? создал дубликат измерения Тип и ресурса Представление. все равно записывается только одно значение телефона
  4. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    А еще одну запись регистра не вариант сделать??? Зачем измерения трогать?

Поделиться этой страницей