Имя: Пароль:
1C
1С v8
СКД. Метод дополнения: Движения vs ДвиженияИГраницыПериода
0 dave2000
 
04.12.15
16:32
Есть такой запрос:

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


Проблемы в следующем:
1. Если "Метод дополнения = Движения", то в отчет выводятся только те измерения, по которым за выбранный период были движения. по остальным измерениям остатков не видно.
2. Если "Метод дополнения = ДвиженияИГраницыПериода", то в разрезе движений по регистраторам появляются по две лишние строки без движений (с начальным и конечным остатком, одна вначале, другая вконце), они портят весь вид отчета, народ путается.

Как избавиться от этих двух строк в п.2? Нужно, чтобы выводились остатки по всем измерениям (независимо от наличия движений), и чтобы ничего лишнего не добавлялось.
1 hhhh
 
04.12.15
16:37
как-то так

ГДЕ

    НЕ ТоварыНаСкладахОстаткиИОбороты.Регистратор ЕСТЬ NULL
2 aleks_default
 
04.12.15
16:37
галку автозаполнение на закладке "наборы данных" снять и обратно поставить
3 dave2000
 
04.12.15
17:13
(1) Если поставить это условие, то оно не выводит измерения, по которым не было движений

(2) Что это должно дать? Снял/поставил - ничего не дало, пришлось после этого перезаполнять все ручные настройки.
4 aleks_default
 
04.12.15
17:19
А какие ручные настройки там у тебя?
По умоллчанию роль у регистратора должна быть период,1 а у периодсекунда - период,2. У тебя так?
5 DmitrO
 
04.12.15
17:21
>>Как избавиться от этих двух строк в п.2

Установить отбор для группировки Регистратор: Приход <> 0 или Расход <> 0, в доп.параметрах группировки указать НеВыводить отбор.
6 DmitrO
 
04.12.15
17:24
ну или там отбор: Регистратор Заполнено
суть в том что использовать фильтр на этапе вывода.
7 VikingKosmo
 
04.12.15
17:26
(5) ну-ну...
8 VikingKosmo
 
04.12.15
17:27
а как же птица Игнорировать значения NULL у роли?
9 dave2000
 
04.12.15
17:29
(4) У меня там папки созданы и разные поля разнесены по этим папкам.

Да, с Регистратором и ПериодСекунда я это я знаю, дело в другом: для всех измерений добавляются строки без движений с начальными и конечными остатками. От них-то и нужно избавиться.

(5)(6) Регистратор у меня находится в измерении "Детальные записи", в отборе регистратор недоступен. Но смысл я понял, так не сработает, т.к. уберутся даже те измерения, по которым не было движений, будет проблема п.1 в (0)
10 DmitrO
 
04.12.15
17:34
(9)Регистратор у тебя в группировке отчета с детальными записями, вот по ней и ставь отбор.
11 aleks_default
 
04.12.15
17:46
(9)Может лучше папки создать в выбранных полях, а не в наборах данных? Потому как именно по ролям СКД и понимает что ты хочешь получить именно таблицу остатков а не что-то другое.
12 dave2000
 
04.12.15
19:53
(10) В отборе для <Детальных записей> нет в доступности регистратора ((
13 dave2000
 
04.12.15
19:54
(10) В выбранных полях есть, а в отборе его нет
14 dave2000
 
04.12.15
20:04
(12) (13) Всё, разобрался, получилось... У меня Регистратор не был выбран в запросе в условиях компоновки данных. Теперь появился в отборе, поставил условие, указал что отбор не выводить и всё стало гуд!

Спасибо всем!
15 DmitrO
 
04.12.15
20:16
не всем а мне )