以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  表达式需要修改,如何实现?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=90661)

--  作者:iresearchgame
--  发布时间:2016/9/19 14:38:00
--  表达式需要修改,如何实现?
大概是这样
采购单价和折扣
需要在报价单(表)里面修改,目前只能实现折扣是数据列,采购单价是表达式(数据列可添加,采购单价是表达式所以无法修改数据,只能跟着折扣列变化,我想两个都是表达式且还都可以修改!)
结果是只能在数据列的折扣里面修改,无法修改采购单价
我的需求是两个数据都可以修改,且:修改了折扣列,采购单价和其他列都相应的进行变化;修改了采购单价,折扣列和其他表达式列也进行相应的变化
如何实现?

--  作者:有点蓝
--  发布时间:2016/9/19 15:40:00
--  
表达式列无法修改内容,改了也没有用。

把表达式列改为数据列,用代码计算替代表达式

--  作者:iresearchgame
--  发布时间:2016/9/19 16:54:00
--  
收到
--  作者:iresearchgame
--  发布时间:2016/9/20 10:33:00
--  代码计算替代表达式 如何实现?
代码计算替代表达式 如何实现

什么意思?

--  作者:有点蓝
--  发布时间:2016/9/20 10:57:00
--  
参考:http://www.foxtable.com/webhelp/scr/0676.htm

不会就上传例子

--  作者:狐狸爸爸
--  发布时间:2016/9/20 11:48:00
--  

参考:

http://www.foxtable.com/webhelp/scr/1451.htm

 


--  作者:iresearchgame
--  发布时间:2016/9/21 17:19:00
--  再来!
大概的意思我知道了 但是废了半天劲 还是搞不定!
If e.DataCol.Name = "折扣" Then 
    e.DataRow("采购单价") = "面价 * 折扣"
END IF

我的逻辑是:
如果“折扣”有数据,采购单价=面价×折扣
如果“采购单价”有数据,折扣=面价/采购单价
判断如果为空,返回0
就是这个意思

做报价单 有时候考虑折扣额,有时候考虑优惠额度~

谢谢大大们,这解决了 就大吉了!


--  作者:狐狸爸爸
--  发布时间:2016/9/21 17:41:00
--  
If e.DataCol.Name = "折扣" AndAlso e.DataRow.Isnull("采购单价") Then
    e.DataRow("采购单价") =  e.DataRow("面价") * e.DataRow("折扣")
End If
If e.DataCol.Name = "采购单价" AndAlso e.DataRow.Isnull("折扣") Then
    e.DataRow("折扣") = e.DataRow("采购单价")/e.DataRow("面价")
End If

--  作者:iresearchgame
--  发布时间:2016/9/22 10:06:00
--  
不行啊~我把代码黏贴到了,表属性,事件,DataColChanged里面后无效
--  作者:狐狸爸爸
--  发布时间:2016/9/22 10:17:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目287.table

对于已经输入的数据,要重置一下:

http://www.foxtable.com/webhelp/scr/1469.htm