1。采购信息是父表,收piao登记是子表。
先增加父表行,保存后,在另外窗口增加子表行。要实现子表数据录入后父表自动更新
'根据收piao登记统计不含税金额等列
Select Case e.DataCol.Name
Case "工作号","报关单项号","工厂编号"
Dim Filter As String = "工作号 = '" & e.DataRow("工作号") & "'And 报关单项号 = '" & e.DataRow("报关单项号") & "'And 客户ID= '" & e.DataRow("工厂编号") & "'"
e.DataRow("fa piao不含税金额小计") = DataTables("收piao登记").sqlCompute("Sum(fa piao不含税金额)",Filter)
e.DataRow("fa piao进项税额小计") = DataTables("收piao登记").sqlCompute("Sum(fa piao进项税额)",Filter)
e.DataRow("fa piao征税率平均") = DataTables("收piao登记").sqlCompute("Avg(fa piao征税率)",Filter)
e.DataRow("fa piao退税率平均") = DataTables("收piao登记").sqlCompute("Avg(fa piao退税率)",Filter)
End Select
Select Case e.DataCol.Name
Case "fa piao不含税金额","fa piao进项税额" ,"fa piao征税率","fa piao退税率"
Dim pr As DataRow
Dim filter As String
filter = "工作号 = '" & e.DataRow("工作号") & "' And 报关单项号 = '" & e.DataRow("报关单项号") & "' And 工厂编号= '" & e.DataRow("客户ID") & "'"
pr = DataTables("采购信息").sqlFind(Filter)
If pr IsNot Nothing Then
DataTables("采购信息").DataCols("工作号").RaiseDataColChanged(pr)
DataTables("采购信息").DataCols("报关单项号").RaiseDataColChanged(pr)
DataTables("采购信息").DataCols("工厂编号").RaiseDataColChanged(pr)
End If
End Select
上面代码无法统计,不知道哪里有问题。
2.fa piao退税额为子表的表达式列。IsNull(Sum(Child(采购收piao).fa piao退税额),0),这样好象有问题,提示算术运算溢出。要怎么修改。