Foxtable(狐表)用户栏目专家坐堂 → [求助]合计代码不执行,请教问题何在?


  共有12664人关注过本帖树形打印复制链接

主题:[求助]合计代码不执行,请教问题何在?

帅哥哟,离线,有人找我吗?
yanzhen2010
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
[求助]合计代码不执行,请教问题何在?  发帖心情 Post By:2011/8/15 13:37:00 [显示全部帖子]

Select Case e.DataCol.Name
    Case "数量","剂量"
        If e.DataRow("剂量") Is Nothing Then
            e.DataRow("合计") = e.DataRow("数量")*e.DataRow("单价")
        End If
        If e.DataRow("数量") Is Nothing Then
            e.DataRow("合计") = e.DataRow("剂量")*e.DataRow("单价")
        End If
End Select

 

上述代码为何不执行,望不吝赐教

 表datacolchanged事件

 

[此贴子已经被作者于2011-8-15 13:39:40编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
yanzhen2010
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/15 14:46:00 [显示全部帖子]

以下是引用狐狸爸爸在2011-8-15 13:50:00的发言:

Select Case e.DataCol.Name
    Case "数量","剂量","单价"
        If e.DataRow("剂量") Is Nothing Then
            e.DataRow("合计") = e.DataRow("数量") * e.DataRow("单价")
        ElseIf e.DataRow("数量") Is Nothing Then
            e.DataRow("合计") = e.DataRow("剂量") * e.DataRow("单价")
        End If
End Select

老师,代码依然不执行,真是怪事


 回到顶部
帅哥哟,离线,有人找我吗?
yanzhen2010
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/15 15:33:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:住院.rar

 

“临时医嘱”数据表

文件已上传,请老师过目。

实在看不出问题出在何处。

 

 

问题为解决,等待高手进入

[此贴子已经被作者于2011-8-15 16:50:27编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
yanzhen2010
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/15 17:43:00 [显示全部帖子]

以下是引用狐狸爸爸在2011-8-15 16:54:00的发言:

这样改一下:

 

Select Case e.DataCol.Name
    Case "数量","剂量","单价"
        If e.DataRow("剂量") IsNot Nothing Then
            e.DataRow("合计") = e.DataRow("剂量") * e.DataRow("单价")
        ElseIf e.DataRow("数量") IsNot Nothing Then
            e.DataRow("合计") = e.DataRow("数量") * e.DataRow("单价")
        End If
End Select

 

代码依然有问题,只有"剂量"列有数值时计算,"数量"列数值不计算


 回到顶部
帅哥哟,离线,有人找我吗?
yanzhen2010
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/15 18:54:00 [显示全部帖子]

朋友没有明白我的意思。但谢谢帮助。
我的意思是:"数量"和"剂量"只允许其中之一参与合计的计算。不能是
"数量"*"剂量*"单价"

 回到顶部
帅哥哟,离线,有人找我吗?
yanzhen2010
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/15 23:08:00 [显示全部帖子]

谢谢老总和朋友的不吝赐教和帮助,代码都正确。
这是我自己写的代码,也能用。
Select Case e.DataCol.Name
    Case "数量","单价"
        If e.DataRow("数量") IsNot Nothing Then
            e.DataRow("合计") = e.DataRow("数量") * e.DataRow("单价")
        End If
    Case "剂量","单价"
        If e.DataRow("剂量") IsNot Nothing Then          
            e.DataRow("合计") = e.DataRow("剂量") * e.DataRow("单价")
        End If
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
yanzhen2010
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/15 23:14:00 [显示全部帖子]

但是问题之解决了第一步,第二个问题是:
如果"数量"不等于空值,那么"剂量"禁止输入内容。
反之"剂量"不等于空值,那么"数量"禁止输入内容。
也就是"数量"和"剂量"列只允许其中之一列允许编辑,只要一列已经存在内容,另一列处于禁止编辑状态。

 回到顶部