|
v7: Выгрузка запроса в ТЗ | ☑ | ||
|---|---|---|---|---|
|
0
pavilion
01.04.15
✎
10:34
|
Знаю что делать, но не знаю как правильно реализовать, новичек в 1С.
Как данные запроса выгрузить в ТЗ, и вложенным циклом перебрать по фирмам, что бы долг по клиента совпадал с фирмой: Процедура Сформировать() Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с НачДата по КонДата; //|Без Итогов; |Обрабатывать НеПомеченныеНаУдаление; |Контрагент = Регистр.ВзаиморасчетыПокупателей.Контрагент, Регистр.ВзаиморасчетыПоставщиков.Контрагент; |Фирма = Регистр.ВзаиморасчетыПокупателей.Фирма, Регистр.ВзаиморасчетыПоставщиков.Фирма; |ДолгПокуп = Регистр.ВзаиморасчетыПокупателей.Долг; |ДолгПост = Регистр.ВзаиморасчетыПоставщиков.Долг; |Условие (Фирма в ВыбФирма); |Условие (Контрагент в ВыбКлиенты); |Функция КонДолг = КонОст(ДолгПокуп); |Функция КонДолгПост = КонОст(ДолгПост); |Группировка Контрагент без групп; |Группировка Фирма; |" ; Если Запрос.Выполнить(ТекстЗапроса)=0 тогда Предупреждение("Запрос по Контрагентам не выполнился!"); Возврат; КонецЕсли; Таб = СоздатьОбъект("Таблица"); н=0; ТЗ = СоздатьОбъект("ТаблицаЗначений"); Запрос.Выгрузить(ТЗ); ТЗ.ВыбратьСтроку(); Таб.ИсходнаяТаблица("Взаиморасчеты"); Таб.ВывестиСекцию("Шапка|Список"); ТЗ.ВыбратьСтроки(); Пока Запрос.Группировка(1)=1 Цикл н=н+1; Таб.ВывестиСекцию("Строка|Список"); Пока Запрос.Группировка(2)=1 Цикл Таб.ПрисоединитьСекцию("Строка|Фирм"); КонецЦикла; КонецЦикла; Таб.Показать("Взаиморасчеты", ""); КонецПроцедуры |
|||
|
1
Ёпрст
гуру
01.04.15
✎
10:38
|
(0) в этом коде выгрузка в ТЗ - лишняя.
|
|||
|
2
pavilion
01.04.15
✎
10:46
|
Работает сейчас так:
Фирма1 Фирма2 Фирма3 Клиент: долг Долг если у клиента долга нет перед "Фирмой2", он всё равно присоединяет секцию справа по порядку |
|||
|
3
Ёпрст
гуру
01.04.15
✎
10:51
|
(2) Группировка Фирма Все ВошедшиеВЗапрос;
|
|||
|
4
Ёпрст
гуру
01.04.15
✎
10:51
|
наслаждайся
|
| Форум | Правила | Описание | Секции | Поиск |