以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 交叉统计表如何定义字体颜色 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=190515) |
-- 作者:18920118515 -- 发布时间:2024/2/19 11:02:00 -- 交叉统计表如何定义字体颜色 您好,老师,交叉统计出来的表,形成的列名,系统不能识别,请问如何对交叉统计表中的 “超期” 列定义字体颜色,代码如下: If e.Form.Controls("DateTimePicker1").value = Nothing Then MessageBox.Show("请先选择查询时间 !") e.Cancel = True Else If e.Form.Controls("TextBox1").value = Nothing Then MessageBox.Show("请先写入超期库存定义天数 !") e.Cancel = True Else StatusBar.Message1= "正在进行数据统计,请稍等!" StatusBar.Message3 = Date.Today & " " & User.Name StatusBar.Refresh() \'刷新状态栏 Dim d As Date = e.Form.Controls("DateTimePicker1").value Dim KCTS As Integer = e.Form.Controls("TextBox1").value \'取数 超期库存定义的天数 Dim y As Integer = d.Year Dim m As Integer = d.Month Dim Days As Integer = Date.DaysInMonth(y,m) Dim FD As Date = New Date(y,m,1) \'获得该月的第一天 Dim LD As Date = New Date(y,m,Days) \'获得该月的最后一天 Dim RKRQ As Date = FD.AddDays(-KCTS) \'定义超期库存的库存时间 Dim bd1 As New GroupTableBuilder("统计表1",DataTables("商品车库存基础表")) Dim dt1 As fxDataSource Bd1.Groups.AddDef("关联索引列",DateGroupEnum.Day.None) \'根据所属公司分组 Bd1.Groups.AddDef("车型") Bd1.Groups.AddDef("配置") Bd1.Groups.AddDef("市场指导价") Bd1.Groups.AddDef("外观颜色") Bd1.Groups.AddDef("内饰颜色") Bd1.Groups.AddDef("入库日期",DateGroupEnum.Day.None,"入库日期") Bd1.Groups.AddDef("车款支付方式","融资方式") Bd1.Groups.AddDef("进货类型") Bd1.Filter ="[已定] = False and [进货类型] <> \'大客户订单\'" dt1 = bd1.BuildDataSource() Tables("查询 日报表_Table8").DataSource = dt1 With DataTables("查询 日报表_Table8").DataCols \'用表达式列计算库存数据 .Add("颜色",Gettype(String), "Substring([外观颜色],len([外观颜色])-0,1)") .Add("判断",Gettype(String), "IIF([入库日期] Is null,\'在途\',IIF([入库日期] > #" & RKRQ & "# ,\'在库\',\'超期\'))") .Add("指导价",Gettype(String), "IsNull([市场指导价],0)/100") End With Dim g As New CrossTableBuilder("统计表2", DataTables("查询 日报表_Table8")) Dim gt As fxDataSource g.HGroups.AddDef("车型") g.HGroups.AddDef("配置") g.HGroups.AddDef("指导价") g.VGroups.AddDef("颜色") g.VGroups.AddDef("判断") g.Totals.AddDef("判断", AggregateEnum.Count, "判断") g.OrderByTotal = True g.HorizontalTotal = True g.VerticalTotal = True g.Decimals = 0 gt = g.BuildDataSource() Tables("查询 日报表_Table7").DataSource = gt Tables("查询 日报表_Table7").AutoSizeCols() \'自动设置所有列的宽度 Tables("查询 日报表_Table7").AutoSizeHeaderRow() Tables("查询 日报表_Table7").SetHeaderRowHeight(25) Tables("查询 日报表_Table7").DefaultRowHeight = 25 e.Form.Controls("Label1").text = "店端库存看板 超期库存定义\'" & KCTS & "\'天" Tables("查询 日报表_Table7").SetHeaderCellForeColor("超期",Color.Red,2) End If StatusBar.Message1= "就绪" StatusBar.Message3 = Date.Today & " " & User.Name StatusBar.Refresh() \'刷新状态栏 |
-- 作者:有点蓝 -- 发布时间:2024/2/19 11:13:00 -- 没看到有超期这个列,如果是单元格的值,到drawcell事件处理 |
-- 作者:18920118515 -- 发布时间:2024/2/19 11:21:00 -- 老师,“超期” 列是通过增加的 “判断” 列,通过交叉统计生成的,在这种情况下,通过代码能否设置字体颜色 With DataTables("查询 日报表_Table8").DataCols \'用表达式列计算库存数据 .Add("颜色",Gettype(String), "Substring([外观颜色],len([外观颜色])-0,1)") .Add("判断",Gettype(String), "IIF([入库日期] Is null,\'在途\',IIF([入库日期] > #" & RKRQ & "# ,\'在库\',\'超期\'))") .Add("指导价",Gettype(String), "IsNull([市场指导价],0)/100") End With
|
-- 作者:有点蓝 -- 发布时间:2024/2/19 11:23:00 -- 那列名是"判断"啊,单元格的值是\'超期\',只能到drawcell事件处理 |
-- 作者:18920118515 -- 发布时间:2024/2/19 11:23:00 -- 谢谢老师 |