Foxtable(狐表)用户栏目专家坐堂 → 求助:工程计算式中,统计得出合价,单价如何根据合价与工程量反算得出单价?


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

主题:求助:工程计算式中,统计得出合价,单价如何根据合价与工程量反算得出单价?

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


加好友 发短信
等级:童狐 帖子:258 积分:1863 威望:0 精华:0 注册:2014/7/11 12:44:00
求助:工程计算式中,统计得出合价,单价如何根据合价与工程量反算得出单价?  发帖心情 Post By:2022/6/8 11:29:00 [只看该作者]

求助:
第1个问题:
工程计算式中,统计得出合价,单价如何根据合价与工程量反算得出单价?


图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看



第2个问题:
另:  新建行 能不能指定行的类型,

层级列             类型列

1                   部
 1.1               分部
 1.1.1            子目
2                   部
 2.1               分部
 2.1.1            子目



第3个问题:
折叠模式下,如果某一行有子行,那就禁止删除此行,但用下面代码,带子行的行还是给删除了,子行却保留了呢?

im cr As Row = Tables("物料清单A").Current
If  Tables("物料清单A").GridTreeVisible Then
    If cr.HasChild()  Then
        MessageBox.show("此行有子行,无法删除!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)   
        Return
    End If
End If
cr.Delete()


在表事件中能设置吗?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:87724 积分:445175 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/6/8 11:42:00 [只看该作者]

1、目前只能汇总,无法计算

2、在折叠模式下新增即可:http://www.foxtable.com/webhelp/topics/3721.htm

3、我测试没有问题

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


加好友 发短信
等级:管理员 帖子:47412 积分:250591 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2022/6/8 11:43:00 [只看该作者]

第一个问题,可以考虑DrawCell事件,代码:

If e.Col.Name = "单价" Then
    e.Text = e.Row.GetValue("金额") / e.Row.GetValue("数量")
End If

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


加好友 发短信
等级:童狐 帖子:258 积分:1863 威望:0 精华:0 注册:2014/7/11 12:44:00
  发帖心情 Post By:2022/6/8 11:45:00 [只看该作者]

谢谢

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


加好友 发短信
等级:童狐 帖子:258 积分:1863 威望:0 精华:0 注册:2014/7/11 12:44:00
  发帖心情 Post By:2022/6/8 12:08:00 [只看该作者]

以下是引用狐狸爸爸在2022/6/8 11:43:00的发言:
第一个问题,可以考虑DrawCell事件,代码:

If e.Col.Name = "单价" Then
    e.Text = e.Row.GetValue("金额") / e.Row.GetValue("数量")
End If



'调用的目标发生了异常。
'没有为 类型“Double” 和 类型“DBNull” 定义运算符“ / ”。



 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:87724 积分:445175 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/6/8 12:11:00 [只看该作者]

判断一下金额和数量是否有值,再计算

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


加好友 发短信
等级:管理员 帖子:47412 积分:250591 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2022/6/8 15:19:00 [只看该作者]

可以直接用的代码:

If e.Row.Hierarchy >= 0 AndAlso e.Col.Name = "单价" Then
    If e.Row.GetValue("金额") IsNot dbnull.Value AndAlso e.Row.GetValue("数量") IsNot dbnull.value Then
        e.Text = e.Row.GetValue("金额") / e.Row.GetValue("数量") 
    End If 
End If

 回到顶部
帅哥哟,离线,有人找我吗?
建筑人生
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:246 积分:2240 威望:0 精华:0 注册:2014/8/20 20:14:00
  发帖心情 Post By:2022/6/10 9:59:00 [只看该作者]

可以增加一列合价还是单价,如果合价就反算,单价就正算


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


加好友 发短信
等级:童狐 帖子:258 积分:1863 威望:0 精华:0 注册:2014/7/11 12:44:00
  发帖心情 Post By:2022/6/23 18:36:00 [只看该作者]

以下是引用狐狸爸爸在2022/6/8 15:19:00的发言:
可以直接用的代码:

If e.Row.Hierarchy >= 0 AndAlso e.Col.Name = "单价" Then
    If e.Row.GetValue("金额") IsNot dbnull.Value AndAlso e.Row.GetValue("数量") IsNot dbnull.value Then
        e.Text = e.Row.GetValue("金额") / e.Row.GetValue("数量") 
    End If 
End If

列本身是表达式列,属性设置了为2位小数,这样代码后的列小数位就不固定了??


 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:87724 积分:445175 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/6/23 20:17:00 [只看该作者]

e.Text = round(e.Row.GetValue("金额") / e.Row.GetValue("数量") ,2)


 回到顶部