|
v7: Группировка по ДатаДок | ☑ | ||
---|---|---|---|---|
0
SAM-soft
24.09.11
✎
17:09
|
Доброго времени суток. Вопрос следующего характера. Есть регистр остатков, у него есть реквизит "ДокВозврата" тип значения ДОКУМЕНТ. По этому реквизиту проходят только два документа. Вот мой запрос:
ТекстЗапроса = " |Период с ВыбДата по ВыбДата; |Подразделение = Регистр.ДолгПоВозврату.Подразделение; |Дат = Регистр.ДолгПоВозврату.ДокВозврата.ДатаДок; |ТМЦ = Регистр.ДолгПоВозврату.ТМЦ; |Количество = Регистр.ДолгПоВозврату.Количество; |Функция Всего = КонОст(Количество); |Группировка Подразделение; |Группировка Дат; |Группировка ТМЦ Без Групп; |Условие (Подразделение в ВыбПодразделение); |" ; проблема заключается в том что нету группировки по переменной "Дат". Раньше в реквизите "ДокВозврата" тип значения был конкретный документ и все работало как надо, а теперь группировка не работает и имеет пустое значение. |
|||
1
Темный Эльф
24.09.11
✎
17:14
|
Остатков по реквизитам не бывает. Остатки считаются в разрезе измерений.
|
|||
2
NS
24.09.11
✎
17:34
|
(0) не верю (с)
И раньше такое работать не могло. |
|||
3
SAM-soft
25.09.11
✎
15:35
|
Вот в том то и дело что когда тип значения реквизита "ДокВозврата" был "Документ.ДокВозврата" то все отлично работало. Потом появилась потребность в этот реквезит вписывать еще один вид документа, после этого я изменил тип значения реквизита "ДокВозврата" с "Документ.ДокВозврата" на "Документ" и все перестало работать.
|
|||
4
hunter76
25.09.11
✎
15:48
|
может тогда надо бы вот так:
Дат = Регистр.ДолгПоВозврату.ДокВозврата.ДатаДок, Регистр.ДолгПоВозврату.<Еще один вид документа, и аналогично, по всем видам, делающим движение по этому регистру>.ДатаДок; ? |
|||
5
G-Re
25.09.11
✎
15:54
|
(3) Если ДокВозврата - тип Неопределенный или Вид Неопределенный - не взлетит. По всей видимости, это ограничение черного запроса.
Я так ДУМАЮ(Ф.Мкртчян, "Мимино"). |
|||
6
SAM-soft
25.09.11
✎
16:54
|
(4) Переменная "ДокВозврата" хранит ссылку на документ. ссылки могут быть на два вида документов "Документ.Перемещение" и "Документ.ВозвратБрака". Эти документы не делают движения по этому регистру. Они просто сохраняются в этой переменной.
|
|||
7
hunter76
25.09.11
✎
16:56
|
(6) а где переменная "ДокВозврата"?
|
|||
8
SAM-soft
25.09.11
✎
16:57
|
Вот что получается еще!!! Группировка по "Дат" не работает, а группировка по общему реквизиту "Автор" отрабатывает нормально. Пример:
|Дат = Регистр.ДолгПоВозврату.ДокВозврата.Автор; |Группировка Дат; Вот так все работает. Есть идеи???? |
|||
9
hunter76
25.09.11
✎
17:01
|
+(7) тогда так попробуй:
ТекстЗапроса = " |Период с ВыбДата по ВыбДата; |Подразделение = Регистр.ДолгПоВозврату.Подразделение; |Дат = Регистр.ДолгПоВозврату.ДокВозврата.Перемещение.ДатаДок, Регистр.ДолгПоВозврату.ДокВозврата.ВозвратБрака.ДатаДок; |ТМЦ = Регистр.ДолгПоВозврату.ТМЦ; |Количество = Регистр.ДолгПоВозврату.Количество; |Функция Всего = КонОст(Количество); |Группировка Подразделение; |Группировка Дат; |Группировка ТМЦ Без Групп; |Условие (Подразделение в ВыбПодразделение); |" ; |
|||
10
SAM-soft
25.09.11
✎
17:25
|
(9) нет не получается, ругается на неправильную переменную, да оно и понятно. Я думаю дело в том что ДатаДок не есть индивидуальной переменной. ДатаДок - это стандартная переменная любого документа, но по мимо этого существует еще и "Дополнительные атрибуты внутренних переменных типа документ" в которых тоже есть переменная "ДатаДок". Скорее всего по этому и не получается сделать группировку. Переменная "Дат" определяется как переменная типа Дата, но переменная пустая.
|
|||
11
Voronve
25.09.11
✎
17:32
|
ТекстЗапроса = "
|Период с ВыбДата по ВыбДата; |Подразделение = Регистр.ДолгПоВозврату.Подразделение; |Док = Регистр.ДолгПоВозврату.ДокВозврата; |ТМЦ = Регистр.ДолгПоВозврату.ТМЦ; |Количество = Регистр.ДолгПоВозврату.Количество; |Функция Всего = КонОст(Количество); |Группировка Подразделение; |Группировка Док упорядочить по Док.ДатаДок; |Группировка ТМЦ Без Групп; |Условие (Подразделение в ВыбПодразделение) |"; Не ? |
|||
12
SAM-soft
25.09.11
✎
17:40
|
(11) упорядочить в этом случае не получается мне нужно сделать группировку по датам а не упорядочить по дотам (за 23.09.11 может пройти 20 документов) и если использовать группировку то должна быть одна строчка, а Группировка Док упорядочить по Док.ДатаДок; даст результат 20 строк.
Я уже подумываю об таком варианте только все это грузить в таблицаЗначений, а уж потом с нее создавать печатную таблицу. Других вариантов пока не видно! |
|||
13
ДенисЧ
25.09.11
✎
17:44
|
прямой запрос - не предлагать?
|
|||
14
SAM-soft
25.09.11
✎
17:49
|
(13) что значит прямой? Предлагай, рассмотрим все варианты!
|
|||
15
NS
26.09.11
✎
02:06
|
(13) Расскажешь как-нибудь, как прямым запросом получишь остаток в разрезе реквизита.
|
|||
16
SAM-soft
27.09.11
✎
09:38
|
Эту проблему решил по другому (как говорится через зад...цу) Запрос выгружаю в ТЗ добавляю колонку дата, при добавлении строки вытягиваю дату с документа, ну а потом выбираю строки с ТЗ.
PS: Это так ради интереса, а возможно ли сделать запрос с ТаблицыЗначений или это бред? |
|||
17
1Сергей
27.09.11
✎
10:47
|
(16) можно. прямой
|
|||
18
NS
27.09.11
✎
11:19
|
(16) Патент на получение остатка в разрезе реквизита получить не хочешь?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |