以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  web生成汇总模式问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=140578)

--  作者:qqhealth
--  发布时间:2019/9/9 12:27:00
--  web生成汇总模式问题
老师您好,参考帮助生成汇总模式出现两个问题,一是代码显示10行数据,浏览时出现两个相同的10行数据。二是汇总的数据仅是当前页数据,希望汇总同一天(当天)的订单数据(超过10行、跨页的汇总)。谢谢!代码见附件。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:ypddlist.txt


--  作者:有点蓝
--  发布时间:2019/9/9 13:43:00
--  
1、把.CreateFromDataTable(dt)去掉

2、把分页的代码去掉

--  作者:qqhealth
--  发布时间:2019/9/9 17:17:00
--  
老师您好,按照您的要求修改后可以了。另出现有一组日期数据没有汇总数据的情况,如果只有这一组数据则没有汇总,多个日期数据则最后一个日期没有汇总,不知怎么修改。谢谢!
图片点击可在新窗口打开查看此主题相关图片如下:屏幕快照 2019-09-09 下午5.13.10.png
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:ypddlist.txt


--  作者:有点蓝
--  发布时间:2019/9/9 17:29:00
--  
With wb.AddTable("","Table1")
    .Primarykey = "_Identify" \'设置主键
    .ActiveSheet = "menu" \'设置菜单
    Dim nms() As String
    Dim amt As Double
    .Head.AddRow("No.","药品名称","数量","销售定价","销售金额","订购日期")
    For i As Integer = 0 To dt.DataRows.count - 1
        Dim r As DataRow = dt.DataRows(i)
        If i > 0 Then
            Dim lr As DataRow = dt.DataRows(i-1)
            If r("订购日期") <> lr("订购日期") Then
                amt = dt.compute("sum(销售金额)","订购日期=\'" & lr("订购日期") & "\'")
                With .Body.AddRow()
                    .Attribute = "style=\'background-color:#F0FFFF\'"
                    .AddCell(lr("订购日期") & "订购小计 " ,"colspan=\'4\'")
                    .AddCells(amt,"")
                End With
            End If
        End If
        .Body.AddRow(r("NO."),r("药品名称"),r("数量"),r("销售定价"),r("销售金额"),format(r("订购日期"),"yyyy-MM-dd"))
    Next
    Dim dr2 As DataRow = dt.DataRows(dt.DataRows.count - 1)
    amt = dt.compute("sum(销售金额)","订购日期=\'" & dr2("订购日期") & "\'")
    With .Body.AddRow()
        .Attribute = "style=\'background-color:#F0FFFF\'"
        .AddCell(dr2("订购日期") & "订购小计 " ,"colspan=\'4\'")
        .AddCells(amt,"")
    End With
    
End With

--  作者:qqhealth
--  发布时间:2019/9/9 18:38:00
--  
谢谢老师,可以了。