Как я могу использовать более одной хранимой процедуры в отчете Crystal? - PullRequest
4 голосов
/ 19 мая 2009

У меня есть две хранимые процедуры, которые я хочу использовать в своей хранимой процедуре, но, как только я это сделаю, она не загружается с ошибкой: «Неверный аргумент предоставлен, набор строк не получен». Если я удаляю одну из них, она снова начинает работать.

Я настроил отчет о кристалле примерно так:

Report:
  Group By Tenant.ReferedBy
    stored proc here that calculates the tenant's balance

и второй сохраненный процесс находится в Выбор для отчета. Я хочу выбирать арендаторов только по флагу статуса, а я получаю флаг статуса из сохраненного процесса.

Ни одна из двух процедур в любом случае не связана. Один возвращает одно значение (одно в выбранном), другое возвращает множественное (одно в группе по). Ни один из них не принимает никаких параметров, и оба являются простыми операторами SQL, хранящимися в базе данных.

Первый процесс: GetAllTenantBalances

SELECT (SUM(tblTransaction.AmountPaid) - SUM(tblTransaction.AmountCharged)) AS TenantBalance, tblTransaction.TenantID
    FROM tblTransaction
    GROUP BY tblTransaction.TenantID

Второй процесс: [GetTenantStatusID_Current]

SELECT ID FROM tblTenantStatus WHERE Description = 'Current'

Может кто-нибудь сказать мне, почему я не могу этого сделать и как обойти это?

Ответы [ 3 ]

1 голос
/ 19 мая 2009

Вы можете изменить первый sp, чтобы суммировать только «текущих» арендаторов. Или, если вам нужно сохранить два sp, вам нужно обратиться к эксперту по базе данных и присоединиться к ним по tenant_id.

0 голосов
/ 19 мая 2009

Вы также можете использовать подотчеты, чтобы предоставить вам нужные данные. Используйте на SP на основном, а затем на другом SP на подотчете.

-JFV

0 голосов
/ 19 мая 2009

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

...