Процедурная запись в РегистрыСведений ФиоФизЛиц

1. Arguleon 03.06.16 19:31 Сейчас в теме
Доброго времени суток. Подскажите пожалуйста.
1.) Как процедурно записать данные в Измерении ФизЛицо с двумя типами данных,
например так:
НоваяЗапись=РегистрыСведений.ФИОФизЛиц.СоздатьМенеджерЗаписи();
НоваяЗапись.ФизЛицо="ФИО";
НоваяЗапись.Фамилия="Фамилия";
НоваяЗапись.Записать();
Пишет ошибку
{Форма.Форма.Форма(22)}: Ошибка при вызове метода контекста (Записать)
РегистрНовый.Записать();
по причине:
Запись не верна! Значение поля "Физ. лицо" не может быть пустым!: Фамилия, имя, отчество физического лица: 01.01.0001, (Регистр сведений: ФИО физ. лиц)

Я так понимаю что помимо НоваяЗапись.ФизЛицо="ФИО"; нужно указать что этот сотрудник является Физическим лицом но как это сделать не знаю.
2.) В справочники Физические лица есть табличная часть контактная информация, при загрузке данных из табличной части например:
НовыйОбъект=Справочники.ФизическиеЛица.СоздатьЭлемент();
НовыйОбъект.Наименование="ФИО";
НоваяСтрока=НовыйОбъект.КонтактнаяИнформация.Добавить();
НоваяСтрока.НомерТелефона="Номер телефона";
НовыйОбъект.Записать();
Данные не записываются (а может и записываются) но в форме они не отображаются, как решить данную проблему.
Заранее спасибо.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. lopatin 689 03.06.16 19:54 Сейчас в теме
Там где в регистр сведений пишите в измерение ФизЛицо, должна быть указана ссылка на элемент справочника Физические лица.

Контактная информация точно, хранится в табличнойчасти? Скорее всего это на форме таб. часть, но информация туда подтягивается из других мест, регистры, например.
3. Arguleon 03.06.16 20:09 Сейчас в теме
1. Немного не понял, НоваяЗапись.ФизЛицо=СправочникСсылка.ФизическиеЛица? Так не получается, напишите пожалуйста как правильно и еще ФизЛицо состоит из двух типов СправочникСсылка.ФизическиеЛица, СправочникСсылка.Организации.
2. Розница 2.1 не могу найти где в регистрах сведений контактные данные находятся помимо справочника.
4. lopatin 689 03.06.16 20:21 Сейчас в теме
(3) Arguleon, ФизЛицо не может состоять из двух типов... Вы измерению ФизЛицо должны присвоить значение элемента справочника ФизическиеЛица..
5. Arguleon 03.06.16 20:29 Сейчас в теме
Все ровно не понимаю что надо сделать, заранее извиняюсь, напишите пожалуйста как код должен выглядеть.
6. Arguleon 03.06.16 21:31 Сейчас в теме
Первый вопрос отпадает, нашел решение, подгружать надо было с начало данные справочника а потом уже данные регистра сведений.
Не могу понять как подгружать контактные данные в рознице 2.1. кто знает подскажите пожалуйста.
7. starik-2005 3088 04.06.16 11:01 Сейчас в теме
(6) Arguleon, если там обновленная БСП, то контактная инфа там уже в сериализованном пакете XDTO хранится. Создаете объект XDTO, засовываете туда все, что Вам надо, потом сериализуете и записываете. В БСП для этого есть полезные процедуры и функции. В строке табличной части нужно установить тип КИ (Перечисления/справочники.ТипыУонтИнфы.Телефон), вид КИ (справочники.ВидыКонтИнфы.ТелефонФизлица), представление, значение, значение в XML, ... Если попрыгать по модулям КИ, то все элементарно.
8. lopatin 689 05.06.16 07:57 Сейчас в теме
(7) starik-2005, Что значит "контактная инфа там уже в сериализованном пакете XDTO хранится"?
9. lopatin 689 05.06.16 08:24 Сейчас в теме
НовыйОбъект=Справочники.ФизическиеЛица.СоздатьЭлемент(); 
НовыйОбъект.Наименование="ФИО"; 
НоваяСтрока=НовыйОбъект.КонтактнаяИнформация.Добавить(); 
НоваяСтрока.НомерТелефона="Номер телефона"; 
НовыйОбъект.Записать(); 


Это весь код, который вы выполняете при попытке записать контактную информацию? Там еще надо заполнить ВидКонтактнойИнформации или что-то подобное.

В общем просто заполнить телефон мало. Посмотрите структуру этой табличной части, там должны быть реквизиты, которые обязательны для заполнения любой Контактной информации
10. Arguleon 05.06.16 11:15 Сейчас в теме
Всем спасибо за помощь, действительно нужно был тип и вид добавить.
11. lopatin 689 05.06.16 15:59 Сейчас в теме
(10) Arguleon, А чтобы проверить, что у вас там назаписывалось и возможно не выводится в форму, пользуйтесь консолью запросов, делая запрос по табличной части, получите все строки записанные в таб. часть. + делайте в запросе условие на элемент справочника, чтобы увидеть, строки таб. части только интересующего элемента
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот