以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 狐爸0225更新后的问题急求解 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=17253) |
||||
-- 作者:红叶 -- 发布时间:2012/3/8 11:22:00 -- 狐爸0225更新后的问题急求解 狐爸请检查0225更新后是不是有问题 之前发布的版本的项目能正常使用 用0225更新后的版本发布的项目出现问题 出现的问题现在还没有找到规律,有些代码出错或不运行。。。 版本检测
此主题相关图片如下:qq截图20120308113415.jpg [此贴子已经被作者于2012-3-8 14:30:36编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2012/3/8 12:01:00 -- 有个小调整,例如在DataRowAdding中设置列的值,不会触发DataColChanged事件。 例如: http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=17236&skin=0 |
||||
-- 作者:红叶 -- 发布时间:2012/3/8 12:42:00 -- 好象不仅仅是这个原因 采购订单明细 的DataColChanged代码也不执行 Dim dr As DataRow =e.DataRow Case "商品代码" If e.DataRow.IsNull("采购订单日期") = False Then End Select 这个采购订单明细的 采购订单日期 不是通过DataRowAdding设置的值,而是通过采购订单明细 的DataColChanged代码而来的 Case "采购订单编号" |
||||
-- 作者:狐狸爸爸 -- 发布时间:2012/3/8 12:44:00 -- 做个简单的例子发上来,说明一下你遇到的问题吧。 |
||||
-- 作者:红叶 -- 发布时间:2012/3/8 12:57:00 -- 还有这种和DataRowAdding和DataColChanged无关的原代码 比如DataColChanging代码 Select Case e.DataCol.Name Dim cmd11 As New SQLCommand Dim dr11 As DataRow=dt11.DataRows(0) If dr11("结存数量") < 1 then e.Cancel =True End Select 事实上 结存数量 不小于1 但总提示“结存数量小于1”?
[此贴子已经被作者于2012-3-8 12:57:54编辑过]
|
||||
-- 作者:红叶 -- 发布时间:2012/3/8 13:56:00 -- 好象找到原因了,问题出在关联子表新增行时关联列不触发DataColChanged事件,以前版本是可以的 出库明细表的DataColChanged事件为 Dim dr As DataRow =e.DataRow 如例在出库表中输入出库编号,仓库名称后,在出库明细表新增行后并未触发DataColChanged,出库明细表的仓库名称为空,所在再在商品代码中输入商品代码就出差错,怎么办呢?
[此贴子已经被作者于2012-3-8 14:33:47编辑过]
|
||||
-- 作者:红叶 -- 发布时间:2012/3/8 14:08:00 -- 急求解 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2012/3/8 14:36:00 -- 你6楼的文件,为我测试没有问题,我在出库明细表增加一行,输入出库编号,仓库名称能够自动出现啊。 |
||||
-- 作者:红叶 -- 发布时间:2012/3/8 14:42:00 -- 正如你说的:有个小调整,例如在DataRowAdding中设置列的值,不会触发DataColChanged事件。这种对于以前的代码依据DataRowAdding来触发DataColChanged事件,现在怎么办呢?现在关联表也出现这种问题了。现在想回到以前的版本都回不去了,有什么办法吗? |
||||
-- 作者:狐狸爸爸 -- 发布时间:2012/3/8 14:56:00 -- 你可以将代码一直到DataRowAdded事件中,如果不方便一直,也不用担心,明天重新下载一下,我也感觉这种变动代码的副作用太大,所以今晚改回来,重新上传一下算了。 |