8.х Как сделать в запросе условие "ИЛИ" в необязательном параметре

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Robix, 7 фев 2015.

  1. TopicStarter Overlay
    Robix
    Offline

    Robix Опытный в 1С

    Регистрация:
    1 апр 2012
    Сообщения:
    107
    Симпатии:
    1
    Баллы:
    29
    Здравствуйте, есть запрос
    Код:
    ВЫБРАТЬ
        ГОД(РегистрГодовыхПремий.Период) КАК Год,
        РегистрГодовыхПремий.Сотрудник,
        РегистрГодовыхПремий.РазмерПремии
    ИЗ
        РегистрСведений.РегистрГодовыхПремий КАК РегистрГодовыхПремий
    ГДЕ
        РегистрГодовыхПремий.Регистратор ССЫЛКА Документ.ГодоваяПремия
    {ГДЕ
        (РегистрГодовыхПремий.Период < &НаДату)}
    Если параметр "НаДату" не пуст, то запрос будет по сути такой:

    Код:
    ВЫБРАТЬ
        ГОД(РегистрГодовыхПремий.Период) КАК Год,
        РегистрГодовыхПремий.Сотрудник,
        РегистрГодовыхПремий.РазмерПремии
    ИЗ
        РегистрСведений.РегистрГодовыхПремий КАК РегистрГодовыхПремий
    ГДЕ
        РегистрГодовыхПремий.Регистратор ССЫЛКА Документ.ГодоваяПремия
        И РегистрГодовыхПремий.Период < &НаДату
    А как сделать так, чтобы второе условие с парметром "НаДату" было связано с первым логическим "ИЛИ" и оставалось при этом необязательным, т.е. было в фигурных скобках?
  2. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Код:
    ВЫБРАТЬ
    ГОД(РегистрГодовыхПремий.Период) КАК Год,
    РегистрГодовыхПремий.Сотрудник,
    РегистрГодовыхПремий.РазмерПремии
    ИЗ
    РегистрСведений.РегистрГодовыхПремий КАК РегистрГодовыхПремий
    ГДЕ
    (РегистрГодовыхПремий.Регистратор ССЫЛКА Документ.ГодоваяПремия И &НаДату = ДАТАВРЕМЯ(1, 1, 1))
    ИЛИ РегистрГодовыхПремий.Период < &НаДату
    В данном случае параметр &НаДату естественно надо в любом случае устанавливать (либо пустая дата, либо нужная.)

Поделиться этой страницей