![]() |
|
универсальный подбор и обработка объектов | ☑ | ||
---|---|---|---|---|
0
DenisVich
22.01.18
✎
17:54
|
Здравствуйте. Столкнулся со следующей проблемой. Обрабатываю записи в справочнике с табличной частью. Данные заполняются по нескольку раз.(Одна и та же запись повторяется в табличной части, сколько найденных объектов столько раз и вносятся в выбранную запись)
Вот код: СписокКонтрагентов = Новый СписокЗначений; СписокКонтрагентов.Добавить("Альянс Белгород 2 РС ООО"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 2 | Компьютеры.Ссылка, | Компьютеры.Контрагент КАК Контрагент |ИЗ | Справочник.Компьютеры КАК Компьютеры |ГДЕ | Компьютеры.Контрагент.Наименование В(&Контрагент) |СГРУППИРОВАТЬ ПО | Компьютеры.Ссылка, | Компьютеры.Контрагент"; Запрос.УстановитьПараметр("Контрагент", СписокКонтрагентов); РезультатЗапросаКомпьютеры = Запрос.Выполнить().Выбрать(); Если РезультатЗапросаКомпьютеры.Количество()>0 Тогда Пока РезультатЗапросаКомпьютеры.Следующий() Цикл Источник = РезультатЗапросаКомпьютеры.Ссылка; ЭлементОбработан = Ложь; Если Не ЭлементОбработан Тогда НовоеСвойство = Объект.Свойства.Добавить(); НовоеСвойство.ВидСвойства = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Дата снятия с учета"); НовоеСвойство.ЗначениеСвойства= НачалоГода(ТекущаяДата()); Сообщить(СОКРЛП(РезультатЗапросаКомпьютеры.Ссылка.Контрагент)+" "+СОКРЛП(РезультатЗапросаКомпьютеры.Ссылка)); Объект.Записать(); ЭлементОбработан = Истина; КонецЕсли; КонецЦикла; КонецЕсли; |
|||
1
DenisVich
22.01.18
✎
17:55
|
Поясняю, это произвольный алгоритм!
|
|||
2
Darych
22.01.18
✎
17:58
|
запрос в топку, СписокКонтрагентов.Добавить("Альянс Белгород 2 РС ООО") в топку
|
|||
3
DenisVich
22.01.18
✎
17:58
|
Что в этой обработке брать в качестве источника, если не использовать выборку?
|
|||
4
DenisVich
22.01.18
✎
18:00
|
" Источник = ????????;
НовоеСвойство = Объект.Свойства.Добавить(); НовоеСвойство.ВидСвойства = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Дата снятия с учета"); НовоеСвойство.ЗначениеСвойства= НачалоГода(ТекущаяДата()); Сообщить(СОКРЛП(РезультатЗапросаКомпьютеры.Ссылка.Контрагент)+" "+СОКРЛП(РезультатЗапросаКомпьютеры.Ссылка)); Объект.Записать();" |
|||
5
DenisVich
22.01.18
✎
18:03
|
Источник = ТекущийОбъект;
|
|||
6
DenisVich
22.01.18
✎
18:03
|
В том так сразу, а подсказать!
|
|||
7
DenisVich
22.01.18
✎
18:03
|
*в топку
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |