[ELMA3] Использование параметров – списков в отчетах
При написании отчетов может возникнуть необходимость фильтровать данные по некоторым параметрам. Например, по пользователям, контрагентам, проектам и т.д. Более подробно о создании отчетов можно узнать здесь и здесь.
При использовании для фильтрации нескольких записей, необходимо добавить параметр с типом связи Многие-ко-Многим.
Запрос будет выглядеть примерно так:
Select * from TableName where Property in (@Parameter)
В этом случае, фильтрация будет проходить по указанным пользователем элементам, но если понадобится посмотреть все записи, без фильтрации по этому параметру, отчет выдаст ошибку. В стандарте SQL нет возможности проверить список на null, поэтому в генераторе отчетов ELMA была добавлена возможность проверки списка. Предыдущий запрос с проверкой списка будет выглядеть следующим образом:
Select * from TableName as tn where tn.Status <> 0 {if {$Parameter.Count} > 0 } and Property in (@Parameter) {end if}
Если в списке не будет указано ни одной записи, этот параметр будет игнорироваться.