去修改Datacolchanged事件代码
Dim r2 As Row = Tables("创业计划书").Current
Dim fdr As DataRow = DataTables("企业组织").Find("计划书编号 = '" & r2("计划书编号") & "' ")
e.DataRow("成本_业主工资")=Tables("企业员工").Compute("Sum(月薪)","员工类型 = '业主或经理' and[计划书编号] = '" & r2("计划书编号") & "'")
e.DataRow("成本_员工工资")=Tables("企业员工").Compute("Sum(月薪)","员工类型 = '员工' and[计划书编号] = '" & r2("计划书编号") & "'")
e.DataRow("成本_租金")=Tables("企业组织").Compute("Sum(费用)","使用方式 = '租赁租金' and[计划书编号] = '" & r2("计划书编号") & "'")/12
e.DataRow("成本_营销费用")=Tables("促销费用").Compute("Sum(成本)","[计划书编号] = '" & r2("计划书编号") & "'")
e.DataRow("成本_公用事业费")=Tables("执照责任").Compute("Sum(预计费用)","类型 = '公用事业费' and[计划书编号] = '" & r2("计划书编号") & "'")
e.DataRow("成本_维修费")=Tables("执照责任").Compute("Sum(预计费用)","类型 = '维修费' and[计划书编号] = '" & r2("计划书编号") & "'")
e.DataRow("成本_保险费")=Tables("执照责任").Compute("Sum(预计费用)","类型 = '保险' and[计划书编号] = '" & r2("计划书编号") & "'")/12
e.DataRow("成本_登记注册费")=(Tables("执照责任").Compute("Sum(预计费用)","类型 = '执照许可' and[计划书编号] = '" & r2("计划书编号") & "'"))/12
e.DataRow("成本_原材料1")=Tables("原材料和包装").Compute("Sum(总费用)","类型 = '原材料和包装' and[计划书编号] = '" & r2("计划书编号") & "'")
e.DataRow("成本_折旧费")=Tables("固定资产折旧").Compute("Sum(月折旧)","[计划书编号] = '" & r2("计划书编号") & "'")
Select Case e.DataCol.name
Case "月份","销售_含流转税销售收入","成本_贷款利息"
If e.DataRow.Isnull("销售_含流转税销售收入") = False AndAlso fdr IsNot Nothing Then
e.DataRow("销售_销售净收入")=e.DataRow("销售_含流转税销售收入")/(1+fdr("税率"))
e.DataRow("销售_流转税增值税等")=e.DataRow("销售_含流转税销售收入")-e.DataRow("销售_销售净收入")
e.DataRow("税费_其他")=e.DataRow("销售_流转税增值税等")*fdr("附加税税率")
e.DataRow("成本_总成本")=e.DataRow("成本_业主工资")+e.DataRow("成本_员工工资")+e.DataRow("成本_租金")+e.DataRow("成本_营销费用")+e.DataRow("成本_公用事业费")+e.DataRow("成本_维修费")+e.DataRow("成本_折旧费")+e.DataRow("成本_贷款利息")+e.DataRow("成本_保险费")+e.DataRow("成本_登记注册费")+e.DataRow("成本_原材料1")+e.DataRow("成本_原材料2")+e.DataRow("成本_原材料3")+e.DataRow("成本_原材料4")+e.DataRow("成本_原材料5")+e.DataRow("成本_原材料6")
e.DataRow("利润")=e.DataRow("销售_销售净收入")-e.DataRow("成本_总成本")
e.DataRow("税费_企业所得税")=e.DataRow("利润")*fdr("企业所得税率")
e.DataRow("税后净收入")=e.DataRow("利润")-e.DataRow("税费_企业所得税")-e.DataRow("税费_个人所得税")-e.DataRow("税费_其他")
End If
End Select
Dim temp As Double
Select Case e.DataCol.Name
Case "贷款","月份"
If e.DataRow("月份") = 1 Then
e.DataRow("成本_贷款利息") = e.DataRow("贷款")*0.006
temp = e.DataRow("成本_贷款利息")
Else
Dim n As Integer = 0
Dim drs As List(Of DataRow) = e.DataTable.Select("月份 Is Not Null")
For n = 0 To drs.Count - 1
If n > 0 And drs.Count > 0 Then
e.DataRow("成本_贷款利息") = drs(n-1)("成本_贷款利息")
End If
Next
End If
End Select
'按照不同的月份来进行查询不同月份的销售额合计(此段代码系简化代码)
Select Case e.DataCol.name
Case "月份"
If e.DataRow.Isnull("月份") = False Then
Dim val As Integer = e.DataRow("月份")
Dim Sum As Double
Sum = Tables("销售收入预测表").Compute("Sum(月份_" & val & "_月销售额)","[计划书编号] = '" & r2("计划书编号") & "'")
e.DataRow("销售_含流转税销售收入") = sum
If fdr IsNot Nothing AndAlso fdr("有限责任公司")=True Then
e.DataRow("税费_个人所得税")=0
Else
Dim sl As Integer = e.DataRow("利润")+e.DataRow("成本_业主工资")-42000
If sl >3500 Then
If sl < 15000 Then
e.DataRow("税费_个人所得税")=(sl-3500)*0.05
Else
e.DataRow("税费_个人所得税")=(15000-3500)*0.05
End If
If sl < 30000 Then
e.DataRow("税费_个人所得税")+=(sl-15000)*0.1
Else
e.DataRow("税费_个人所得税")+=15000*0.1
End If
If sl < 60000 Then
e.DataRow("税费_个人所得税")+=(sl-30000)*0.2
Else
e.DataRow("税费_个人所得税")+=(30000)*0.2
End If
If sl < 100000 Then
e.DataRow("税费_个人所得税")+=(sl-60000)*0.3
Else
e.DataRow("税费_个人所得税")+=(40000)*0.3
e.DataRow("税费_个人所得税")+=(sl-100000)*0.35
End If
End If
End If
End If
End Select
Select Case e.DataCol.name
Case "月份"
If e.DataRow.Isnull("月份") = False Then
Dim val As Integer = e.DataRow("月份")
If val = 12 Then
Tables("创业计划书.销售成本合计表").AddNew()
End If
End If
End Select