以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]数组的疑惑 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=701) |
||||
-- 作者:jweishan -- 发布时间:2008/9/26 0:17:00 -- [求助]数组的疑惑 我这有个简化了的表,其中“成本名称”列是从其它表填充过来的数据,我想利用此列自动生成:“成本项目”、“一级明细”、“二级明细”、“三级明细”,所以我在成本项目列设置了计算代码,出现问题如下: 1、重算列出现提示,大意是说数组越界,按回车键仍可计算出来。 2、其中有3行不能计算。 计算代码我检查了好几遍,好像没错误,百思不得其解,请高手帮我看看,谢谢了!
Dim mc As String = e.datarow("成本名称") Dim Values as String() Dim n as Integer if mc.indexof("-") <> -1 then Values = mc.split("-") n = Values.length Select Case n Case 1 e.datarow("成本项目") = Values(0) e.datarow("一级明细") = Values(1) Case 2 e.datarow("成本项目") = Values(0) e.datarow("一级明细") = Values(1) e.datarow("二级明细") = Values(2) Case 3 e.datarow("成本项目") = Values(0) e.datarow("一级明细") = Values(1) e.datarow("二级明细") = Values(2) e.datarow("三级明细") = Values(3) End Select else e.datarow("成本项目") = e.datarow("成本名称") end if |
||||
-- 作者:程兴刚 -- 发布时间:2008/9/26 1:36:00 -- 这里改一下就ok: |
||||
-- 作者:jweishan -- 发布时间:2008/9/26 9:00:00 -- 谢谢!明白了! |
||||
-- 作者:blackzhu -- 发布时间:2008/9/26 20:29:00 -- 以下是引用jweishan在2008-9-26 0:17:00的发言:
我这有个简化了的表,其中“成本名称”列是从其它表填充过来的数据,我想利用此列自动生成:“成本项目”、“一级明细”、“二级明细”、“三级明细”,所以我在成本项目列设置了计算代码,出现问题如下: 1、重算列出现提示,大意是说数组越界,按回车键仍可计算出来。 2、其中有3行不能计算。 计算代码我检查了好几遍,好像没错误,百思不得其解,请高手帮我看看,谢谢了!
Dim mc As String = e.datarow("成本名称") Dim Values as String() Dim n as Integer if mc.indexof("-") <> -1 then Values = mc.split("-") n = Values.length Select Case n Case 1 e.datarow("成本项目") = Values(0) e.datarow("一级明细") = Values(1) Case 2 e.datarow("成本项目") = Values(0) e.datarow("一级明细") = Values(1) e.datarow("二级明细") = Values(2) Case 3 e.datarow("成本项目") = Values(0) e.datarow("一级明细") = Values(1) e.datarow("二级明细") = Values(2) e.datarow("三级明细") = Values(3) End Select else e.datarow("成本项目") = e.datarow("成本名称") end if 唉,代码太烦了关键灵活应用不行。 |
||||
-- 作者:jweishan -- 发布时间:2008/9/27 0:08:00 -- 烦是烦一点,但也有好处,灵活、强大! |