Здравствуйте уважаемые эксперты! Прошу вашей помощи, так как впал в тупик...
Пишу обработку, по массовому заполнению Свойств у Номенклатуры. В итоге хочу заполнить Свойство "КодДляСайта" с типом значений Строка, данными из Номенклатура.Код, для каждой номенклатуры.
Написал запрос, он выводит то что мне надо. Теперь не могу понять как мне обработать результат запроса "ВЗЯТЬ данные из Номенклатура.Код и ВСТАВИТЬ их в ЗначенияСвойствОбъектов.Значение" ?
Прошу прощение, учусь программированию в 1с
Пишу обработку, по массовому заполнению Свойств у Номенклатуры. В итоге хочу заполнить Свойство "КодДляСайта" с типом значений Строка, данными из Номенклатура.Код, для каждой номенклатуры.
Написал запрос, он выводит то что мне надо. Теперь не могу понять как мне обработать результат запроса "ВЗЯТЬ данные из Номенклатура.Код и ВСТАВИТЬ их в ЗначенияСвойствОбъектов.Значение" ?
Прошу прощение, учусь программированию в 1с
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Ссылка,
| Номенклатура.Код,
| ЗначенияСвойствОбъектов.Свойство,
| ЗначенияСвойствОбъектов.Значение
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
| ПО Номенклатура.Ссылка = ЗначенияСвойствОбъектов.Объект
| И (ЗначенияСвойствОбъектов.Свойство = &Свойство)";
Запрос.УстановитьПараметр("Свойство", ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("КодДляСайта"));
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
КонецЦикла;
ПоказатьПрикрепленные файлы:
По теме из базы знаний
Найденные решения
(2) всё правильно
КодДляСайта = ПланоВидовХарактеристик.СвойстваОбъектов.НайтиПоПаименованию("КодДляСайта ");
//ВашЗапрос
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
МенеджерЗаписи = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = ВыборкаДетальныеЗаписи.Ссылка;
МенеджерЗаписи.Свойство = КодДляСайта ;
МенеджерЗаписи.Значение = ВыборкаДетальныеЗаписи.Код;
МенеджерЗаписи.Записать();
КонецЦикла;
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Мне не понятно, если я в Обработку результата запихну Сообщить(РезультатЗапроса), поругается на тип данных, это логично так как выводится будет 4 колонки...
Может бы это сделать через РегистрСведенийМенеджерЗаписи.<имя> ?https://its.1c.ru/db/metod8dev/content/2486/hdoc
Может бы это сделать через РегистрСведенийМенеджерЗаписи.<имя> ?
(2) всё правильно
КодДляСайта = ПланоВидовХарактеристик.СвойстваОбъектов.НайтиПоПаименованию("КодДляСайта ");
//ВашЗапрос
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
МенеджерЗаписи = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = ВыборкаДетальныеЗаписи.Ссылка;
МенеджерЗаписи.Свойство = КодДляСайта ;
МенеджерЗаписи.Значение = ВыборкаДетальныеЗаписи.Код;
МенеджерЗаписи.Записать();
КонецЦикла;
Показать
(4)
Спасибо, но почему то ошибка
КодДляСайта = ПланоВидовХарактеристик.СвойстваОбъектов.НайтиПоПаименованию("КодДляСайта ");
//ВашЗапрос
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
МенеджерЗаписи = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = ВыборкаДетальныеЗаписи.Ссылка;
МенеджерЗаписи.Свойство = КодДляСайта ;
МенеджерЗаписи.Значение = ВыборкаДетальныеЗаписи.Код;
МенеджерЗаписи.Записать();
КонецЦикла;
//ВашЗапрос
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
МенеджерЗаписи = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = ВыборкаДетальныеЗаписи.Ссылка;
МенеджерЗаписи.Свойство = КодДляСайта ;
МенеджерЗаписи.Значение = ВыборкаДетальныеЗаписи.Код;
МенеджерЗаписи.Записать();
КонецЦикла;
Спасибо, но почему то ошибка
Прикрепленные файлы:
1. Добавить ГДЕ ЗначенияСвойствОбъектов.Значение Есть NULL
И
Номенклатура.Код Как Значение
Запрос Должен быть:
ВЫБРАТЬ
| Номенклатура.Ссылка Как объект,
| Номенклатура.Код Как Значение,
| &Свойство Как Свойство,
...
2. РС = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
ЗаполнитьЗначенияСвойств(РС, Выборка);
РС.Записать();
И
Номенклатура.Код Как Значение
Запрос Должен быть:
ВЫБРАТЬ
| Номенклатура.Ссылка Как объект,
| Номенклатура.Код Как Значение,
| &Свойство Как Свойство,
...
2. РС = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
ЗаполнитьЗначенияСвойств(РС, Выборка);
РС.Записать();
ВСЕМ ОГРОМНОЕ СПАСИБО! ДАЙ БОГ ВАМ ЗДОРОВЬЯ И ДЕНЕГ ПОБОЛЬШЕ!
Если кому то понадобится в будущем, вот решение Как из реквизита Номенклатуры вставить в Свойство
Если кому то понадобится в будущем, вот решение Как из реквизита Номенклатуры вставить в Свойство
КодДляСайта = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("00223");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Ссылка,
| Номенклатура.Код,
| ЗначенияСвойствОбъектов.Свойство,
| ЗначенияСвойствОбъектов.Значение
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
| ПО Номенклатура.Ссылка = ЗначенияСвойствОбъектов.Объект
|ГДЕ ЗначенияСвойствОбъектов.Значение Есть NULL";
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
МенеджерЗаписи = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = ВыборкаДетальныеЗаписи.Ссылка;
МенеджерЗаписи.Свойство = КодДляСайта ;
МенеджерЗаписи.Значение = ВыборкаДетальныеЗаписи.Код;
МенеджерЗаписи.Записать();
КонецЦикла;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот