Как заполнить параметр в sq?

1) Добрый день! Написал запрос для отчета. Запрос имеет следующий вид.

SELECT
        [tbl_Contact].[Name] AS [ContactName],
        [tbl_Contact].[ID] AS [ContactID],
        (SELECT
                COUNT(*) AS [CountIncident]
        FROM
                [tbl_Incident] AS [tbl_Incident]
        WHERE
                ([tbl_Incident].[OwnerID] = [tbl_Contact].[ID] AND
                [tbl_Incident].[StatusID] = :StatusID AND
                [tbl_Incident].[ActualStart] BETWEEN :FromDate AND :ToDate)) AS [CountIncident],
        (SELECT
                COUNT(*) AS [CompleteIncident]
        FROM
                [tbl_Incident] AS [tbl_Incident]
        WHERE
                ([tbl_Incident].[OwnerID] = [tbl_Contact].[ID] AND
                [tbl_Incident].[StatusID] = :CompleteID AND
                [tbl_Incident].[ActualStart] BETWEEN :FromDate AND :ToDate)) AS [CompleteIncident],
        (SELECT
                COUNT(*) AS [NewIncident]
        FROM
                [tbl_Incident] AS [tbl_Incident]
        WHERE
                ([tbl_Incident].[OwnerID] = [tbl_Contact].[ID] AND
                [tbl_Incident].[StatusID] = :NewID AND
                [tbl_Incident].[ActualStart] BETWEEN :FromDate AND :ToDate)) AS [NewIncident],
        (SELECT
                COUNT(*) AS [TaskCount]
        FROM
                [tbl_Task] AS [tbl_Task]
        WHERE
                ([tbl_Task].[OwnerID] = [tbl_Contact].[ID] AND
                [tbl_Task].[StatusID] = :TaskCancel AND
                [tbl_Task].[ActualStartDate] BETWEEN :FromDate AND :ToDate)) AS [TaskCancel],
        (SELECT
                COUNT(*) AS [TaskCount]
        FROM
                [tbl_Task] AS [tbl_Task]
        WHERE
                ([tbl_Task].[OwnerID] = [tbl_Contact].[ID] AND
                [tbl_Task].[StatusID] = :TaskFinish AND
                [tbl_Task].[ActualStartDate] BETWEEN :FromDate AND :ToDate)) AS [TaskFinish],
        (SELECT
                COUNT(*) AS [TaskCount]
        FROM
                [tbl_Task] AS [tbl_Task]
        WHERE
                ([tbl_Task].[OwnerID] = [tbl_Contact].[ID] AND
                [tbl_Task].[StatusID] = :TaskOpen AND
                [tbl_Task].[ActualStartDate] BETWEEN :FromDate AND :ToDate)) AS [TaskOpen],
        (SELECT
                COUNT(*) AS [TaskCount]
        FROM
                [tbl_Task] AS [tbl_Task]
        WHERE
                ([tbl_Task].[OwnerID] = [tbl_Contact].[ID] AND
                [tbl_Task].[StatusID] = :TaskWork AND
                [tbl_Task].[ActualStartDate] BETWEEN :FromDate AND :ToDate)) AS [TaskWork],
        :FromDate AS [FromDate],
        :ToDate AS [ToDate],
        [tbl_Incident].[ID] AS [ID]
FROM
        [tbl_Contact] AS [tbl_Contact]
LEFT OUTER JOIN
        [tbl_Incident] AS [tbl_Incident] ON [tbl_Incident].[ContactID] = [tbl_Contact].[ID]

Отчет выбирает инциденты по статусу инцидента для сотрудника.
Фильтр стандартный т.е тот который создается средствами FastReport. В нем 3 поля Сотрудник. Дата начала. Дата окончания.
Подскажите можно ли как то подтянуть дату заданную в фильтре и подставить ее в данный запрос в параметр :FromDate или :ToDate что бы он сформировался с учетом заданной в фильтре даты.

2)Есть еще небольшой второй вопросик. Связанный с тем что когда я задаю дату прописывая в параметр sq_. Работает только через тере(01-01-2010), а не через точку (01.01.2010) как я делал раньше. С чем это связано?

Нравится

3 комментария

В Вашем случае, думаю, без собственной формы фильтрации не обойтись. Во вложении к сообщению находится пример реализации собственного окна для того, чтобы дата, выбранная в окне подставлялась в отчете вместо даты накладной.
Касательно второго вопроса, то скорее всего у Вас изменились региональные настройки, а именно формат отображения краткой даты на 01-01-2010 вместо 01.01.2010.

Какие у вас хорошие доки. А где можно их почитать не по конкретным вопросам, а в целях собственного развития?

"itmaster_muh" написал:Какие у вас хорошие доки. А где можно их почитать не по конкретным вопросам, а в целях собственного развития?

Спасибо!:)

Обращайтесь в Support и мы предоставим Вам необходимую информацию в виде инструкций, алгоритмов и т.д.

Просто укажите интересующую Вас тему!:smile:

Показать все комментарии