以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 求纠正代码:当计划书编号为1、2时候可以正常运行 当增加到3时候,项目自动退出,求解! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=65387) |
||||
-- 作者:李孝春 -- 发布时间:2015/3/15 0:07:00 -- 求纠正代码:当计划书编号为1、2时候可以正常运行 当增加到3时候,项目自动退出,求解! 故障说明: 销售和成本计划 打开这个菜单 弹出窗体 按一键生成按钮 当计划书编号为1、2时候可以正常运行 当增加到3时候,项目自动退出,求解! 示意图: 一键生成代码如下:【对应销售和成本计划表,该表中还有对应的事件代码】 Dim a As Row=Tables("创业计划书").current
|
||||
-- 作者:有点甜 -- 发布时间:2015/3/15 9:35:00 -- 去修改Datacolchanged事件代码
Dim r2 As Row = Tables("创业计划书").Current e.DataRow("成本_业主工资")=Tables("企业员工").Compute("Sum(月薪)","员工类型 = \'业主或经理\' and[计划书编号] = \'" & r2("计划书编号") & "\'") e.DataRow("成本_营销费用")=Tables("促销费用").Compute("Sum(成本)","[计划书编号] = \'" & r2("计划书编号") & "\'") e.DataRow("成本_折旧费")=Tables("固定资产折旧").Compute("Sum(月折旧)","[计划书编号] = \'" & r2("计划书编号") & "\'")
Select Case e.DataCol.name |
||||
-- 作者:李孝春 -- 发布时间:2015/3/15 23:44:00 -- 回复:(有点甜)?去修改Datacolchanged事件代码... 老师 现在又出现了奇怪问题 当 按照顺序从左到右点击对应窗体后 全部增加数据后 运行销售和成本按钮中一键生成就会出现项目闪退 求解决!
此主题相关图片如下:qq图片20150315232902.png [此贴子已经被作者于2015/3/15 23:44:57编辑过]
|
||||
-- 作者:Bin -- 发布时间:2015/3/16 8:36:00 -- 说明你某一个地方造成了死循环. 建议您用这个方法: http://www.foxtable.com/help/topics/1485.htm 先找出是哪一行开始出现死循环,然后分析原因,搞不定,可以在论坛发帖,贴出代码,并告诉我们运行到哪一行出错,以及错误提示。 |
||||
-- 作者:有点甜 -- 发布时间:2015/3/16 9:11:00 -- 请去你的Datacolchanged事件加入msgbox调试是哪句代码出问题了,对应的去修改。
这是最基本的。
http://www.foxtable.com/help/topics/1485.htm
|
||||
-- 作者:李孝春 -- 发布时间:2015/3/17 10:50:00 -- 回复:(有点甜)请去你的Datacolchanged事件加入msgb... 代码进行如下补正,结果没有出错 ,但是不知道为什么项目会自动关闭了!求解! Dim r2 As Row = Tables("创业计划书").Current Dim fdr As DataRow = DataTables("企业组织").Find("计划书编号 = \'" & r2("计划书编号") & "\' ") e.DataRow("成本_业主工资")=Tables("企业员工").Compute("Sum(月薪)","员工类型 = \'业主或经理\' and[计划书编号] = \'" & r2("计划书编号") & "\'") MessageBox.Show(e.DataRow("成本_业主工资")) e.DataRow("成本_员工工资")=Tables("企业员工").Compute("Sum(月薪)","员工类型 = \'员工\' and[计划书编号] = \'" & r2("计划书编号") & "\'") MessageBox.Show(e.DataRow("成本_员工工资")) e.DataRow("成本_租金")=Tables("企业组织").Compute("Sum(费用)","使用方式 = \'租赁租金\' and[计划书编号] = \'" & r2("计划书编号") & "\'")/12 MessageBox.Show(e.DataRow("成本_租金")) e.DataRow("成本_营销费用")=Tables("促销费用").Compute("Sum(成本)","[计划书编号] = \'" & r2("计划书编号") & "\'") MessageBox.Show(e.DataRow("成本_营销费用")) e.DataRow("成本_公用事业费")=Tables("执照责任").Compute("Sum(预计费用)","类型 = \'公用事业费\' and[计划书编号] = \'" & r2("计划书编号") & "\'") MessageBox.Show(e.DataRow("成本_公用事业费")) e.DataRow("成本_维修费")=Tables("执照责任").Compute("Sum(预计费用)","类型 = \'维修费\' and[计划书编号] = \'" & r2("计划书编号") & "\'") MessageBox.Show(e.DataRow("成本_维修费")) e.DataRow("成本_保险费")=Tables("执照责任").Compute("Sum(预计费用)","类型 = \'保险\' and[计划书编号] = \'" & r2("计划书编号") & "\'")/12 MessageBox.Show(e.DataRow("成本_保险费")) e.DataRow("成本_登记注册费")=(Tables("执照责任").Compute("Sum(预计费用)","类型 = \'执照许可\' and[计划书编号] = \'" & r2("计划书编号") & "\'"))/12 MessageBox.Show(e.DataRow("成本_登记注册费")) e.DataRow("成本_原材料1")=Tables("原材料和包装").Compute("Sum(总费用)","类型 = \'原材料和包装\' and[计划书编号] = \'" & r2("计划书编号") & "\'") MessageBox.Show(e.DataRow("成本_原材料1")) e.DataRow("成本_折旧费")=Tables("固定资产折旧").Compute("Sum(月折旧)","[计划书编号] = \'" & r2("计划书编号") & "\'") MessageBox.Show(e.DataRow("成本_折旧费")) \' Select Case e.DataCol.name Case "月份","销售_含流转税销售收入","成本_贷款利息" If e.DataRow.Isnull("销售_含流转税销售收入") = False Then e.DataRow("销售_销售净收入")=e.DataRow("销售_含流转税销售收入")/(1+fdr("税率")) MessageBox.Show(e.DataRow("销售_销售净收入")) e.DataRow("销售_流转税增值税等")=e.DataRow("销售_含流转税销售收入")-e.DataRow("销售_销售净收入") MessageBox.Show(e.DataRow("销售_流转税增值税等")) e.DataRow("税费_其他")=e.DataRow("销售_流转税增值税等")*fdr("附加税税率") MessageBox.Show(e.DataRow("税费_其他")) 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") MessageBox.Show( e.DataRow("成本_总成本")) e.DataRow("利润")=e.DataRow("销售_销售净收入")-e.DataRow("成本_总成本") MessageBox.Show(e.DataRow("利润")) e.DataRow("税费_企业所得税")=e.DataRow("利润")*fdr("企业所得税率") MessageBox.Show(e.DataRow("税费_企业所得税")) e.DataRow("税后净收入")=e.DataRow("利润")-e.DataRow("税费_企业所得税")-e.DataRow("税费_个人所得税")-e.DataRow("税费_其他") MessageBox.Show(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 MessageBox.Show(e.DataRow("成本_贷款利息")) 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)("成本_贷款利息") MessageBox.Show(e.DataRow("成本_贷款利息")) 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 MessageBox.Show( e.DataRow("销售_含流转税销售收入")) \'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
|
||||
-- 作者:李孝春 -- 发布时间:2015/3/18 16:42:00 -- 回复:(李孝春)回复:(有点甜)请去你的Datacolcha... 继续求解! |
||||
-- 作者:有点甜 -- 发布时间:2015/3/18 17:10:00 -- 这种问题就自己检测和判断啊,就是加入msgbox去判断一下就行啊
因为别人不知道你的逻辑是什么啊。不知道怎么操作会有问题啊。 |