以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如果库存表里面有产品名称 颜色字段,如何将颜色作为字段标题显示  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=83136)

--  作者:jswjyjf
--  发布时间:2016/4/1 11:15:00
--  如果库存表里面有产品名称 颜色字段,如何将颜色作为字段标题显示
如果库存表里面有产品名称 颜色字段,如何将颜色作为字段标题
--  作者:大红袍
--  发布时间:2016/4/1 11:23:00
--  
 哪里的字段标题?具体例子上传。
--  作者:jswjyjf
--  发布时间:2016/4/1 14:03:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目14.foxdb


要求仓库变成字段

--  作者:大红袍
--  发布时间:2016/4/1 14:15:00
--  

 没看到你什么意思,你是要设置单元格的颜色?

 

http://www.foxtable.com/help/topics/0656.htm

 


--  作者:jswjyjf
--  发布时间:2016/4/1 14:17:00
--  
不是这个意思  要求仓库横向显示
--  作者:大红袍
--  发布时间:2016/4/1 14:52:00
--  

参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=68546&skin=0

 


--  作者:大红袍
--  发布时间:2016/4/1 15:01:00
--  

Dim dt As DataTable = DataTables("期初表")
Dim dtb As New DataTableBuilder("水平表")
dtb.AddDef("名称", Gettype(String), 32)
dtb.AddDef("颜色", Gettype(String), 32)

For Each v As String In dt.GetValues("仓库")
    dtb.AddDef(v & "_数量", Gettype(Double))
    dtb.AddDef(v & "_单价", Gettype(Double))
    dtb.AddDef(v & "_金额", Gettype(Double))
Next
dtb.Build()
For Each v As String() In dt.GetValues("名称|颜色")
    Dim dr1 As DataRow = DataTables("水平表").AddNew()
    dr1("名称") = v(0)
    dr1("颜色") = v(1)
    For Each dr2 As DataRow In dt.Select("名称+颜色 = \'" & v(0) & v(1) & "\'")
        dr1(dr2("仓库") & "_数量") = dr2("数量")
        dr1(dr2("仓库") & "_单价") = dr2("单价")
        dr1(dr2("仓库") & "_金额") = dr2("金额")
    Next
Next
MainTable = Tables("表B")


 


--  作者:jswjyjf
--  发布时间:2016/4/1 15:22:00
--  
嗯 万分感谢 可不可以右边加个合计数量 合计金额


--  作者:大红袍
--  发布时间:2016/4/1 15:24:00
--  

 你为什么不直接用交叉统计?

 

http://www.foxtable.com/help/topics/0165.htm

 


--  作者:大红袍
--  发布时间:2016/4/1 15:29:00
--  
Dim dt As DataTable = DataTables("期初表")
Dim dtb As New DataTableBuilder("水平表")
dtb.AddDef("名称", Gettype(String), 32)
dtb.AddDef("颜色", Gettype(String), 32)
Dim s1 As String = ""
Dim s2 As String = ""
For Each v As String In dt.GetValues("仓库")
    dtb.AddDef(v & "_数量", Gettype(Double))
    dtb.AddDef(v & "_单价", Gettype(Double))
    dtb.AddDef(v & "_金额", Gettype(Double))
    s1 &= "isnull(" & v & "_数量" & ",0)+"
    s2 &= "isnull(" & v & "_金额" & ",0)+"
Next
dtb.AddDef("数量合计", Gettype(Double), s1.trim("+"))
dtb.AddDef("金额合计", Gettype(Double), s2.trim("+"))
dtb.Build()
For Each v As String() In dt.GetValues("名称|颜色")
    Dim dr1 As DataRow = DataTables("水平表").AddNew()
    dr1("名称") = v(0)
    dr1("颜色") = v(1)
    For Each dr2 As DataRow In dt.Select("名称+颜色 = \'" & v(0) & v(1) & "\'")
        dr1(dr2("仓库") & "_数量") += dr2("数量")
        dr1(dr2("仓库") & "_单价") += dr2("单价")
        dr1(dr2("仓库") & "_金额") += dr2("金额")
    Next
Next
MainTable = Tables("水平表")