Добрый день Знатоки. Прошу помощи. В форме справочника Контрагенты есть Реквизиты справочников Юр лиц и Физ лиц с типом СправочникОбъект. Не сохраняются данные по условию выбора типа контрагента в соответствующий справочник. Если ставлю реквизиты типа СправочникСсылка, поля этих справочников на форме справочника Контрагенты не активны, нельзя вводить данные.
---
в методе заполнитьзначениясвойств есть параметр исключая свойства, укажите в нем родителя
---
Тебе на это ответили, что нельзя устанавливать свойство "Родитель" плоским (не иерархическим) справочникам. Для этого есть еще один параметр метода, содержащий исключаемые свойства для заполнения...
Ты прислушался к этому ответу?
---
Давно школу закончили? Где 1С обучались?
---
Обучаюсь 1С
---
Ок. Чем отличается Ссылка от прикладного Объекта? Что такое прикладной Объект и для чего он предназначен?
---
Ссылка от прикладного Объекта?
Ссылка - данные только можно считывать (только для чтения)
Объект - данные для чтения, изменения и записи
---
Отлично. Каким образом можно записать Объект? Много способов знаете?
---
Много способов знаете
Использовал этот код, не сохраняет.
НовСтрокаСпрКонтрагенты = Справочники.ФизическиеЛица.СоздатьЭлемент();
ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты, ЭтотОбъект);
НовСтрокаСпрКонтрагенты.ОбменДанными.Загрузка = Истина;
НовСтрокаСпрКонтрагенты.Записать();
---
И? Что не работает?
---
И? Что не работает?
Нет, не сохраняет.
---
А что говорит отладчик? Программа вообще этот код исполняет?
---
{Справочник.Контрагенты.МодульОбъекта(6)}: Ошибка при вызове метода контекста (ЗаполнитьЗначенияСвойств)
  ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты, ЭтотОбъект);
по причине:
Ошибка установки значения свойства 'Родитель'
по причине:
Справочник не многоуровневый
Ошибка установки значения свойства 'Родитель'
по причине:
Справочник не многоуровневый
Справочник не многоуровневый
---
И что здесь непонятного? Ты пытаешься установить свойство Родитель, которого у плоского справочника нет.
Ты же знаешь, что такое иерархический справочник, и зачем там служебный реквизит Родитель?
---
Ну я не задавал Родитель, справочники не иерархические.
---
в методе заполнитьзначениясвойств есть параметр исключая свойства, укажите в нем родителя
---
укажите в нем родителя
{Справочник.Контрагенты.МодульОбъекта(6)}: Ошибка при вызове метода контекста (ЗаполнитьЗначенияСвойств)
  ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты,,Справочники.Контрагенты,ЭтотОбъект);
