Foxtable(狐表)用户栏目专家坐堂 → [求助]组合后提示列“_销售”不属于表


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

主题:[求助]组合后提示列“_销售”不属于表

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


加好友 发短信
等级:六尾狐 帖子:1310 积分:10133 威望:0 精华:0 注册:2013/11/8 15:27:00
[求助]组合后提示列“_销售”不属于表  发帖心情 Post By:2020/10/30 12:20:00 [只看该作者]

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

麻烦将代码直接贴这里,版本低打不开

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


加好友 发短信
等级:超级版主 帖子:107718 积分:547917 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/30 13:37:00 [只看该作者]

到命令窗口执行代码

……
dt2.Combine("总公司",dt,"总公司")  '将销售统计数据组合到进货统计数据
dt2.show("统计表2")

然后打开表结构查看真正的列名

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


加好友 发短信
等级:六尾狐 帖子:1310 积分:10133 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2020/10/30 16:32:00 [只看该作者]

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

还有点小问题,麻烦看下


[此贴子已经被作者于2020/10/30 17:39:46编辑过]

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


加好友 发短信
等级:超级版主 帖子:107718 积分:547917 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/31 9:15:00 [只看该作者]

……
Tables("窗口1_Table1").DataSource = dt2 '将统计结果绑定到Table
Dim t As Table = Tables("窗口1_Table1")
Dim prds As List(of String()) = DataTables("表A").GetValues("事业部|金额")
For Each c1 As String() In prds
    't.DataTable.DataCols.Add(c1 & "_销售",Gettype(Double))
    For Each c As Col In t.Cols
        If c.Caption = c1(0) & "_销售"
            t.DataTable.ReplaceFor(c.Name,c1(1))
            Exit For
        End If
    Next
Next

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


加好友 发短信
等级:六尾狐 帖子:1310 积分:10133 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2020/10/31 19:46:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目1.foxdb

用msgbox("金额_" & (i*10+11))、msgbox("金额_" & (i+1))显示列名都是对的,为什么“费用占比”算出来是0呢
[此贴子已经被作者于2020/10/31 19:48:10编辑过]

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


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

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


 回到顶部
帅哥哟,离线,有人找我吗?
lgj716330
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1310 积分:10133 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2020/11/2 9:03:00 [只看该作者]

有点蓝老师,把代码贴一下不,版本低打不开,谢谢

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


加好友 发短信
等级:超级版主 帖子:107718 积分:547917 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/2 10:00:00 [只看该作者]

Dim t As Table = Tables("窗口1_Table1")
Dim Dict As new Dictionary(of String,String)
For Each c As Col In t.Cols
    If c.Caption > "" Then
        dict.Add(c.Caption,c.Name)
    End If
Next

Dim prds As List(of String()) = DataTables("表A").GetValues("金额|事业部")
For Each c1 As String() In prds
    If dict.ContainsKey("销售_" & c1(1))
        t.DataTable.ReplaceFor(dict("销售_" & c1(1)),c1(0))
        For Each r As Row In t.Rows
            r("费用占比_" & c1(1)) = r(dict("费用_" & c1(1)))/r(dict("销售_" & c1(1)))
        Next
    End If
Next

 回到顶部