8.х Стандартный период в отчете на СКД

Тема в разделе "Система компоновки данных (СКД)", создана пользователем АлексейСХД, 2 июл 2019.

  1. TopicStarter Overlay
    АлексейСХД
    Offline

    АлексейСХД

    Регистрация:
    7 ноя 2016
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    Добрый день. возможно заезженный вопрос, не пойму, сделал отчет из регистров накопления со стандартным периодом между началом и концом, в отчете обязательное условие "Период" без выбранных дат данные не отображаются, можно ли как-то в скд сделать что бы период был не обязательный? без периода все отображается.
  2. TopicStarter Overlay
    АлексейСХД
    Offline

    АлексейСХД

    Регистрация:
    7 ноя 2016
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    Сделал пока что в параметрах выставить дату начала 01.01.1900 и дата окончания 31.12.2019г. дата начала такая далекая ввиду того что планируется вводить данные чуть ли не от 1984г. есть ли более правильное решение?
  3. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    Добрый день сделал отчет делаю период, а документы все равно отображаются все не могу понять в чем ошибка, делал из документа а не с регистра. В чем прикол если подбираю с регистра нечего не видно. Отчет простейший Средняя скидка из заказа клиента, все выводит а вот период задаю нечего не происходит
  4. TopicStarter Overlay
    АлексейСХД
    Offline

    АлексейСХД

    Регистрация:
    7 ноя 2016
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
  5. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    Не работает сделал все по ссылке, конфигурация управление предприятием ERP 2.0 в СКД подбирал параметры из документа.ЗаказКлиента не понимаю что нужно еще выбрать Если выбирать из регистров все данные нечего не показывает вообще
    --- Объединение сообщений, 24 июл 2019 ---
    ВЫБРАТЬ
    ЗаказКлиента.Ссылка,
    ЗаказКлиента.Партнер,
    ЗаказКлиента.Менеджер,
    ЗаказКлиентаТовары.ПроцентРучнойСкидки
    ИЗ
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
    ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКлиента
    ПО ЗаказКлиентаТовары.Ссылка = ЗаказКлиента.Ссылка
    Последнее редактирование: 24 июл 2019
  6. TopicStarter Overlay
    АлексейСХД
    Offline

    АлексейСХД

    Регистрация:
    7 ноя 2016
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    в моем варианте идут регистры: Скриншот 25-07-2019 115852.jpg Скриншот 25-07-2019 115922.jpg
    в вашем варианте с документами тоже можно сделать в запросе период(дата) между началом и концом, и в скд прописать стандартный период, если нужно выбирать из стандартного периода.
  7. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    Вот как прописать его не понимаю , с методички не подходит ща в инете гляну
  8. xaysnet
    Offline

    xaysnet Опытный в 1С

    Регистрация:
    3 июн 2019
    Сообщения:
    112
    Симпатии:
    3
    Баллы:
    29
    Вам нужно делать из регистра (а именно виртуальная таблица)
  9. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    ВЫБРАТЬ
    ЗаказыКлиентов.ЗаказКлиента.Ссылка,
    ЗаказКлиентаТовары.ПроцентРучнойСкидки
    ИЗ
    РегистрНакопления.ЗаказыКлиентов КАК ЗаказыКлиентов,
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары


    Вот пока так но периуд указать пока не шарю
  10. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.371
    Симпатии:
    88
    Баллы:
    54
    Доброго дня,
    Используйте фигурные скобки (команды пре процессора) :
    Код:
    ВЫБРАТЬ
       ЗаказКлиентаТовары.Ссылка КАК ЗаказКлиента,
       ЗаказКлиентаТовары.Номенклатура КАК Номенклатура,
       ЗаказКлиентаТовары.ПроцентРучнойСкидки
    ПОМЕСТИТЬ ВТ_ЗаказКлиентаТовары
    ИЗ
       Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
    {ГДЕ
       ЗаказКлиентаТовары.Ссылка КАК ЗаказКлиента,
       ЗаказКлиентаТовары.Номенклатура КАК Номенклатура,
       ЗаказКлиентаТовары.ПроцентРучнойСкидки КАК ПроцентРучнойСкидки
     }
    ИНДЕКСИРОВАТЬ ПО
       ЗаказКлиента,
       Номенклатура
    ;
    
    ВЫБРАТЬ
       ЗаказКлиентаТовары.ЗаказКлиента,
       ЗаказКлиентаТовары.Номенклатура,
       ЗаказКлиентаТовары.ПроцентРучнойСкидки
    {ВЫБРАТЬ
       ЗаказКлиента,
       Номенклатура,
       ПроцентРучнойСкидки,
       ЗаказыКлиентовОстатки.КоличествоОстаток КАК Количество
    }
    ИЗ
       ВТ_ЗаказКлиентаТовары КАК ЗаказКлиентаТовары
       {ЛЕВОЕ СОЕДИНЕНИЕ
          РегистрНакопления.ЗаказыКлиентов.Остатки(
             {&ДатаПолученияОстатков}
             , {ЗаказКлиента КАК ЗаказКлиента}
          ) КАК ЗаказыКлиентовОстатки
       ПО ЗаказыКлиентовОстатки.ЗаказКлиента = ЗаказКлиентаТовары.ЗаказКлиента
          И ЗаказыКлиентовОстатки.Номенклатура= ЗаказКлиентаТовары.Номенклатура}
    
    Это всего лишь пример, скорее всего не рабочий :)
    --- Объединение сообщений, 25 июл 2019 ---
    {&ДатаПолученияОстатков} - параметр который может быть не задан, если не задан то будут получены актуальные остатки.
    Если используете период то возможно использовать такое :
    Код:
    //... бла бла бла
    РегистрНакопления.ЗаказыКлиентов.ОстаткиИОбороты(
       {&ДатаНачала} //<- получим в параметрах из Периода
       , {&ДатаОкончания} //<- получим в параметрах из Периода
       , {&Периодичность} // сомнительно, но может сработает :)
       , // метод дополнения оставим на откуп СКД
    , {ЗаказКлиента КАК ЗаказКлиента}
    ) КАК ЗаказыКлиентовОстатки
    
    upload_2019-7-25_12-18-10.png
    --- Объединение сообщений, 25 июл 2019 ---
    Пример выполнения, если параметры Периодичность и Период включены в пользовательские поля :
    upload_2019-7-25_12-23-27.png
    Последнее редактирование: 25 июл 2019
  11. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    пример не рабочий смысл понял, но подставляя свои значения пишет таблица не найдена
    РегистрНакопления.ЗаказыКлиентов.Период(
    {&ДатаНачала} //<- получим в параметрах из Периода
    , {&ДатаОкончания} //<- получим в параметрах из Периода

    Почему период так как в регистре нет оборотов у меня конфигурация erp 2.0
  12. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.371
    Симпатии:
    88
    Баллы:
    54
    Регистр накопления, остатков, в нем нет таблицы "Период", можно "Остатки", "ОстаткиИОбороты"
  13. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    Вы уж извините я просто Л.. какое выражение еще я уже что только не добавлял и запятую и точку и все что хочешь оно чего то ждет непонятно чего

    Ошибка в запросе набора данных
    по причине:
    {(19, 16)}: Ожидается выражение ","
    ({&ДатаНачала} <<?>>, {&ДатаОкончания} , {&Периодичность}
  14. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.371
    Симпатии:
    88
    Баллы:
    54
    Какую таблицу используете ? (Остатки или ОстаткиИОбороты)
    в таблице Остатков параметров "ДатаОкончания, Периодичность" не будет exmpl.:
    Код:
    РегистрНакопления.ЗаказыКлиентов.Остатки(
             {&ДатаПолученияОстатков}
             , {ЗаказКлиента КАК ЗаказКлиента}
          ) КАК ЗаказыКлиентовОстатки
  15. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    ВЫБРАТЬ
    РегистрНакопления.ЗаказыКлиентов.ОстаткиИОбороты
    (,{&ДатаНачала}, {&ДатаОкончания} , {&Периодичность}
    ,
    , {ЗаказКлиента КАК ЗаказКлиента}
    ) КАК ЗаказыКлиентовОстатки
    --- Объединение сообщений, 25 июл 2019 ---
    ВЫБРАТЬ
    ЗаказКлиентаТовары.Ссылка КАК ЗаказКлиента,
    ЗаказКлиентаТовары.Номенклатура КАК Номенклатура,
    ЗаказКлиентаТовары.ПроцентРучнойСкидки
    ПОМЕСТИТЬ ВТ_ЗаказКлиентаТовары
    ИЗ
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
    {ГДЕ
    ЗаказКлиентаТовары.Ссылка КАК ЗаказКлиента,
    ЗаказКлиентаТовары.Номенклатура КАК Номенклатура,
    ЗаказКлиентаТовары.ПроцентРучнойСкидки КАК ПроцентРучнойСкидки
    }
    ИНДЕКСИРОВАТЬ ПО
    ЗаказКлиента,
    Номенклатура
    ;
    ВЫБРАТЬ
    РегистрНакопления.ЗаказыКлиентов.ОстаткиИОбороты
    (,{&ДатаНачала}, {&ДатаОкончания} , {&Периодичность}
    ,
    , {ЗаказКлиента КАК ЗаказКлиента}
    ) КАК ЗаказыКлиентовОстатки
  16. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.371
    Симпатии:
    88
    Баллы:
    54
    Обратите внимание, не должно быть знака разделения - запятой, в начале идет указание периода отбора через указание дат начала и окончания, далее указываем периодичность, затем указывается метод дополнения, и условие отбора по внутренним таблицам
    т.е. (ДатаНачала, ДатаОкончания, Периодичность, МетодДополнения, Условия) :
    upload_2019-7-25_16-37-14.png
    Так это можно посмотреть в конструкторе запроса
    --- Объединение сообщений, 25 июл 2019 ---
    в фигурных скобках указываются "Не обязательные" (в общем, как упрощение для понимания) параметры, поля, соединения, условия
    АлексейСХД нравится это.
  17. XacTLa
    Offline

    XacTLa

    Регистрация:
    23 июл 2019
    Сообщения:
    15
    Симпатии:
    0
    Баллы:
    1
    Разобрался указал в отчете :
    ВЫБРАТЬ
    ЗаказКлиентаТовары.Ссылка,
    ЗаказКлиентаТовары.Номенклатура,
    ЗаказКлиентаТовары.ПроцентРучнойСкидки
    ИЗ
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
    ГДЕ

    ЗаказКлиентаТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода