Заполнение табличной части справочника из табличной части документа

1. user2084919 02.05.24 21:36 Сейчас в теме
В дипломе хочу реализовать добавление автомобиля, который приобрел клиент в документе "Реализация товара", в справочник "Клиенты". А также номер договора, по которому приобретен этот автомобиль. Пыталась найти сама как написать код, но не получилось. Буду благодарна если помогут.

пробовала этот код:
Для каждого стр из Авто	Цикл
   	 СпрКлиенты = Справочники.Клиенты.СоздатьЭлемент();
	 СпрКлиенты.Наименование1 = стр.Номенклатура ;
	 СпрКлиенты.Записать();
	 КонеЦцикла


Но он добавляет автомобиль в сам справочник "Клиенты", а не в табличную часть у самого клиента.
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
8. nomad_irk 76 03.05.24 10:51 Сейчас в теме
(7)
КлиентОбъект = Клиент.ПолучитьОбъект();
ДанныеАвтомобиля = КлиентОбъект.Автомобили.Добавить();
ДанныеАвтомобиля.Наименование1 = стр.Номенклатура ;
КлиентОбъект.Записать();
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. spacecraft 02.05.24 21:55 Сейчас в теме
(1)
СпрКлиенты = Справочники.Клиенты.СоздатьЭлемент();
Для каждого стр из Авто Цикл
   ДанныеАвтомобиля = СпрКлиенты.Автомобили.Добавить();
   ДанныеАвтомобиля.Наименование1 = стр.Номенклатура ;
КонеЦцикла
СпрКлиенты.Записать();


ну и именам лучше давать понятные названия.
user1619761; +1 Ответить
6. user2084919 03.05.24 10:15 Сейчас в теме
(2) Это работает, но только можно как-то сделать, чтобы автомобиль записывался в табличную часть клиента который купил этот автомобиль, а не создавалась новая запись в справочнике клиенты?
Прикрепленные файлы:
7. user2084919 03.05.24 10:49 Сейчас в теме
(6) То есть у меня есть клиент в справочнике "клиенты". В документе "Реализация товара" я выбираю клиента из справочника. И после проведения в табличную часть этого клиента должен записаться автомобиль.
8. nomad_irk 76 03.05.24 10:51 Сейчас в теме
(7)
КлиентОбъект = Клиент.ПолучитьОбъект();
ДанныеАвтомобиля = КлиентОбъект.Автомобили.Добавить();
ДанныеАвтомобиля.Наименование1 = стр.Номенклатура ;
КлиентОбъект.Записать();
10. user2084919 03.05.24 10:56 Сейчас в теме
(8) Спасибо, всё сработало
11. FUXEARA 03.05.24 11:30 Сейчас в теме
(10) это слабое решение для диплома! На 3+/4-! Реализуйте через регистр сведений и через табличную часть на форме, а не в объекте, как вам рекомендовали в комментариях!
1)создайте рег сведений
2) в документе реализация, при проведении, вносите в этот регистр сведения, при отмене удаляйте;
3)создайте в форме элемента спр клиенты табличную часть
4) при создании на сервере в справочнике клиенты запрашивайте информацию из этого регистра срез последних по клиенту и заполняйте эту табличную часть.
Это примерный план, что надо сделать для подобного решения
9. spacecraft 03.05.24 10:52 Сейчас в теме
(7)
То есть у меня есть клиент в справочнике "клиенты". В документе "Реализация товара" я выбираю клиента из справочника.

Тогда нужно не создавать элемент, а получать объект.
СпрКлиенты = Клиент.ПолучитьОбъект();
3. karamazoff 118 02.05.24 21:57 Сейчас в теме
Диплом наверное рановато, надо бы поучится, без обид. В поиске все есть, в синтаксес помощнике тоже
user1619761; +1 Ответить
4. laperuz 47 03.05.24 06:58 Сейчас в теме
Я бы писал в РС, а в карточку клиента просто выводил бы записи из РС с отбором по клиенту
user1619761; +1 Ответить
5. FUXEARA 03.05.24 09:00 Сейчас в теме
Корявая реализация задумки!
1) выполнять это из документа, это задумка не очень. А если документ отменится, а запись уже добавлена, потом сиди ищи и удаляй у клиента!
2)если надо добавить , надо получить объект и потом клиент.авто.добавить(), но ТЧ в клиенте тоже коряво
3) по уму, надо создать рег.сведений и туда кидать клиентов и авто. В клиенте, создать ТЧ на форме, а не в объекте и при создании на сервере, делать поиск в этом регистре и подгружать на форму автомобиль. Тогда при отмене проведения документа или замены автомобиля или ещё что то, надо все изменения вносить в регистр, а не искать документы и там исправлять и потом отлавливать клиентом и исправлять ТЧ!
Оставьте свое сообщение

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