Foxtable(狐表)用户栏目专家坐堂 → [求助]动态创建表结构后,能否设置列的扩展类型


  共有3827人关注过本帖树形打印复制链接

主题:[求助]动态创建表结构后,能否设置列的扩展类型

帅哥哟,离线,有人找我吗?
天一生水
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1141 积分:11272 威望:0 精华:0 注册:2017/9/26 16:30:00
[求助]动态创建表结构后,能否设置列的扩展类型  发帖心情 Post By:2019/12/8 16:07:00 [只看该作者]

老师好!
发布后的程序,可以创建表,设置列类型;但设置的列扩展类型(图片、文件、多值字段等),重启项目后就丢失了。
是不是这样的,不允许这样操作?
谢谢!


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111421 积分:567181 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/12/8 21:44:00 [只看该作者]

动态创建的表需要动态设置扩展列类型:http://www.foxtable.com/webhelp/topics/1656.htm

 回到顶部
帅哥哟,离线,有人找我吗?
天一生水
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1141 积分:11272 威望:0 精华:0 注册:2017/9/26 16:30:00
  发帖心情 Post By:2019/12/8 22:07:00 [只看该作者]

我是按老师说的这样做的,代码如下,重启项目后,[备注]列单元格中的按钮就没有了。

图片点击可在新窗口打开查看此主题相关图片如下:截屏图片 (2).jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试动态扩展列.table



'1、创建表
Dim Builder As New ADOXBuilder    
Dim tbl As ADOXTable
Builder.Open() 
tbl = Builder.NewTable("订单") '创建表
With tbl
    .AddColumn("日期" ,ADOXType.DateTime)
    .AddColumn("产品" ,ADOXType.String, 12)
    .AddColumn("客户" ,ADOXType.String, 20)
    .AddColumn("数量" ,ADOXType.Integer)
    .AddColumn("备注" ,ADOXType.Text)
End With
Builder.AddTable(tbl) '增加表
Builder.Close()
DataTables.load("订单")
MainTable = Tables("订单")

'2、设置扩展列为图片列
DataTables("订单").DataCols("备注").ExtendType = ExtendTypeEnum.Images 

'3、添加一行数据
Syscmd.Row.AddNew

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111421 积分:567181 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/12/8 23:07:00 [只看该作者]

方法1、afteropenproject事件
If DataTables.Contains("订单") Then
    DataTables("订单").DataCols("备注").ExtendType = ExtendTypeEnum.Images
End If
2、重启后到列属性里重新设置

 回到顶部
帅哥哟,离线,有人找我吗?
天一生水
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1141 积分:11272 威望:0 精华:0 注册:2017/9/26 16:30:00
  发帖心情 Post By:2019/12/9 8:36:00 [只看该作者]

老师好!

但是这两种方法都不能在发布好的客户端实现。

第二种方法中,重启后,鼠标右键点击表标题,弹出表标题菜单,除了“列属性”不能用以外,其他的均可使用。

不应该是限制了吧?客户录入数据的时候非常需要,但开发者开发时却不一定设置。

 


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

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111421 积分:567181 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/12/9 9:20:00 [只看该作者]

建表本来就应该是开发人员的工作。如果都留给用户自己建表肯定是有一些问题的。比如没有表事件,没有表属性、列属性可以设置。并且各种代码设置表属性后,重启项目后都必须重新使用代码设置才能使用的

这种动态创建的表建议都放到窗口表里使用,需要的使用调用一下类似4楼的代码给表设置各种属性。

 回到顶部