0

我需要基于 3 列创建报告——从报告到存储过程的参数将是 3 列的组合。

例如有一个包含列的表:

patientname, patient_no, hospital_no, doctor_code, service_used 

该报告将有 1 个参数作为输入,例如hospital_nodoctor_codeservice_used.

(表中 3 列的组合)并且所有具有该组合的患者都必须返回?如何才能做到这一点?

我也没有创建报告,所以如果我必须在参数中设置默认值,比如

hospital_no|doctor_code|service_used 

世事皆可能。但我不知道该怎么做。请帮忙!!!

表就像

patientname    patient_no    hospital_no   doctor_code    service_used
----------------------------------------------------------------------    
name1            1252           hosp1          doc12            OT_1
name2            2533           hosp2          doc12            IP_1
NAME3             1212          HOSP6          doc2             OP_1
name4             1111          HOSP6          doc2             OP_1
name5             2222          HOSP6          doc2             OP_1

报告将有一个类似的参数HOSP6doc2OP_1,它必须传递给存储过程(3 列的组合-hospital_no doctor_code service_used),输出应该是,(它应该根据 3 列提取值)

name4             1111             HOSP6          doc2             OP_1
name5             2222             HOSP6          doc2             OP_1
NAME3             1212             HOSP6          doc2             OP_1

这 3 个参数就像一个下拉菜单,这些参数的组合硬编码在水晶报表中。对于本报告,实际需要 4 种组合。所以这些将作为报告的 4 个参数(不同的组合)。另外,是的,我知道我可以在报告中使用 3 个单独的参数,但是......企业主想要这样的报告,所以我对此束手无策.

4

1 回答 1

0

如果您知道4 个参数将被硬编码的顺序,那么您可以在 where 中使用串联版本,即:

SELECT * FROM Table WHERE Name+Surname+Number+Age = @ReportParam
于 2013-08-19T15:19:29.340 回答