以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]整盘端上,求大红袍大神指导代码拼接思路  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=72250)

--  作者:everybody
--  发布时间:2015/7/26 23:24:00
--  [求助]整盘端上,求大红袍大神指导代码拼接思路
 
最新更新在12楼。。。。。。。。。。。。。。。。。。。》》》》12楼。。。。
 
 
求思路!

希望实现:
1、对当前表中数值型字段进行“文字化”;
2、“文字化”的逻辑为:
   如果大于零的,则为:“自定义文字”& 列值 &“自定义文字”,如第一列为:应到人数4人,第三列则为:发出票数4票
   如果等于零的,则不翻译.
3、每列进行“文字化”后,要根据指定顺序进行拼接,并将结果放在“备注”列中
4、这段代码,最好不是固化在当前表属性内的事件内,而是放在某个开放的字段中,如“测试”中,以便用户根据实际随时增删改字段和表述
4、“备注”字段更新时,如果非空的

为什么不能上附件了?
[此贴子已经被作者于2015/8/12 18:06:08编辑过]

--  作者:everybody
--  发布时间:2015/7/26 23:28:00
--  
求思路!

希望实现:
1、对当前表中数值型字段进行“文字化”;
2、“文字化”的逻辑为:
   如果大于零的,则为:“自定义文字”& 列值 &“自定义文字”,如第一列为:应到人数4人,第三列则为:发出票数4票
   如果等于零的,则不翻译.
3、每列进行“文字化”后,要根据指定顺序进行拼接,并将结果放在“备注”列中
4、这段代码,最好不是固化在当前表属性内的事件内,而是放在某个开放的字段中,如“测试”中,以便用户根据实际随时增删改字段和表述
4、“备注”字段更新时,如果非空的才能更新,否则不更新。

附件在三楼

另外请问,还有其他思路么?抑或是,把这个表导出到excel,用excel来判断生成?



此主题相关图片如下:qq截图20150726232406.png
按此在新窗口浏览图片


[此贴子已经被作者于2015/7/27 13:19:53编辑过]

--  作者:everybody
--  发布时间:2015/7/26 23:31:00
--  
这个是文件,

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


--  作者:大红袍
--  发布时间:2015/7/27 9:23:00
--  

mark

 

 

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


--  作者:everybody
--  发布时间:2015/7/27 13:19:00
--  

以下是大红袍大佬给出的思路,但读不通,执行起来貌似也有点问题啊


投票_DataColChanged


If e.DataCol.name <> "备注" Then  \'如果不是备注字段

    Dim s As String = e.DataRow("测试")   \'定义s

    Dim mc = System.Text.RegularExpressions.Regex.Matches(s, "\\[.*?\\]")  \'定义mc,这句怎么理解?

    For i As Integer = 0 To mc.count - 1

        s = s.Replace(mc(i).Value, e.DataRow(mc(i).Value.Substring(1,mc(i).Value.length-2)))

    Next

    e.DataRow("备注") = s

End If


-----------希望能实现


1、对当前表中数值型字段进行“文字化”。“文字化”的逻辑为:
   如果大于零的,则为:“自定义文字”& 列值 &“自定义文字”,如第一列为:应到人数4人,第三列则为:发出票数4票。(这个要实现“自定义文字”,因为具体表述不一样,大红袍大佬的貌似都是截取前几个字)
   如果等于零的,则不翻译.
3、每列进行“文字化”后,要根据指定顺序进行拼接,并将结果放在“备注”列中
4、这段代码,最好不是固化在当前表属性内的事件内,而是放在某个开放的字段中,如“测试”中,以便用户根据实际随时增删改字段和表述
4、“备注”字段更新时,如果非空的才能更新,否则不更新。
[此贴子已经被作者于2015/7/27 13:24:09编辑过]

--  作者:大红袍
--  发布时间:2015/7/27 14:08:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2 (1).foxdb


--  作者:everybody
--  发布时间:2015/7/27 15:08:00
--  
谢啦!!!
--  作者:everybody
--  发布时间:2015/7/31 22:49:00
--  
继续提问,上面大红包老师已经解决了问题,现在得寸进尺:

如何修改代码,在子表中引用父表的字段呢?



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

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

 

 

 

试过了:

 

应到[Parent.应到人数]人,实到[Parent.实到人数]人,发出[发出票数]票。

 

这样是不行的

[此贴子已经被作者于2015/7/31 22:53:25编辑过]

--  作者:有点蓝
--  发布时间:2015/7/31 22:51:00
--  
http://www.foxtable.com/help/index.html?n=0106.htm
--  作者:everybody
--  发布时间:2015/7/31 22:55:00
--  

试过了以下代码是不行的:

 

[Parent.类型],实到[实到人数]人,发出[发出票数]票。

 

 

注意:代码写在表的单元格里,不是在表属性里面

[此贴子已经被作者于2015/7/31 22:55:32编辑过]