以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 版本转换后不能用了 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=116939) |
||||
-- 作者:outcat -- 发布时间:2018/4/3 0:31:00 -- 版本转换后不能用了
老师,请帮忙看一下,我的这个系统,前两天由商业版转化为开发版了,转化回来后,我这里有 客户订砖、零售销砖、赊销销砖 这三个新增订单都不能正常的录入数据了,我看过了代码呢和原来商业版的代码一样,原来在商业版下,这几个功能能用的。回来还没有仔细看,不知道别的地方还有什么问题呀。真是头疼呀,请老师给看一下,怎么回事。这几个功能都在业务管理目录下
|
||||
-- 作者:xxfoxtable -- 发布时间:2018/4/3 8:20:00 -- 导入砖的代码应该分开吧,起码得做判断,不能都放一起 [此贴子已经被作者于2018/4/3 8:23:57编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2018/4/3 8:48:00 -- 1、请说明具体测试步骤,你说的不能正常,是指什么?什么不正常?
2、尝试把bin文件夹删除,重新打开项目看看。 |
||||
-- 作者:outcat -- 发布时间:2018/4/3 21:31:00 -- ![]() ![]() 导入代码: For Each r As Row In Tables("商品明细表").GetCheckedRows If Forms("新增客户订砖").opened
Dim r1 As Row = Tables("客户订砖明细表").AddNew
Dim r2 As Row = Tables("客户订砖总表").Current
\'客户订砖
r1("日期") =
r2("日期")
r1("客户名称") =
r2("客户名称") r1("订砖单号") = r2("订砖单号") r1("地址") = r2("地址") r1("电话") = r2("电话") r1("付款方式") = r2("付款方式") r1("商品编号") = r("商品编号") r1("商品类别") = r("商品类别") r1("商品名称") = r("商品名称") r1("规格型号") = r("规格型号") r1("单位") = r("单位") r1("单价") = r("单价") End If \'Dim rls1 As Row = Tables("零售销砖明细表").AddNew \'Dim rls2 As Row = Tables("零售销砖总表").Current \' \'Dim rsx1 As Row = Tables("赊销销砖明细表").AddNew \'Dim rsx2 As Row = Tables("赊销销砖总表").Current \'\'客户订砖 \'r1("日期") = r2("日期") \'r1("客户名称") = r2("客户名称") \'r1("订砖单号") = r2("订砖单号") \'r1("地址") = r2("地址") \'r1("电话") = r2("电话") \'r1("付款方式") = r2("付款方式") \'r1("商品编号") = r("商品编号") \'r1("商品类别") = r("商品类别") \'r1("商品名称") = r("商品名称") \'r1("规格型号") = r("规格型号") \'r1("单位") = r("单位") \'r1("单价") = r("单价") \' \'\'零售销砖 \'rls1("日期") = rls2("日期") \'rls1("客户名称") = rls2("客户名称") \'rls1("地址") = rls2("地址") \'rls1("电话") = rls2("电话") \'rls1("零售单号") = rls2("零售单号") \'rls1("付款方式") = rls2("付款方式") \'rls1("商品编号") = r("商品编号") \'rls1("商品类别") = r("商品类别") \'rls1("商品名称") = r("商品名称") \'rls1("规格型号") = r("规格型号") \'rls1("单位") = r("单位") \'rls1("单价") = r("单价") \' \'\'赊销销砖 \'rsx1("日期") = rsx2("日期") \'rsx1("客户名称") = rsx2("客户名称") \'rsx1("地址") = rsx2("地址") \'rsx1("电话") = rsx2("电话") \'rsx1("赊销单号") = rsx2("赊销单号") \'rsx1("商品编号") = r("商品编号") \'rsx1("商品类别") = r("商品类别") \'rsx1("商品名称") = r("商品名称") \'rsx1("规格型号") = r("规格型号") \'rsx1("单位") = r("单位") \'rsx1("单价") = r("单价") Next e.Form.close 导入砖商品代码,这个窗体我是三个录单界面都调用这个窗体,原来在商业版本下都没有没问题,商业版转换为开发版本后,在录单界面,选择了这个商品后,然后点“导入”按钮,程序就闪退了,不知道怎么回事,还有我这个要在在这个代码里加入判断,当打开不同的录单界面,调用不同的代码,这个不知道怎么定义窗体判断调用,请教了 |
||||
-- 作者:有点蓝 -- 发布时间:2018/4/3 21:48:00 -- 这个代码不应该会导致闪退。把项目里的bin目录完整删除干净,然后重启项目测试 代码可以优化一下 If Forms("新增客户订砖").opened Dim r2 As Row = Tables("客户订砖总表").Current For Each r As Row In Tables("商品明细表").GetCheckedRows Dim r1 As Row = Tables("客户订砖明细表").AddNew \'客户订砖 r1("日期") = r2("日期") r1("客户名称") = r2("客户名称") r1("订砖单号") = r2("订砖单号") r1("地址") = r2("地址") r1("电话") = r2("电话") r1("付款方式") = r2("付款方式") r1("商品编号") = r("商品编号") r1("商品类别") = r("商品类别") r1("商品名称") = r("商品名称") r1("规格型号") = r("规格型号") r1("单位") = r("单位") r1("单价") = r("单价") Next End If e.Form.close |
||||
-- 作者:outcat -- 发布时间:2018/4/3 21:56:00 -- 老师,还是闪退,一点"导入"就退出程序了,我上面已经发过项目了,麻烦老师给看一下吧 |
||||
-- 作者:有点蓝 -- 发布时间:2018/4/3 22:37:00 -- 项目有许多不合理的代码用法。 1、客户定砖明细表DataColChanging,这种代码会引起死循环 If e.DataCol.Name = "客户名称" Then If e.NewValue IsNot Nothing Then DataTables("客户订砖明细表").ReplaceFor("客户名称",e.NewValue,"订砖单号 = \'" & e.DataRow("订砖单号") & "\'") End If End If 不停的自己触发更新自己,应该改为 If e.DataCol.Name = "客户名称" Then If e.NewValue IsNot Nothing Then SystemReady = False DataTables("客户订砖明细表").ReplaceFor("客户名称",e.NewValue,"订砖单号 = \'" & e.DataRow("订砖单号") & "\'") SystemReady = true End If End If 这个事件其它代码一样,自己改回来 2、不少明细表Datacolchanged这种代码非常不严谨 Tables("客户订砖总表").Current("应付金额") = DataTables("客户订砖明细表").Compute("sum(应付金额)","订砖单号 = \'" & Tables("客户订砖总表").Current("订砖单号") & "\'") Tables("客户订砖总表").Current("实付金额") = DataTables("客户订砖明细表").Compute("sum(实付金额)","订砖单号 = \'" & Tables("客户订砖总表").Current("订砖单号") & "\'") 建议花时间好好看看【开发指南】
|
||||
-- 作者:outcat -- 发布时间:2018/4/3 22:46:00 -- 哦,多谢老师了,原来是是这里的问题,是呀,后面我会好好看看 开发指南的 |