以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请帮助写一下代码? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=44997) |
-- 作者:lyfxybc -- 发布时间:2014/1/13 15:17:00 -- 请帮助写一下代码? 如下代码:白毛档、边道印、刺坏三个是已知的,可以写成下列代码 Dim Z As DataRow = e.DataRow Z("其他") = Z("白毛档")+Z("边道印")+Z("刺坏) End Select
当新出现的问题(无法预知),问题不一定几个,如何用代码表示 就是新出现的问题也累计后给“其他”。 如:生产中无意出现了一个“黑点” Dim Z As DataRow = e.DataRow Z("其他") = Z("白毛档")+Z("边道印")+Z("刺坏) case “” Z(“其他”)=?? End Select |
-- 作者:狐狸爸爸 -- 发布时间:2014/1/13 15:36:00 -- Dim Z As DataRow = e.DataRow Z("其他") = Z("白毛档")+Z("边道印")+Z("刺坏) case else Z(“其他”)=?? End Select
http://www.foxtable.com/help/topics/0224.htm
|
-- 作者:y2287958 -- 发布时间:2014/1/13 16:14:00 -- 俺是未看懂楼主所表达的意思 |
-- 作者:lyfxybc -- 发布时间:2014/1/13 16:22:00 -- 假设项目已经发布,就写了三个问题"白毛档","边道印","刺坏",那么当在生产过程中可能出现我们不知道的问题,(不是上面三个了),这时操作工输入在问题列里,那如何把新出现的而在项目中未列入的如何计算。加一段代码,来判断新加入的不是上面三个,在累计。
Dim Z As DataRow = e.DataRow Z("其他") = Z("白毛档")+Z("边道印")+Z("刺坏) End Select |
-- 作者:Bin -- 发布时间:2014/1/13 16:25:00 -- 还是没太看懂你的意思? 你的意思是运行过程中会动态增加列? 自动计算多出来的列? |
-- 作者:lyfxybc -- 发布时间:2014/1/13 16:33:00 -- 就是这个意思 |
-- 作者:Bin -- 发布时间:2014/1/13 16:44:00 -- 那你还Select Case有何意义? 直接循环所有列相加不就完了? Dim Z As DataRow = e.DataRow for each c as col in tables("表A").cols if c.name <> "其它" then z("其它")=z("其它")+z(c.name) end if next |
-- 作者:lyfxybc -- 发布时间:2014/1/13 16:49:00 -- 谢谢 |
-- 作者:包头123 -- 发布时间:2014/1/14 11:12:00 -- 好像有点复杂说的。 |