我在设计的时候为水晶报表建立了分组。但我需要动态更新数据集。请问,分组的SQL怎么写?数据表如下:
A表字段
ID,COM,ADD
B表字段
ID,NAME,TEL,AID
A表的ID对应B表的AID,对应关系是1对多。
设计的报表样式如下:
组:COM,ADD
详细内容:NAME,TEL
详细内容:NAME,TEL
……
详细内容:NAME,TEL
组:COM,ADD
详细内容:NAME,TEL
详细内容:NAME,TEL
……
详细内容:NAME,TEL我现在的RECORDSET是这样写的
SELECT A.*,B.* FROM A INNER JOIN B ON A.ID=B.AID
A表字段
ID,COM,ADD
B表字段
ID,NAME,TEL,AID
A表的ID对应B表的AID,对应关系是1对多。
设计的报表样式如下:
组:COM,ADD
详细内容:NAME,TEL
详细内容:NAME,TEL
……
详细内容:NAME,TEL
组:COM,ADD
详细内容:NAME,TEL
详细内容:NAME,TEL
……
详细内容:NAME,TEL我现在的RECORDSET是这样写的
SELECT A.*,B.* FROM A INNER JOIN B ON A.ID=B.AID
然后要做的是在水晶报表里分组
把id设成组名就可以了
方法是在报表设计器里-》右键-》插入组
所以你也用不着来写什么分组的SQL语句了。右键点击选择插入组
然后选择一个依照分组的字段就可以了。这是报表工具来完成的,永不者你来处理。
Private Sub Command1_Click()
Dim strSql As String
Dim strFile As String
'***SQL-Create
strSql = "select * from My_Table"
'****File Path
CrystalReport1.ReportFileName = "D:\report1.rpt"
'****DataBase Connect
CrystalReport1.Connect = "ODBC;DSN=ebis;UID=ebisho;PWD=ebisho;"
'****QuerySql
CrystalReport1.SQLQuery = strSql CrystalReport1.Destination = crptToWindow
CrystalReport1.WindowShowPrintBtn = True
CrystalReport1.RetrieveDataFiles
CrystalReport1.WindowState = crptMaximized
CrystalReport1.PrintReport
End Sub