Доброго времени суток! никак не могу понять почему Для Каждого Стр Из Товары выбирает только выделенную строку!?
Для Каждого Стр из ЭтотОбъект.Товары Цикл
Если ЗначениеЗаполнено(Штрих) Тогда
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Продажи.Номенклатура,
| Продажи.ХарактеристикаНоменклатуры,
| Продажи.Контрагент,
| Продажи.Штрихкод,
| Продажи.Регистратор КАК Док,
| РеализацияТоваровУслугТовары.Цена,
| РеализацияТоваровУслугТовары.ЦенаСоСкидкой,
| РеализацияТоваровУслугТовары.Сумма,
| РеализацияТоваровУслугТовары.Штрихкод КАК Штрихкод1
|ИЗ
| РегистрНакопления.Продажи КАК Продажи
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
| ПО Продажи.Номенклатура = РеализацияТоваровУслугТовары.Номенклатура
| И Продажи.Регистратор.Ссылка = РеализацияТоваровУслугТовары.Ссылка
| И Продажи.Штрихкод = РеализацияТоваровУслугТовары.Штрихкод
|ГДЕ
| Продажи.Контрагент = &Контрагент
| И Продажи.Штрихкод = &Штрих
|
|УПОРЯДОЧИТЬ ПО
| РеализацияТоваровУслугТовары.Ссылка УБЫВ";
Запрос.УстановитьПараметр("Контрагент", Контрагент);
Запрос.УстановитьПараметр("Штрих", Штрих);
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
ТекДанные.Сумма = Выборка.Сумма;
ТекДанные.ДокументПартии = Выборка.Док;
КонецЦикла;
ТекДанные.Цена = ТекДанные.Сумма / ТекДанные.Количество;
.............................
Подскажите профессионалы. Код отрабатывает верно, просто для выделенной строки только.
Для Каждого Стр из ЭтотОбъект.Товары Цикл
Если ЗначениеЗаполнено(Штрих) Тогда
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Продажи.Номенклатура,
| Продажи.ХарактеристикаНоменклатуры,
| Продажи.Контрагент,
| Продажи.Штрихкод,
| Продажи.Регистратор КАК Док,
| РеализацияТоваровУслугТовары.Цена,
| РеализацияТоваровУслугТовары.ЦенаСоСкидкой,
| РеализацияТоваровУслугТовары.Сумма,
| РеализацияТоваровУслугТовары.Штрихкод КАК Штрихкод1
|ИЗ
| РегистрНакопления.Продажи КАК Продажи
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
| ПО Продажи.Номенклатура = РеализацияТоваровУслугТовары.Номенклатура
| И Продажи.Регистратор.Ссылка = РеализацияТоваровУслугТовары.Ссылка
| И Продажи.Штрихкод = РеализацияТоваровУслугТовары.Штрихкод
|ГДЕ
| Продажи.Контрагент = &Контрагент
| И Продажи.Штрихкод = &Штрих
|
|УПОРЯДОЧИТЬ ПО
| РеализацияТоваровУслугТовары.Ссылка УБЫВ";
Запрос.УстановитьПараметр("Контрагент", Контрагент);
Запрос.УстановитьПараметр("Штрих", Штрих);
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
ТекДанные.Сумма = Выборка.Сумма;
ТекДанные.ДокументПартии = Выборка.Док;
КонецЦикла;
ТекДанные.Цена = ТекДанные.Сумма / ТекДанные.Количество;
.............................
Подскажите профессионалы. Код отрабатывает верно, просто для выделенной строки только.
По теме из базы знаний
- Универсальный поиск и замена дублирующихся элементов справочников (управляемое и обычное приложение) с учетом общих реквизитов
- Механизмы и транспорт обмена данными. Пример создания в КД 2.1 правил обмена данными ЗУП 2.5 -> БП 3.0. Выгрузка ведомостей и банковских счетов. Передача параметров обмена из Источника в Приемник. ВыгрузитьПоПравилу(). ПередатьОдинПараметрВПриемник().
- Заполнение табличных частей документов одного вида из табличных частей списка документов другого вида (альтернатива ввода на основании)
- Сравнение данных Документов в двух базах, метаданные которых похожи
- Вопросы производительности, оптимизация кода. Бизнес-логика
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот