以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  星期问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=185284)

--  作者:lgz518
--  发布时间:2023/2/14 13:21:00
--  星期问题
For Each r As Row In Tables("表E").rows
Dim d1 As Date = r("开始日期")
Dim d2 As Date = r("结束日期")
Dim 数量 As Double = r("数量") / r("天数") 
Dim nr As Row
Do While d1 <= d2
nr = Tables("表F").addnew
nr("产品") = r("产品") 
nr("加工日期") = d1
nr("数量") = 数量
d1 = d1.adddays(1)
Loop
Next

上面的代码是生成记录是不管"加工日期"是不是星期六、星期天,
现在需求是生成"加工日期"不是星期六、星期天的记录,或说其"加工日期"是星期六、星期天,数量字段不能有值,后面增生成记录,
如果是星期六往后生成二条、如果是星期天往后生成一条,怎么实现,请老师帮助







--  作者:有点蓝
--  发布时间:2023/2/14 13:50:00
--  
http://www.foxtable.com/webhelp/topics/0229.htm

Do While d1 <= d2
 if d1.DayOfWeek=0 orelse d1.DayOfWeek=6 then
else
nr = Tables("表F").addnew

--  作者:lgz518
--  发布时间:2023/2/14 14:29:00
--  
For Each r As Row In Tables("表E").rows
    Dim d1 As Date = r("开始日期")
    Dim d2 As Date = r("结束日期")
    Dim 数量 As Double = r("数量") / r("天数") 
    Dim nr As Row
    Do While d1 <= d2
        If d1.DayOfWeek = 0 OrElse d1.DayOfWeek = 6 Then
        Else
            nr = Tables("表F").addnew
            nr("产品") = r("产品") 
            nr("加工日期") = d1
            nr("数量") = 数量
            d1 = d1.adddays(1)
        End If
        Loop
    Next

老师,加上执行后,卡了不动


--  作者:有点蓝
--  发布时间:2023/2/14 14:36:00
--  
Do While d1 <= d2
        If d1.DayOfWeek = 0 OrElse d1.DayOfWeek = 6 Then
        Else
            nr = Tables("表F").addnew
            nr("产品") = r("产品") 
            nr("加工日期") = d1
            nr("数量") = 数量
        End If
            d1 = d1.adddays(1)
        Loop
    Next