|
v7: Соединение запросов | ☑ | ||
---|---|---|---|---|
0
Ainur
16.03.13
✎
11:59
|
Добрый день! Коллеги подскажите как оптимально сделать отчет.
Есть 2 регистра 1.Продажи: День Контрагент Количество 2.Маршруты День Контрагент Вот эти 2 запроса (или 2 ТЗ) нужно соединить по День и Контрагент |
|||
1
zak555
16.03.13
✎
12:00
|
регистры остатков/оборотов ?
|
|||
2
Ainur
16.03.13
✎
12:01
|
Продажи - остатки
Маршруты - обороты |
|||
3
zak555
16.03.13
✎
12:06
|
кто сконструировал это ?
|
|||
4
Ainur
16.03.13
✎
12:06
|
выгружать запросы в ТЗ и перебирать 1 для каждой строки 2 - это очень долго
|
|||
5
Chai Nic
16.03.13
✎
12:07
|
1с++ и прямой запрос
|
|||
6
Ainur
16.03.13
✎
12:08
|
я. других вариантов нет, регистры из разных подсистем. если есть предложения, я могу переделать регистр маршрутов, там перепровести можно будет
|
|||
7
zak555
16.03.13
✎
12:09
|
предлагаю переделать
|
|||
8
Ainur
16.03.13
✎
12:09
|
что такое 1с++, признаюсь в 7.7 я не силен
|
|||
9
Ainur
16.03.13
✎
12:09
|
как переделать? подскажешь?
|
|||
10
Chai Nic
16.03.13
✎
12:10
|
(8) Внешняя компонента, которая расширяет возможности 1с. Самые популярные её возможности - индексированная таблица и прямые запросы. Информация и собственно дллка гуглится и скачивается.
|
|||
11
zak555
16.03.13
✎
12:11
|
Контрагент
День Количество хотя запросом можно детализацию делать по дня, но с измерением можно группировать по разному дни |
|||
12
Ainur
16.03.13
✎
12:16
|
а что даст переделать регистр? в общем мне нужно вытащить ресурс Маршрут, соответствующий дню и контрагенту. может просто создать процедуру глПолучитьМаршрут(День, Контрагент) и с запроса ссылаться туда?
|
|||
13
Ainur
16.03.13
✎
12:21
|
|Период с ВыбНачПериода по ВыбКонПериода;
|Контрагент = Регистр.Продажи.Контрагент; |Док = Регистр.Продажи.ТекущийДокумент; |Количество = Регистр.Продажи.Количество; |Функция КоличествоСумма = Сумма(Количество); |Функция Маршрут = глПолучитьМаршрут(Контрагент,Док .ДатаДок)); |Группировка ..... Типа такого. будет работать? |
|||
14
Ainur
16.03.13
✎
12:27
|
Вру. в 7.7 маршрут нельзя поставить ресурсом. только числа можно((. Куда же его тогда? в реквизиты?
|
|||
15
Ainur
16.03.13
✎
12:31
|
До этого маршрут у меня в измерениях просто был, я забыл в (0) указать что мне как раз его нужно вытащить по контрагенту за день
|
|||
16
Cthulhu
16.03.13
✎
13:02
|
|Контрагент = Продажи.Контрагент, Маршруты.Контрагент;
|День = Продажи.День, Маршруты.День; |... |Группировка Контрагент; Группировка День; |... |
|||
17
Cthulhu
16.03.13
✎
13:02
|
+Регистр. конечно же.
|
|||
18
Ainur
16.03.13
✎
17:24
|
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода; |Номенклатура = Регистр.Продажи.Номенклатура; |Покупатель = Регистр.Продажи.Покупатель, Регистр.МаршрутКонтрагента.Контрагент; |ДатаДок = Регистр.Продажи.ТекущийДокумент.ДатаДок, Регистр.МаршрутКонтрагента.ТекущийДокумент.ДатаДок; |Количество = Регистр.Продажи.Количество; |ПродСтоимость = Регистр.Продажи.ПродСтоимость; |Район = Регистр.МаршрутКонтрагента.Район; |Функция КоличествоСумма = Сумма(Количество); |Функция ПродСтоимостьСумма = Сумма(ПродСтоимость); |Группировка День; |Группировка Район без групп; |Группировка Покупатель без групп; |Группировка Номенклатура без групп; |Условие(Район = ВыбРайон); не работает |
|||
19
VladZ
16.03.13
✎
17:32
|
Вот поэтому важно правильно разработать структуру данных на этапе проектирования. Именно для этого и пишутся ТЗ.
|
|||
20
Cthulhu
18.03.13
✎
12:24
|
и не будет работать.
просто потому, что структура не позволяет делать то, что вам надо. как ты себе представляешь группировку по измерению одного регистра, вложенную в группировку по измерению другого регистра (если записи этих регистров не связаны по записям "один к одному")?.. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |