我打印的医院门诊发票中有一部分如下图所示,表里的数据都存在数据库,要求根据这些数据
统计这一天每个医生,以及医院的营业总额。
每张发票只对应某个医生一次所开药的情况(如:费用名称,费用金额,如下表)
并且,下表费用名称中所填向并不固定(如:手术费,治疗费,X光费.....)
我用的是datareport,不知用分组怎么实现
------------------------------------------
费用名称 | 费用金额 |费用名称 | 费用金额 |
------------------------------------------
| | | |
------------------------------------------
| | | |
------------------------------------------
-------------------------------------------------------------------------------------
统计表大致是这样的:
医生名 |手术费 |治疗费|.................|合计|
----------------------------------------------
.
.
.
合计 | | |.................| |
-----------------------------------------------
目前只写了一点程序,然后就不知道该怎么办了!请高手指点,分不够再加!
Private Sub DataReport_Initialize()
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim Sql, strSql As String
'连接数据库(Access)
Set cn = New ADODB.Connection
With cn
.Provider = "MSDataShape.1"
.Open "Data Provider=Microsoft.Jet.OLEDB.4.0 ;" & _
"Data Source=" & App.Path & "\门诊.mdb;" & _
"Persist Security Info=False"
End With
RptGroup.Sections("Section6").Controls("text1").DataField = "序号a"
RptGroup.Sections("Section1").Controls("text2").DataField = "费用金额b1"
RptGroup.Sections("Section1").Controls("text2").DataMember = "mi"
Sql = "SELECT 费用金额b1,序号a FROM `成员` where Format(日期, 'yy/m/d')=Format(now, 'yy/m/d') "
strSql = "SHAPE {" & Sql & " } " & _
"AS mi COMPUTE mi,sum(mi.费用金额b1) as Total by 序号a "
Set rs = New ADODB.Recordset
rs.Open strSql, cn, adOpenStatic, adLockReadOnly
Set Me.DataSource = rs
End Sub
统计这一天每个医生,以及医院的营业总额。
每张发票只对应某个医生一次所开药的情况(如:费用名称,费用金额,如下表)
并且,下表费用名称中所填向并不固定(如:手术费,治疗费,X光费.....)
我用的是datareport,不知用分组怎么实现
------------------------------------------
费用名称 | 费用金额 |费用名称 | 费用金额 |
------------------------------------------
| | | |
------------------------------------------
| | | |
------------------------------------------
-------------------------------------------------------------------------------------
统计表大致是这样的:
医生名 |手术费 |治疗费|.................|合计|
----------------------------------------------
.
.
.
合计 | | |.................| |
-----------------------------------------------
目前只写了一点程序,然后就不知道该怎么办了!请高手指点,分不够再加!
Private Sub DataReport_Initialize()
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim Sql, strSql As String
'连接数据库(Access)
Set cn = New ADODB.Connection
With cn
.Provider = "MSDataShape.1"
.Open "Data Provider=Microsoft.Jet.OLEDB.4.0 ;" & _
"Data Source=" & App.Path & "\门诊.mdb;" & _
"Persist Security Info=False"
End With
RptGroup.Sections("Section6").Controls("text1").DataField = "序号a"
RptGroup.Sections("Section1").Controls("text2").DataField = "费用金额b1"
RptGroup.Sections("Section1").Controls("text2").DataMember = "mi"
Sql = "SELECT 费用金额b1,序号a FROM `成员` where Format(日期, 'yy/m/d')=Format(now, 'yy/m/d') "
strSql = "SHAPE {" & Sql & " } " & _
"AS mi COMPUTE mi,sum(mi.费用金额b1) as Total by 序号a "
Set rs = New ADODB.Recordset
rs.Open strSql, cn, adOpenStatic, adLockReadOnly
Set Me.DataSource = rs
End Sub
解决方案 »
- 关于CreateWindowEx的显示问题
- 在VB6中如何让StatusBar控件中的字体显示红色
- 难,很难,非常难,。。。。。。。。。。。。高分啊!!!帮顶有分
- 如何使得在程序运行中,弹出一个对话框,提示用户输入一个参数,然后把这个参数保存进来
- 用VB打一个在网上的数据库文件(*.mdb)
- DoEvents这个语句 用VC怎么写?
- 如何把自己做的vb程序做成服务现在分没有了抱歉希望能得到帮助
- 问题
- 有方法获取窗体的状态信息吗?
- 学好VB最好最快的途径是什么?????
- 我用datareport设计的报表,怎样才能不显示预览直接打印报表?谢谢
- vb写的activex控件如何访问远程文件列表并且更新远程文件?
用VB建立EXCEL对象,通过代码调用EXCEL打印。
Dim rs As ADODB.Recordset
Dim Sql As String
Dim strConn As String
'连接数据库(Access)
Set cn = New ADODB.Connection
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\jysf.mdb;Persist Security Info=False"
cn.ConnectionString = strConn
cn.Open
DataReport1.Sections("Section1").Controls("text1").DataField = "student.sclass"
DataReport1.Sections("Section1").Controls("text2").DataField = "student.年"
DataReport1.Sections("Section1").Controls("text3").DataField = " student.月"
'打开记录集
Set rs = New ADODB.Recordset
Sql = "SELECT student.sclass, student.年, student.月, student.日, student.sname, student.sno, amounts.总额, amounts.学费, amounts.学杂费, amounts.住宿费, amounts.大写总额, amounts.学费代码, amounts.住宿费代码, amounts.收费单位代码, amounts.代管费, amounts.代管费总和, amounts.校服费, class.汉字班级 FROM amounts, student, class WHERE amounts.总额 = student.总额 AND student.sclass = class.sclass AND student.sclass = '1'"
'" & Chr(34) & Trim(DataList1.Text) & Chr(34) & "order by student.sclass" 'SQL语句可以用变量
'Debug.Print Sql
rs.Open Sql, cn, adOpenKeyset, adLockPessimistic
'设置text控件属性
Set DataReport1.DataSource = rs
'Set DataReport2.DataSource = Form1.Adodc1
cn.Close~~~~~~~~~~~~~~~~
帮忙看一下!我是哪边设错了啊?提示datasource 不合法!!