по причине:
Недопустимое значение параметра (параметр номер '2')
Недопустимое значение параметра (параметр номер '2')
---
Здрасьте. То есть ты решил указать родителя (абсолютно безграмотно, кстати), но при этом не указывать Источник для заполняемых свойств. Прекрасно!
---
Я тебя удивлю - в ЗаполнитьЗначенияСвойств() вообще ничего не задается, если не использовать последние два параметра метода. Но ведь ты это используешь зачем-то?
---
Я тебя удивлю
Нам объясняли и показывали, что надо задавать(((

{Справочник.Контрагенты.МодульОбъекта(6,3)}: Недостаточно фактических параметров (ЗаполнитьЗначенияСвойств)
  <<?>>ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты); (Проверка: Сервер)
---
Обалдеть. А что нам говорит документашка по поводу метода ЗаполнитьЗначенияСвойств()?
---
Обалдеть. А что нам говорит документашка по поводу метода ЗаполнитьЗначенияСвойств()?
Так я и задавал только 2 обязательных параметра: Приемник и Источник
---
Да ладно?!?!!? И сколько здесь на картинке параметров?
---
Код, Прописан основной.

```1c
    НовСтрокаСпрКонтрагенты = Справочники.ФизическиеЛица.СоздатьЭлемент();
    ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты,ЭтотОбъект);
    НовСтрокаСпрКонтрагенты.ОбменДанными.Загрузка = Истина;
    НовСтрокаСпрКонтрагенты.Записать();
```

Тот скрин, что показываете вы была ошибка, когда прописал 3й параметр Родитель
---
На твоем скрине нет третьего параметра, поэтому ошибки "недостачно параметров" быть не должно было, поскольку два обязательных параметра указаны.
Зато вот тут у тебя параметров предостаточно. Расскажи-ка - что ты здесь хотел сделать?
---
На твоем скрине нет третьего параметра. Зато вот тут их предостаточно. Расскажи-ка - что ты здесь хотел сделать?
Согласен, ошибка моя.
Но со стандартным кодом который я привел выдает ошибку.
---
Пля, а ты уже можешь попробовать приводить именно тот код, который вызвал ошибку? Чтобы в одном твоем посте были и код и ошибка?
---
, а ты уже можешь попробовать приводить именно тот код, который вызвал ошибку? Чтобы в одном твоем посте были
Изначально привел код:

```1c
    НовСтрокаСпрКонтрагенты = Справочники.ФизическиеЛица.СоздатьЭлемент();
    ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты,ЭтотОбъект);
    НовСтрокаСпрКонтрагенты.ОбменДанными.Загрузка = Истина;
    НовСтрокаСпрКонтрагенты.Записать();
```

Ошибка:
{Справочник.Контрагенты.МодульОбъекта(6)}: Ошибка при вызове метода контекста (ЗаполнитьЗначенияСвойств)
  ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты,ЭтотОбъект);
по причине:
Ошибка установки значения свойства 'Родитель'
---
Тебе на это ответили, что нельзя устанавливать свойство "Родитель" плоским (не иерархическим) справочникам. Для этого есть еще один параметр метода, содержащий исключаемые свойства для заполнения...
Ты прислушался к этому ответу?
---
{Справочник.Контрагенты.МодульОбъекта(6)}: Ошибка при вызове метода контекста (ЗаполнитьЗначенияСвойств)
  ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты,ЭтотОбъект,,"Родитель");
по причине:
Ошибка установки значения свойства 'Владелец'
---
Ну вот видишь? Уже ДРУГАЯ ошибка. Значит с одной (про Родителя) ты уже справился.
Теперь вспоминай, что же за такой служебный реквизит "Владелец" у справочника...
---
что нельзя устанавливать свойство "Родитель"
Подскажите пожалуйста, где я мог поставить свойство "Родитель"? Все перерыл - чисто.
---
Ты его не ставил. Это служебный реквизит. Он есть у всех элементов справочников.
---
не ставил. Это служебный реквизит. Он есть у всех элементов справочников.
Сорян, да - поздно, да и 3 день бьюсь с этой процедурой. Тут еще другие заморочки всплыли.
---
Такс, при таком коде:
 ЗаполнитьЗначенияСвойств(НовСтрокаСпрКонтрагенты,ЭтотОбъект,,"Владелец, Родитель");
Запись в справочник идет, но поля реквизитов не заполянются
---
Ты правда думаешь, что Фамилия, Имя и Отчество в справочнике "ФизическиеЛица" могут как-то автоматически заполниться из справочника "Контрагенты"????
---
Извините меня, я не профессионал. Подсмотрел в БГУ, там с формы элемента справочника Контрагенты, данные сохраняются в справочник или физ лиц или юр лиц. Вот пытаюсь реализовать подобное.
---
Аааа... Вон оно чо. Ты даже не пытался разобраться в том, как работает метод ЗаполнитьЗначенияСвойств()... Т.е. просто тупо "раз названия справочников в разных конфигурациях совпадают, то и код сработает"...
Досвидос.
---
Спасибо Вам за помощь. Но я же говорю, посмотрел. Долго рылся в конфигурации бгу. Всего не знаю. Решил сам попробовать реализовать подобное. Ладно не буду вас утруждать. Буду дальше разбираться.
---
Сообщение было скрыто модератором.