Foxtable(狐表)用户栏目专家坐堂 → 动态增加表,能不能增加表达式啊?


  共有5970人关注过本帖平板打印复制链接

主题:动态增加表,能不能增加表达式啊?

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/2/17 17:32:00 [只看该作者]

可以增加表达式列,首先你增加的表名,最好用约定的字符开头或结尾:然后在AfterOpenProject事件中加上代码

 

For Eah dt As DataTable in DataTables

   if dt.Name.StartsWith(“约定的表名开头字符") Then

       dt.DataCols.Add(....)

   End if

Next

 

更好的办法是,另外建立一个表,四列: 表名、列名、数据类型,表达式,将用户新增的表达式列信息保存在这个表中,然后在AfterOpenProject事件中加上代码:

 

For each dr As Datarow in DataTables("表名").Datarows

    Select Case dr("类型")

          Case "整数"

                  DaaTables(dr("表名")).Add(dr("列名"),GetType(Integer),dr("表达式"))

          Case "小数"

                  DaaTables(dr("表名")).Add(dr("列名"),GetType(Double),dr("表达式"))

    End Select

Next

 

其实Foxtable自己的表达式列,就是这样处理的。

 

[此贴子已经被作者于2013-2-17 17:31:55编辑过]

 回到顶部