![]() |
![]() |
|
Выгрузить Данные из запроса, но не все | ☑ | ||
---|---|---|---|---|
0
Point
22.05.09
✎
10:01
|
Есть Запрос, в звпросе 3 группировка:
1. Поставщик 2. Товар 3. Движение Обход результата идет по группировкам. Перед обходом группировки ТОВАР необходимо выгрузить все товары (куда угодно: Массив,ТЗ,СЗ). Можно ли это сделать, если да то как????? |
|||
1
СуперМега Монстр
22.05.09
✎
10:02
|
Выполнить().Выгрузить()
? |
|||
2
Point
22.05.09
✎
10:03
|
(1) Выполнить().Выгрузить(), это выгрузка всех данных
|
|||
3
Ненавижу 1С
гуру
22.05.09
✎
10:05
|
написать еще один запрос, где только товары
|
|||
4
Господин ПЖ
22.05.09
✎
10:05
|
пакетный запрос
|
|||
5
Point
22.05.09
✎
10:06
|
(3) нельзя, т.к. накладываются определенные условия
|
|||
6
Point
22.05.09
✎
10:06
|
(4) это как?
|
|||
7
Aleksey_3
22.05.09
✎
10:07
|
(2) А если потом свернуть?
|
|||
8
Ненавижу 1С
гуру
22.05.09
✎
10:07
|
(5) да ладно
|
|||
9
Господин ПЖ
22.05.09
✎
10:08
|
(6)
file:///C:/Program%20Files/1cv81/AddDoc/RU/V8AddDoc81.htm#Book_AK_Chap5_ProcWithQuery_Paket а там доступна работа с результатами отдельных пакетов и врем. таблицы |
|||
10
Mitriy
22.05.09
✎
10:09
|
(9) это про пакетные запросы, а в сабже обычный...
|
|||
11
СуперМега Монстр
22.05.09
✎
10:09
|
Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
|
|||
12
Point
22.05.09
✎
10:09
|
(8) во-первых отбираются не все документы, во вторых зачем мене нужен еще 1 запрос
|
|||
13
Mitriy
22.05.09
✎
10:10
|
(0) что мешает заполнить массив при обходе?
|
|||
14
Господин ПЖ
22.05.09
✎
10:10
|
(10) пускай заменит запрос. какие проблемы...
|
|||
15
Point
22.05.09
✎
10:10
|
(11) не в тему пишешь, читай (0) внимательнее
|
|||
16
СуперМега Монстр
22.05.09
✎
10:12
|
к (11)
Пока Выборка.Следующий() Цикл //Сообщить(Выборка.НомерСтроки); ВыборкаПоСтроке = Выборка.Выбрать(); (15)это почему это? |
|||
17
Aleksey_3
22.05.09
✎
10:14
|
(15) Выполнить().Выгрузить().Свернуть("Товар",)?
|
|||
18
Point
22.05.09
✎
10:16
|
Почему мне это надо!
В группировке товар происходит вычисление цены товара: ЦенаПродажи = глВернутьЦенуДня(Товар, Константы.ОсновнаяКатегорияЦенПродажи.Получить(),РабочаяДата); Если ЦенаПродажи > 0 Тогда СуммаПрибыли = ОбъемЗакупкиСЗаказами*(ЦенаПродажи); СуммаПрибылиПоПоставщику = СуммаПрибылиПоПоставщику+СуммаПрибыли; КонецЕсли; Функция глВернутьЦенуДня - работает очень медленно, хотелось бы выдрать все товары из группировки и выполнить заполнение цен 1раз для одной группировки |
|||
19
СуперМега Монстр
22.05.09
✎
10:19
|
(18)а про выборка.сбросить() ты знаешь? ))))
|
|||
20
Point
22.05.09
✎
10:27
|
(19) да, но это же придется каждую Группировку проходить 2 раза, а кол-во записей в каждой группировке примерно 500-600, думаю что это не подходит
|
|||
21
Point
22.05.09
✎
10:29
|
(18)+ может как-то можно выгрузить все товары из результата запроса?
|
|||
22
73
22.05.09
✎
10:32
|
(21) См. пакетный запрос - ВыполнитьПакет().
Суть: несколько запросов выполняются пакетом, возвращается массив результатов. |
|||
23
СуперМега Монстр
22.05.09
✎
11:28
|
(21) ты (11) (16) смотрел?
Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока Выборка.Следующий() Цикл //Сообщить(Выборка.НомерСтроки); ВыборкаПоСтроке = Выборка.Выбрать(); ///и тут выгрузи |
|||
24
Point
22.05.09
✎
11:30
|
(23) каким образом? Обходом?
Если обходом, читай внимательно (18) |
|||
25
Point
22.05.09
✎
11:35
|
(24)+ Во избежании повторений, делаем акцент на слово ВЫГРУЗИТЬ, а не Выбрать
|
|||
26
СуперМега Монстр
22.05.09
✎
11:43
|
(25)во избежании непрофессионализма советую изучить что есть выборка с параметром ОбходРезультатаЗапроса.ПоГруппировкам
потрать время - не пожалеешь |
|||
27
Point
22.05.09
✎
11:55
|
(26) хорошо, допустим я новичек.
Поясни мне тогда каким сбособом можно выгрузить из "ВыборкаПоСтроке" (взято из (23)), что означает "///и тут выгрузи"??? |
|||
28
Point
22.05.09
✎
11:57
|
(27)+ на сколько я помню, то Выгрузить() применимо только к РезультатуЗапроса, но не к ВыборкаИзРезультатаЗапроса
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |