8.х Регистр сведений

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

  1. TopicStarter Overlay
    OIT
    Offline

    OIT Опытный в 1С

    Регистрация:
    7 май 2007
    Сообщения:
    347
    Симпатии:
    0
    Баллы:
    26
    Когда я пытаюсь записать в РегистрСведений.ПаспортныеДанные физлицо
    мне выдает сообщение "Запись не верна значение поля физлицо не может быть пустым"
    Как быть?
    Благодарю Вас
  2. lazy
    Offline

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

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Код пожалуйста.

    Думаю, что решением будет нечто вроде:
    МенеджерЗаписи.ФизЛицо = НужноеФизЛицо;
  3. TopicStarter Overlay
    OIT
    Offline

    OIT Опытный в 1С

    Регистрация:
    7 май 2007
    Сообщения:
    347
    Симпатии:
    0
    Баллы:
    26
    Код:
    НайденныйСотрудник = Справочники.ФизическиеЛица.НайтиПоНаименованию[НаименованиеСотрудника,Истина);
    НаборЗаписей = РегистрыСведений.ПаспортныеДанныеФизЛиц.СоздатьНаборЗаписей();
    НоваяЗапись=НаборЗаписей.Добавить();
    НоваяЗапись.Период=Дата('2008, 02, 01');
    Новаязапись.ФизЛицо=НаименованиеСотрудника;
    //НоваяЗапись.ФизЛицо.Наименование=НаименованиеСотрудника;
    НаборЗаписей.Записать();
    
    Таким образом я пытаюсь загрузить физлицо
    Но не получается
    Благодарю Вас

    Используйте тэг
    Код:
    [/color]
  4. Senya
    Offline

    Senya Опытный в 1С

    Регистрация:
    6 июн 2006
    Сообщения:
    594
    Симпатии:
    0
    Баллы:
    26
    Видимо НайденныйСотрудник не найден и соответсвенно это пустая ссылка. Просто поставьте проверку
    Код:
    Если НайденныйСотрудник = Справочники.ФизическиеЛица.ПустаяСсылка() Тогда
    Продолжить; // Или что-нибудь в этом духе
    КонецЕсли;
    
    Да и вместо НаименованиеСотрудника не вредно использовать НайденныйСотрудник
  5. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    1
    Баллы:
    26
    Как верно заметили, в измерении регистра - ссылка на справочник, а не строка, и это важно.
    Код:
    // Лучше вынести определение даты, особенно если вы записываете в регистр в цикле
    // так будет побыстрее и поудобнее
    ПервоеФевраля = НоваяЗапись.Период=Дата('2008, 2, 1');
    
    НайденныйСотрудник = Справочники.ФизическиеЛица.НайтиПоНаименованию(НаименованиеСотрудника,Истина);
    НаборЗаписей = РегистрыСведений.ПаспортныеДанныеФизЛиц.СоздатьНаборЗаписей();
    НоваяЗапись=НаборЗаписей.Добавить();
    НоваяЗапись.Период = ПервоеФевраля;
    Новаязапись.ФизЛицо = НайденныйСотрудник;
    
    // Если все происходит в цикле, то записывать набор записей надо после цикла
    // если не в цикле, используйте менеджер записи
    НаборЗаписей.Записать();
    
    

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