以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  甘特图可以根据主表和明细生成?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194689)

--  作者:lgz518
--  发布时间:2025/1/6 9:41:00
--  甘特图可以根据主表和明细生成?
甘特图可以根据主表和明细生成?如何用代码实现?

图片点击可在新窗口打开查看此主题相关图片如下:屏幕截图 2025-01-06 093824.jpg
图片点击可在新窗口打开查看



--  作者:有点蓝
--  发布时间:2025/1/6 9:44:00
--  
把2个表数据合并为一个表才可以
--  作者:lgz518
--  发布时间:2025/1/6 11:12:00
--  
Functions.Execute("BuildGanttTable")
With Tables("窗口2_Table2").Grid
    .FocusRect = C1.Win.C1FlexGrid.FocusRectEnum.None \'不显示焦点框
    .HighLight = C1.Win.C1FlexGrid.HighLightEnum.Never \'不高亮显示选定区
    .SelectionMode = C1.Win.C1FlexGrid.SelectionModeEnum.Cell \'每次只显示一个单元格
End With
甘特图中星期,计划数,完成数,如何生成,,具体代码如何写?如下图


图片点击可在新窗口打开查看此主题相关图片如下:甘特图.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2025/1/6 11:11:57编辑过]

--  作者:有点蓝
--  发布时间:2025/1/6 11:13:00
--  
请上传实例说明
--  作者:lgz518
--  发布时间:2025/1/6 11:51:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编码绘制甘特图-红 - 副本.zip


--  作者:有点蓝
--  发布时间:2025/1/6 13:42:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编码绘制甘特图-红 - 副本.zip


--  作者:lgz518
--  发布时间:2025/1/6 13:57:00
--  
过期升级不了,请老师贴代码,谢谢
--  作者:listfor
--  发布时间:2025/1/6 14:40:00
--  
不同版本的不让打开 这个真是一个弊端
--  作者:lgz518
--  发布时间:2025/1/6 17:33:00
--  
请有最新版大神,帮转6楼的实例为2022版,谢谢
--  作者:有点蓝
--  发布时间:2025/1/6 17:40:00
--  
Dim tbl As Table = Tables("表A")

Dim StartDate As Date = tbl.Compute("Min(日期)", "日期 IS NOT NULL")
Dim EndDate As Date = tbl.Compute("Max(日期)", "日期 IS NOT NULL")
Dim dt As Date = StartDate
Dim ss() As String = {"星期天", "星期一", "星期2", "星期3", "星期4", "星期5", "星期6"}
Dim Builder As New DataTableBuilder("统计")
Builder.Adddef("项目", GetType(String), 16)
Do
    Dim nm As String = dt.Year & "年_" & dt.Month & "月_" & dt.Day & "_" & ss(dt.DayOfWeek)
    Builder.Adddef(nm & "_计划", GetType(Integer))
    Builder.Adddef(nm & "_完成", GetType(Integer))
    dt = dt.Adddays(1)
    If dt > Enddate Then
        Exit Do
    End If
Loop
Tables("窗口2_Table2").DataSource = Builder.buildDataSource

Dim r As Row
For Each a As String In tbl.DataTable.GetValues("项目")
    r = Tables("窗口2_Table2").AddNew
    r("项目") = a
    For Each dr As DataRow In tbl.DataTable.Select("项目=\'" & a & "\'")
        dt = dr("日期")
        r(dt.Year & "年_" & dt.Month & "月_" & dt.Day & "_" & ss(dt.DayOfWeek)& "_计划") = dr("计划数")
    Next 
Next