Помогите с позиционированием в запросе 2 #226405


#0 by balamut
Уже задавал этот вопрос-ответа не получил, повторюсь, несколько уточнив задачу.Есть два запроса полностью одинаковых, тока второй отличается от первого тем, что у него добавлена группировка к примеру по Месяцам, и эта группировка указана ПЕРВОЙ.При обходе первого запроса во втором запросе осуществлятся позиционирование на запись в выборке по значениям группировок первого запроса (по порядку по каждому месяцу), используя Запрос2.Получить(Месяц,Знач1,Знач2,..,ЗначN), где ЗначN-значение N-ной группипровки запроса1.Почемуто не работает позиционирование, если запрос делается только по группам (используя конструкцию Товар=Регистр.Продажи.Товар.Родитель).К примеру, если группировка Товар в запросе1 стоит второй, то в этом случае нормально происходит позиционирование во втором запросе по значениям первой группировки запроса1 и по тем значениям второй группировки, которые являются Группами (группами в запросе, а не в справочнике), а по негруппам не позиционируется.Типы значений группировок одинаковые (и сами значения) в обоих запросах-запросы одинаковые за искл одной группировки, поменять местами группировки не помагает.Помогите найти ответ, в чем проблема?
#1 by balamut
пну чтоли
#2 by Шухер
Два раза прочел, не вкурил, чего там происходит у второй в запросе по первой группировке из занчения группировки по первой группе.Код дай поглядеть, только покороче, лишнее убери.
#3 by Берсеркер
Запрос руками делал или построителем? Сделай построителем
#4 by Шухер
Видите, что значит правильно поставить задачу! :)Сразу все вопросы снимаются.
#5 by balamut
К примеру запускаем отчет за 3 месяца. При обходе первого запроса находимся на группировке со значением ЗначГруппировки1. Теперь во втором запросе ищем ЗначГруппировки1 в каждом из 3-х месяцев (в цикле).Запрос2.Получить(Месяц1,ЗначГруппировки1);Запрос2.Получить(Месяц3,ЗначГруппировки1);И получаем значения необходимых ресурсов для ЗначГруппировки1 по каждому месяцу.Все гуд, всегда Запрос2 становится на нужное значение (Запрос2.Получить(МесяцN,ЗначГруппировкиN)=1), за исключением случая, когда ЗначГруппировкиN в запросах, получается как Товар=Регистр.Продажи.Товар.Родитель (с использованием Родитель).Запрос делался руками (универсальный-построителем такой не построиш).
#6 by HAMMER
Осмелюсь предположить что перед позиционирование не использовал метод ВНачалоВыборки. А ищет запрос только вниз.
#7 by balamut
Ищет не только вниз. ВНачалоВыборки пробовал ставить - тоже самое.Пробовал обходить второй запрос через Пока Группировка(N)=1 и сравнивать значения-так работает, но дольше. Также работает, если во втором запросе не использовать Родитель, но не всегда так можно.
#8 by Шухер
Товар=Регистр.Продажи.Товар.Родительа что от родителя надо узнать? Это же группа. Код не покажешь, и чего требется выбрать? Не пойму, чего запрос делает.
#9 by balamut
Родитель используется в том случае, если надо получить результат только по группам справочника, к примеру узнать на какую сумму было продано товаров такихто групп (конкретные позиции в группах не интересуют, и чтоб их не выводить-а их может быть тысячи, используем Родитель, и отчет удобнее, и считается быстрее).Перем ЗнГруппировки[20];//****************и в процедуре обхода группировок запроса1 и вывода на печать след цикл:Для К=1 По КолЗначВертРазв Циклв ТзЗначВертРазв в колонке "Значение" запиханы ВСЕ возможные значения САМОЙ ПЕРВОЙ группировки второго запроса, т.е. в указанном примере там имеем Месяцы.
#10 by Шухер
Народ помогите, если не в лом!!!я тут пас, лучше б вообще не видел, сегодня не засну. :(НомеГруппировки - ошибка, но дела не меняет.
#11 by balamut
НомеГруппировки-переменная, принимающая значение номера обходимой группировки (если в запросе1 5 группировок, а мы счас стоим на 3-й, то НомеГруппировки=3)
#12 by КонецЦикла
Как автор хочет позиционироваться если у него "добавлена группировка к примеру по Месяцам, и эта группировка указана ПЕРВОЙ."?Нипонил
#13 by balamut
Запрос2.Получить(Месяц,Знач1,Знач2,..,ЗначN), где ЗначN-значение N-ной группипровки запроса1.Вот так.Это получается в Процедуре ПозиционироватьсяВЗапросе через шаблон.И повторяю-все работает во всех случаях, за исключением описанного.
#14 by roma n
Старая ветка Но добавить к уже сказанному, увы, нечего...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С