Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

СКД. Как разбить значения ресурса РС по двум столбцам?

СКД. Как разбить значения ресурса РС по двум столбцам?
Я
   Метан
 
27.02.18 - 12:32
Есть периодический регистр сведений, куда раз в месяц вносятся данные о цене товара.
Вид РС:
Номенклатура|ХарактеристикаНоменклатуры|Цена

Сами данные:
Яблоки |  Свежие | 100 руб
Яблоки |  Сушеные | 70 рублей
Груши  |  Свежие | 200 руб
Груши  |  Сушеные | 250 рублей

Поскольку данные из этого регистра нужны для построения большого отчета-таблицы по различным характеристикам номенклатуры,  данные надо разбить на этапе ЗАПРОСА по столбцам такого плана:

Номенклатура     |   ресурс Цена1  | ресурс Цена2
Яблоки                     100           70
Груши                      200           250

т.е. должно выполняться условие:
если ХарактеристикаНоменклатуры = Свежие, то цена должна вывестись в первую колонку, если = Сушеные  - то во вторую

Повторюсь, что сделать это надо (если есть такая возможность) на этапе конструктора запросов. Помогите, пожалуйста, советом, как это сделать
 
 
   Mort
 
1 - 27.02.18 - 12:34
А если характеристик будет три?
   iITmenedger
 
2 - 27.02.18 - 12:36
(0)нужно именно в запросе? не проще ли группировку по характеристике сделать?
   nordbox
 
3 - 27.02.18 - 12:36
Делай группировку, но если их у тебя буде не два, не три, а 123 ?
   Gantosha
 
4 - 27.02.18 - 12:38
СКД это делает при выводе результата. Там колонки есть - каждая колонка для своего значения. Так что не надо никакого специального запроса.
   unregistered
 
5 - 27.02.18 - 12:39
(0) Противоречишь сам себе.

>> данные из этого регистра нужны для построения большого отчета-таблицы ...

>> ... надо разбить на этапе ЗАПРОСА по столбцам

Если задача состоит в том, чтобы построить отчет, то почему нельзя использовать возможности СКД? Отчет - Таблица с группировкой в строках по Номенклатура и в колонках по Характеристика, Цена - ресурс.

Нафига делать именно на этапе запроса? Вообще непонятно.
   Метан
 
6 - 27.02.18 - 12:43
Характеристики в данном запросе будет 2, это 100%. А разбить по колонкам на этапе настроек макета МКД я не могу (или не знаю как) - у меня уже есть кросс-таблица. А мне, получается, нужна еще одна аналогичная, но с другими характеристиками. Как совместить две кросс-таблицы, чтобы не получилось вложения столбцов друг в друга - я не знаю =(
   iITmenedger
 
7 - 27.02.18 - 12:45
(6)ну тогда используй ВЫБОР КОГДА характеристика = Х1 ТОГДА Цена КОНЕЦ КАК ЦЕНА1, ВЫБОР КОГДА характеристика = Х2 ТОГДА Цена КОНЕЦ КАК ЦЕНА2
   Метан
 
8 - 27.02.18 - 12:47
iITmenedger, я так и делаю, но формируется долго =(
   iITmenedger
 
9 - 27.02.18 - 12:48
(8) давай запрос сюда целиком
   nordbox
 
10 - 27.02.18 - 12:50
Ты или в запросе намудрил или в группировках при выводе
 
 Рекламное место пустует
   nordbox
 
11 - 27.02.18 - 12:51
>> (или не знаю как) - у меня уже есть кросс-таблица.
Так ты с этого и начинай
   Метан
 
12 - 27.02.18 - 12:52
ВЫБРАТЬ
    РегистрСведенийСрезпоследних.Номенклатура,
    РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры,
    ВЫБОР
        КОГДА РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры.Наименование = "Свежие"
            ТОГДА РегистрСведенийСрезпоследних.Цена
        КОНЕЦ КАК Цена1,
    ВЫБОР
        КОГДА РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры.Наименование = "Сушеные"
            ТОГДА РегистрСведенийСрезпоследних.Цена
        КОНЕЦ КАК Цена2,
    РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры.Наименование
ИЗ
    РегистрСведенийСрезпоследних
   iITmenedger
 
13 - 27.02.18 - 12:53
(12)ошибка, запрос неоптимален. Нельзя обращаться чрезе точку .Наименование

Сравнивай с параметром, а не со строкой
   Метан
 
14 - 27.02.18 - 12:53
nordbox, пока только в консоли запросов работаю - проверяю запрос сам на вывод данных
   iITmenedger
 
15 - 27.02.18 - 12:54
(12)
РегистрСведенийСрезпоследних.Номенклатура,

    РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры,
    ВЫБОР
        КОГДА РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры = &Свежие
            ТОГДА РегистрСведенийСрезпоследних.Цена
        КОНЕЦ КАК Цена1,
    ВЫБОР
        КОГДА РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры = &Сушеные
            ТОГДА РегистрСведенийСрезпоследних.Цена
        КОНЕЦ КАК Цена2,
    РегистрСведенийСрезпоследних.ХарактеристикаНоменклатуры.Наименование

ИЗ
    РегистрСведенийСрезпоследних
   Метан
 
16 - 27.02.18 - 13:03
iITmenedger,спасибо за совет! Исправлю, когда найду тот самый параметр!

Всем спасибо!

Список тем форума
Рекламное место пустует  Рекламное место пустует
Программист всегда исправляет последнюю ошибку.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует