Имя: Пароль:
1C
1С v8
СКД сложная группировка колонок
0 SerF_2011
 
15.10.24
15:23
Всем привет.
Торможу вроде как на пустом месте, подскажите, уважаемые.
Есть данные:
Вид    Свойство    Товар

Вид1    Высокий        Товар1
Вид1    Средний        Товар2
Вид2    Высокий        Товар3
Вид2    Низкий        Товар4
Вид2    Null        Товар5
Вид2    Null        Товар6
Вид2    Null        Товар7
Вид3    Высокий        Товар8

Нужен отчет в виде:

        Высокий        Средний        Низкий        Null
Вид1
        Товар1        Товар2
Вид2
        Товар3                    Товар4        Товар5
                                    Товар6
                                    Товар7
Вид3    
        Товар8    

Как сделать через СКД?
Если в ресурсы добавляю Максимум(Товар), вывод в таблицу,
по строкам группировка Вид, по столбцам группировка Свойство,
то выводятся не все товары и не выводятся строки, у которых Свойство = Null
1 Шебвольник С1
 
15.10.24
15:23
Не игнорировать NULL или isNull
2 SerF_2011
 
15.10.24
15:47
(1) если имеется в виду флаг для роли у поля, то я его и не ставлю.
Так вообще возможно вывести, чтобы товары были не каждый раз с новой строки, а новая строка начиналась только когда все варианты Свойства уже перечислены (в примере Товар6 и Товар7)?
3 SerF_2011
 
15.10.24
16:12
в (0) все съехало, вот такое требуется получить на выходе, см. рис.
4 программистище
 
15.10.24
16:32
(3) оформление в виде обычной таблицы, и в чем проблема?
что не получается или не пробовал?
5 Шебвольник С1
 
15.10.24
16:50
Дальше что-то из серии ВычислитьВыражениеСГруппировкойМассив - сам каждый раз в гугл хожу.
6 SerF_2011
 
15.10.24
16:50
(4) ок, давайте вместе, запрос:
ВЫБРАТЬ
    "Вид1" КАК Вид,
    "Высокий" КАК Свойство,
    "Товар1" КАК Товар
ПОМЕСТИТЬ ВТДанные

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Вид1",
    "Средний",
    "Товар2"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Вид2",
    "Высокий",
    "Товар3"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Вид2",
    "Низкий",
    "Товар4"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Вид2",
    NULL,
    "Товар5"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Вид2",
    NULL,
    "Товар6"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Вид2",
    NULL,
    "Товар7"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Вид3",
    "Высокий",
    "Товар8"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТДанные.Вид,
    ВТДанные.Свойство,
    ВТДанные.Товар
ИЗ
    ВТДанные КАК ВТДанные
7 SerF_2011
 
15.10.24
16:51
Где Товар5 и Товар6?
8 KJlag
 
15.10.24
16:53
ЕстьNull(Свойство, "Не выбран") ? или любая другая мусорка?
9 SerF_2011
 
15.10.24
16:56
(8) не помогает
10 SerF_2011
 
15.10.24
16:58
Если добавляю детальные записи, то получается почти как надо, но каждый товар на новой строке и само свойство в группировку слева залетает. А зачем оно там, если оно в столбцах уже есть. Это как то отключить можно?
11 SerF_2011
 
15.10.24
17:01
Похоже, придется делать старым добрым перебором выборки, созданием промежуточных ТЗ и потом Таб.Вывести + Таб.Присоединить. Ну е-мое.
12 SerF_2011
 
15.10.24
17:06
Вот такое мне удается сделать, но как то можно убрать то что выделено красным? Заменить на пустую строку?
13 Шебвольник С1
 
15.10.24
17:07
(12) Убрать галку у поля в ВыбранныхПолях группировки
14 SerF_2011
 
15.10.24
17:12
(13) тогда другая шляпа
15 craxx
 
15.10.24
17:16
(14) условное оформление отменили?
16 SerF_2011
 
16.10.24
14:49
(15) если в условном оформлении в детальных записях для поля Вид поставить Текст = Пустая строка, то вроде все норм.
Но все равно не так, как хотелось изначально. В этом варианте каждый товар с новой строки, а было желание как бы распределить товары по колонкам свойств. То есть, тогда Товар1 и Товар2 в этом примере были бы в одной строке, с Вид1.
Дайте знать, если кто так умеет.
Основная теорема систематики: Новые системы плодят новые проблемы.