以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]非自然月统计,日期停留在第一天  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=143670)

--  作者:lg_yaolong
--  发布时间:2019/12/1 13:51:00
--  [求助]非自然月统计,日期停留在第一天

Select Case e.DataCol.name
    Case
"
日期"
        If e.NewValue Is Nothing Then
            e.DataRow(
"
统计日期") = Nothing
        Else
            Dim dt As Date = e.NewValue
            If dt.Day > 25
Then
\'如果为25日以后的日期
                dt = new Date(dt.year,dt.month,1) \'改为下个月的第一天
               
dt= dt.AddMonths(1)
            End If
            e.DataRow("统计日期") = dt
        End
If

End
Select

25日以后的数据,统计日期全部停留在下月第一天


--  作者:shenyl0211
--  发布时间:2019/12/1 15:46:00
--  
路过。看不懂你想表达的问题。
--  作者:有点蓝
--  发布时间:2019/12/1 21:06:00
--  
截图或者上传实例说明一下问题
--  作者:lg_yaolong
--  发布时间:2019/12/1 22:21:00
--  
前面是录入日期,后面是统计日期,设置结算日期为25日,26日后统计为12月1日,27日为12月2日,如此类推,可是25日以后的全部为12月1日
--  作者:lg_yaolong
--  发布时间:2019/12/1 22:22:00
--  

[此贴子已经被作者于2019/12/10 22:29:11编辑过]

--  作者:有点蓝
--  发布时间:2019/12/1 22:27:00
--  
帮助这样处理是因为这个统计日期仅仅是为了生成统计数据而用,仅作为一个临时的辅助列,不需要一一对应的,也没有这个必要。
实际上也没有办法一一对应,至于为什么自己思考一下

--  作者:lg_yaolong
--  发布时间:2019/12/1 22:42:00
--  
比如结算日期25日,如何实现按非标准月类推的算法
--  作者:有点蓝
--  发布时间:2019/12/1 23:00:00
--  
就是1楼的用法呀,有什么问题?http://www.foxtable.com/webhelp/topics/2962.htm