以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- Fill在新版中改了什么?现在不正常了! (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=17285) |
-- 作者:reachtone -- 发布时间:2012/3/8 22:05:00 -- Fill在新版中改了什么?现在不正常了! 项目中之前有这样的应用:
先在窗口中的Table,按A部门的客户名称进行分组统计,类似于:Tables("表名").Fill("select 部门,客户名称 from....") 然后再用sqlcommand生成B部门的统计,以循环方式逐行将统计结果添加到Tables("表名")中. 如此,再生成C部门\\D部门......同样方式都逐行添加到Tables("表名")中。
以前都是正常的,新版出现问题了:如果A部门统计的客户名称长度较短,而B部门统计的客户名称长度较长,则在逐行添加的时候会提示:
假如数据库中的客户名称列宽度是40,生成的Table列宽度应该也和它一致才对啊。 |
-- 作者:狐狸爸爸 -- 发布时间:2012/3/8 22:29:00 -- 这方面没有任何变动的,唯一变动的是DAtaRowAdding中设置列的值,不再触发DataColChanging和DataColChanged事件,不过发现带来很多副作用,所以晚上改回来了,你重新下载看看。 |
-- 作者:程兴刚 -- 发布时间:2012/3/8 22:48:00 -- 贺老师,是不是在执行fill的同时根据A部门指定了字符型列“客户名称”的最大长度,当B部门的客户名称长度大于A部门的客户名称长度时,在输入客户名称内容时被自动截取了,foxtable的核心代码是否是应该在执行后面的sqlcommand的过程中,自动判断字符型列的长度、数字型列的数据类型和小数位数,在该列对应的这些属性不符合sqlcommand需要时,自动动态修改这些对应的列属性为所需长度、数值类型及小数位数来避免(也就是智能调整这些对应的、影响后面数据填充的列属性以满足需要) |
-- 作者:reachtone -- 发布时间:2012/3/8 23:13:00 -- 其实只要根据统计的基础表,自动保持Table中分组列的宽度和原来相同就可以了。 等更新后再下载看看。 |
-- 作者:程兴刚 -- 发布时间:2012/3/9 0:06:00 -- 要考虑来源表还有没有多表的问题! |