База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как оформить запрос на 1С с выводом результата в обработку?
- В этой теме 1 ответ, 2 участника, последнее обновление 1 час, 53 минуты назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
18 мая 2026 в 8:30 #37234
Помогите оформить запрос в обработку с выводом результата |ВЫБРАТЬ
| ПересчетТоваровТовары.Номенклатура КАК Номенклатура,
| Продажи.Дата КАК ДатаПродажи,
| ПродажиТовары.Количество,
| ПродажиТовары.Сумма
|ИЗ
| Документ.ПересчетТоваров.Товары КАК ПересчетТоваровТовары
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПересчетТоваров КАК ПересчетТоваров
| ПО ПересчетТоваровТовары.Ссылка = ПересчетТоваров.Ссылка
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК Продажи
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК ПродажиТовары
| ПО Продажи.Ссылка = ПродажиТовары.Ссылка
| И ПродажиТовары.Номенклатура = ПересчетТоваровТовары.Номенклатура
| И ПродажиТовары.Склад = ПересчетТоваровТовары.Склад
|ГДЕ
| ПересчетТоваров.Ссылка = &СсылкаПересчета
| И Продажи.Дата МЕЖДУ &ДатаНачала И &ДатаКонца
|УПОРЯДОЧИТЬ ПО
| ПересчетТоваровТовары.Номенклатура,
| Продажи.Дата -
18 мая 2026 в 8:30 #37235
Вот пример оформления запроса в обработку 1С (на встроенном языке), с передачей параметров и выводом результата в табличное поле формы:
1С (Код)123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051Процедура ВыполнитьЗапрос(СсылкаПересчета, ДатаНачала, ДатаКонца) ЭкспортЗапрос = Новый Запрос;Запрос.Текст ="|ВЫБРАТЬ| ПересчетТоваровТовары.Номенклатура КАК Номенклатура,| Продажи.Дата КАК ДатаПродажи,| ПродажиТовары.Количество,| ПродажиТовары.Сумма|ИЗ| Документ.ПересчетТоваров.Товары КАК ПересчетТоваровТовары| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПересчетТоваров КАК ПересчетТоваров| ПО ПересчетТоваровТовары.Ссылка = ПересчетТоваров.Ссылка| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК Продажи| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК ПродажиТовары| ПО Продажи.Ссылка = ПродажиТовары.Ссылка| И ПродажиТовары.Номенклатура = ПересчетТоваровТовары.Номенклатура| И ПродажиТовары.Склад = ПересчетТоваровТовары.Склад|ГДЕ| ПересчетТоваров.Ссылка = &СсылкаПересчета| И Продажи.Дата МЕЖДУ &ДатаНачала И &ДатаКонца|УПОРЯДОЧИТЬ ПО| ПересчетТоваровТовары.Номенклатура,| Продажи.Дата";Запрос.УстановитьПараметр("СсылкаПересчета", СсылкаПересчета);Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);Запрос.УстановитьПараметр("ДатаКонца", ДатаКонца);Результат = Запрос.Выполнить();Выборка = Результат.Выбрать();// Создаем таблицу значений для выводаТаблицаРезультата = Новый ТаблицаЗначений;ТаблицаРезультата.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("Справочник.Номенклатура"));ТаблицаРезультата.Колонки.Добавить("ДатаПродажи", Новый ОписаниеТипов("Дата"));ТаблицаРезультата.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));ТаблицаРезультата.Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число"));Пока Выборка.Следующий() ЦиклНоваяСтрока = ТаблицаРезультата.Добавить();НоваяСтрока.Номенклатура = Выборка.Номенклатура;НоваяСтрока.ДатаПродажи = Выборка.ДатаПродажи;НоваяСтрока.Количество = Выборка.Количество;НоваяСтрока.Сумма = Выборка.Сумма;КонецЦикла;// Вывод результата в табличное поле формыЭлементыФормы.ТабличноеПолеРезультат.Значение = ТаблицаРезультата;КонецПроцедуры—
Как использовать:
1. В форме обработки создайте табличное поле с именем
ТабличноеПолеРезультат.
2. В процедуре, например, по кнопке «Выполнить», вызовите:1С (Код)1ВыполнитьЗапрос(СсылкаПересчета, ДатаНачала, ДатаКонца);где
СсылкаПересчета— ссылка на документ «Пересчет товаров», аДатаНачалаиДатаКонца— даты периода.—
Если нужна помощь с формой или с получением ссылки на документ — могу подсказать.
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.