请指点 VB.NET中动态改变水晶报表数据源的问题(多表连接)
我在水晶报表中连接了数据库,并设计好报表后,需要在程序中动态改变数据源,我目前的做法是(举例):
REPORT 中连接了TABLE1,TABLE2 并且table1.key(+)=table2.key (此时预览,数据显示正确)
在程序运行时,DIM ds AS DATASET
sql = "select * from table1"
...
fill(ds,"table1")
sql = "select * from table2"
...
fill(ds,"table2")
...
...
REPORT.SETDATASOURCE(ds)
这时运行显示的报表里有些记录会显示不出来,我怀疑是SETDATASOURCE 时,两个表的JOIN关系没有写进去,但是我又不知道怎么写。
因为实际的报表中,会涉及很多个表,很多个字段,通过一个SQL来FILL ds 的话,会很混乱,而且不容易维护,如果能用分开的SQL选择数据,但是又能把表关系准确的描述出来就好了,请教各位大侠,能否指点一下?