以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]Fill时表达式列需要Fill两次才出来? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=95602) |
-- 作者:ADRX -- 发布时间:2017/1/25 1:22:00 -- [求助]Fill时表达式列需要Fill两次才出来? 各位大大,我有几个表,表A1里有几个表达式列,是通过表达式从子表A2里获得的,而且读取的也是表A2里的表达式列,表B1和表B2也是如此,然后通过Fill方法把表A1和B1填充到表C,问题是第一次填充时表C里那几列是空的,要再填充一次才可以,这是为什么呢? |
-- 作者:有点蓝 -- 发布时间:2017/1/25 9:03:00 -- 上个例子看看 |
-- 作者:有点蓝 -- 发布时间:2017/1/25 9:48:00 -- 测试 一下,没发现这个问题。截图表结构和fill代码发上来看看 |
-- 作者:ADRX -- 发布时间:2017/1/26 2:03:00 -- 您好,这是代码,图片不知道为什么,不能上传,是我等级未够么? Sub Read_XS() Dim SDate,EDate,MDCK,Filter As String SDate = RibbonTabs("CashSys")("QDate")("SDate").Value EDate = RibbonTabs("CashSys")("QDate")("EDate").Value If SDate = "" Then SDate = Date.Now.Date() End If If EDate = "" Then EDate = SDate End If SDate = CDate(SDate & " 00:00:00") EDate = CDate(EDate & " 23:59:59") MDCK = RibbonTabs("CashSys")("QPara")("MDCK").Text.Trim() If MDCK = "选择门店" Then MessageBox.Show("请选择门店!","注意",MessageBoxButtons.OK,MessageBoxIcon.Information) Exit Sub End If Filter = "SH = \'T\' And RQ >= \'" & SDate & "\' And RQ <= \'" & EDate & "\'And BMMC=\'" & MDCK & "\'" DataTables("XSD_ZB").LoadFilter = Filter DataTables("XSD_ZB").Load() DataTables("XTD_ZB").LoadFilter = Filter DataTables("XTD_ZB").Load() \'Exit Sub MainTable = Tables("XSTJ") DataTables("XSTJ").StopRedraw DataTables("XSTJ").DataRows.Clear() Dim f As New Filler f.SourceTable = DataTables("XSD_ZB") \'指定数据来源 f.SourceCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据来源列 f.DataTable = DataTables("XSTJ") \'指定数据接收表 f.DataCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据接收列 f.Fill() \'填充数据 f.SourceTable = DataTables("XTD_ZB") \'指定数据来源 f.SourceCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据来源列 f.DataTable = DataTables("XSTJ") \'指定数据接收表 f.DataCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据接收列 f.Fill() \'填充数据 Tables("XSTJ").Sort = "RQ" DataTables("XSTJ").ResumeRedraw End Sub |
-- 作者:ADRX -- 发布时间:2017/1/26 3:00:00 -- 您好,我又测试了一下,我有个按钮,Click后是调用这个Read_XS()的全局代码,我设置成调用两次都没用,非得点两次按钮才行,晕呀。。。。这是怎么回事呢? |
-- 作者:有点蓝 -- 发布时间:2017/1/26 15:26:00 -- 试试 Dim f As New Filler f.SourceTable = DataTables("XSD_ZB") \'指定数据来源 f.SourceCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据来源列 f.DataTable = DataTables("XSTJ") \'指定数据接收表 f.DataCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据接收列 f.Fill() \'填充数据 f = New Filler f.SourceTable = DataTables("XTD_ZB") \'指定数据来源 f.SourceCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据来源列 f.DataTable = DataTables("XSTJ") \'指定数据接收表 f.DataCols = "ID,RQ,DWBM,DWMC,BMMC,JBRMC,ZDR,SHR,ZDZK,ZSL,ZJE,TJE,WJS,ZZK,ZCB,ZML,MLL,BZ,SS,XJ,SK,CK,WX,ZFB" \'指定数据接收列 f.Fill() \'填充数据 |
-- 作者:ADRX -- 发布时间:2017/1/27 1:32:00 -- 还是一样,没用哦。。。 |
-- 作者:有点色 -- 发布时间:2017/2/2 10:43:00 -- 做个实例发上来测试下。 |