以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码转换 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=26157) |
-- 作者:老有所乐 -- 发布时间:2012/11/26 10:29:00 -- 代码转换 请教,任何将下面代码转换成按钮代码。谢谢! \'在"银行存款"表中用现金存入银行的数据自动填入到"现金表"中 Select Case e.DataCol.Name Case "资金来源" \' 如果变动的是"资金来源"列 If e.DataRow.IsNull("资金来源") = False Then \' 如果变动的是"资金来源"列值不为空 If e.DataRow("资金来源") = "现金" Then \' 如果变动的是"资金来源"列值为"现金" Dim dr As DataRow = DataTables("现金表").AddNew() \'在现金表中增加一行 dr("日期") = e.DataRow("日期") \'现金表日期列值等于当前表的日期值 dr("收支") ="支" \'现金表收支列值等于"支" dr("分类") ="【其他去向】" \'现金表分类列值等于"【其他去向】" dr("收支项目") ="转存" \'现金表收支项目列值等于"转存" dr("摘要说明")="存入" & e.DataRow("银行") \'在存入银行前加上"存入"二字,此行代码的存入后后可以"&"也可用"+"号" dr("金额")= e.DataRow("存入金额")*-1 \'*-1是为了使现金表金额列成为负数..即作为支出 End If End If End Select
|
-- 作者:lin_hailun -- 发布时间:2012/11/26 10:38:00 -- 什么意思,是想表中的所有行都填入吗? |
-- 作者:老有所乐 -- 发布时间:2012/11/26 10:43:00 -- 不是,仅此选择行一行,即【资金来源】列(仅两个值:现金、转存)为选择到的一行为现金的行 仅填入一次不能重复填入
[此贴子已经被作者于2012-11-26 10:45:21编辑过]
|
-- 作者:lin_hailun -- 发布时间:2012/11/26 10:48:00 -- Dim r As Row = Tables("XXX").Current If r.DataRow.IsNull("资金来源") = False Then \' 如果变动的是"资金来源"列值不为空 If r("资金来源") = "现金" Then \' 如果变动的是"资金来源"列值为"现金" Dim dr As DataRow = DataTables("现金表").AddNew() \'在现金表中增加一行 dr("日期") = r("日期") \'现金表日期列值等于当前表的日期值 dr("收支") ="支" \'现金表收支列值等于"支" dr("分类") ="【其他去向】" \'现金表分类列值等于"【其他去向】" dr("收支项目") ="转存" \'现金表收支项目列值等于"转存" dr("摘要说明")="存入" & r("银行") \'在存入银行前加上"存入"二字,此行代码的存入后后可以"&"也可用"+"号" dr("金额")= r("存入金额")*-1 \'*-1是为了使现金表金额列成为负数..即作为支出 End If End If 禁止重复,可以参考 http://www.foxtable.com/help/topics/2481.htm [此贴子已经被作者于2012-11-26 10:50:15编辑过]
|
-- 作者:老有所乐 -- 发布时间:2012/11/26 11:09:00 -- 谢谢林老师 |