Имя: Пароль:
1C
1С v8
Запрос по ОстаткиИОбороты в зависимости от переодичности выдаёт разные данные
0 Shur1cIT
 
06.06.14
13:14
нарисовал отчет выяснил что он ни фига не верный, стал копать его,
сократил запрос по минимуму для наглядности, если периодичность ставлю АВТО то правильные данные если периодичностью регистратора то другие, не смотря на то что во временной таблице делаю свёртку без регистратора в надежде что он с хлопнет и на выходе виртуальная таблица будет как АВТО, но не получается скажите пожалуйста из за чего сие происходит и как лечить?



ВЫБРАТЬ
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Организация,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Сделка,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом,
    СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовНачальныйОстаток) КАК НачальныйОстаток,
    СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовПриход) КАК План,
    СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовРасход) КАК Факт,
    СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовКонечныйОстаток) КАК КонечныйОстаток
ПОМЕСТИТЬ Таб
ИЗ
    РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты(
            &НачалоПериода,
            &КонецПериода,
            Регистратор,
            ,
            ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом = ИСТИНА
                И ДоговорКонтрагента.ВедениеВзаиморасчетов = ЗНАЧЕНИЕ(Перечисление.ВедениеВзаиморасчетовПоДоговорам.ПоЗаказам)
                И ДоговорКонтрагента.ВидДоговора = ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПокупателем)) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты

СГРУППИРОВАТЬ ПО
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Организация,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Сделка,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Таб.Организация,
    Таб.Контрагент,
    Таб.ДоговорКонтрагента,
    Таб.Сделка,
    Таб.ДокументРасчетовСКонтрагентом,
    ВЫБОР
        КОГДА Таб.НачальныйОстаток > 0
            ТОГДА Таб.НачальныйОстаток
        ИНАЧЕ 0
    КОНЕЦ КАК НачальныйОстаток,
    Таб.План,
    Таб.Факт,
    ВЫБОР
        КОГДА Таб.КонечныйОстаток > 0
            ТОГДА Таб.КонечныйОстаток
        ИНАЧЕ 0
    КОНЕЦ КАК КонечныйОстаток
ИЗ
    Таб КАК Таб
1 shuhard
 
06.06.14
13:20
(0) JOB: Возьмут ли меня Руководителем проектов?
ну теперь ответ очевиден - нет
2 hhhh
 
06.06.14
13:20
СГРУППИРОВАТЬ ПО
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Организация,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Сделка,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом


выкинь

Там всё уже группировано. ОстаткиИОбороты само группирует
3 Maxus43
 
06.06.14
13:21
(1) да РП кодить особо не надо... сразу туда надо было идти
4 Shur1cIT
 
06.06.14
13:23
(2) в более продвинутом варианте в первом запросе работал с регистратором, и для надёжности Группировкой пытался рвать связь с регистратором тоесть получить остаток вне разреза регистратора
5 Shur1cIT
 
06.06.14
13:26
(2) по идее после "СГРУППИРОВАТЬ ПО" виртуальная таблица должна сгруппировать так что уже не важно с какой периодичностью получили данные
6 Shur1cIT
 
06.06.14
13:28
(5) чуть не забыл этот запрос в конструкторе СКД делаю может это СКД мутит?
7 hhhh
 
06.06.14
13:30
(5) как бы наоборот, когда остатки с периодичностью по регистратору получили, то значит нельзя группировать, а то получите "Запрос по ОстаткиИОбороты в зависимости от переодичности выдаёт разные данные"
8 vmv
 
06.06.14
13:34
(0) в СКД роли и периоды правильно установи и сказки больше не рассказывай

глянь в УНФ или другой "тонкой" конфе ОСВ, если надумал упереться рогом
9 Shur1cIT
 
06.06.14
13:40
(7) а как мне тогда получить остатки и обороты с регистратором дабы потом можно было корректно свернуть?
10 hhhh
 
06.06.14
13:42
(9) получай без регистратора. Он не нужен в твоем запросе
11 Shur1cIT
 
06.06.14
13:42
у меня только вариант два запроса с начало получить обороты с регистратором и свернуть а потом остатки и соединить
12 Shur1cIT
 
06.06.14
13:43
(10) нужен в более продвинутом я в регистратор лезу и смотрю дату документа, а без регистратора я так не смогу
13 Shur1cIT
 
06.06.14
13:47
То есть мне остаток за период нужен, а движения в разрезе регистратора
14 hhhh
 
06.06.14
13:48
(13) тогда 2 запроса делай
15 Shur1cIT
 
06.06.14
13:57
(14) спасибо я так и предпологал(((
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.