Foxtable(狐表)用户栏目专家坐堂 → 多行填充一行的问题


  共有30587人关注过本帖树形打印复制链接

主题:多行填充一行的问题

帅哥哟,离线,有人找我吗?
jhxb8821
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:985 积分:6684 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/7/17 12:36:00 [只看该作者]

'未来几天预订情况汇总,代码
For Each dr As DataRow In DataTables("状态表202").DataRows
    'For Each dr As DataRow In DataTables("状态表202").Select("桌台名称 is null") 
    
    Dim w0 As Date = Date.Today() '今日
    'Dim dr0 As DataRow = DataTables("未来7天201").Find("桌台类型 = '" & dr("桌台类型") & "' And 桌台名称 = '" & dr("桌台名称") & "' and 今日_日期 = #" & w0 & "# ")    
    Dim dr0 As DataRow = DataTables("未来7天201").Find("桌台编号 = '" & dr("桌台编号") & "' And 今日_日期 = #" & w0 & "# ")
    If dr0 IsNot Nothing Then 
        dr0("今日_日期") = Date.Today() '前为:目标列,后为来源列
        dr0("今日_午餐") = dr("预订宴类_午餐")
        dr0("今日_晚餐") = dr("预订宴类_晚餐")
    End If
    
    Dim w1 As Date = Date.Today().AddDays(1) '未来第1天  
    Dim dr1 As DataRow = DataTables("未来7天201").Find("桌台类型 = '" & dr("桌台类型") & "' And 桌台名称 = '" & dr("桌台名称") & "' and 未来第1天_日期 = #" & w1 & "# ") 
    If dr1 IsNot Nothing Then 
        dr1("未来第1天_日期") = Date.Today().AddDays(1) '未来第1天
        dr1("未来第1天_午餐") = dr("预订宴类_午餐")
        dr1("未来第1天_晚餐") = dr("预订宴类_晚餐")
    End If 
    
    Dim w2 As Date = Date.Today().AddDays(2) '未来第2天  
    Dim dr2 As DataRow = DataTables("未来7天201").Find("桌台类型 = '" & dr("桌台类型") & "' And 桌台名称 = '" & dr("桌台名称") & "' and 未来第2天_日期 = #" & w2 & "# ") 
    If dr2 IsNot Nothing Then 
        dr2("未来第2天_日期") = Date.Today().AddDays(2) '未来第2天
        dr2("未来第2天_午餐") = dr("预订宴类_午餐")
        dr2("未来第2天_晚餐") = dr("预订宴类_晚餐")
    End If 
    
        '  Dim w3 As Date = Date.Today().AddDays(3) '未来第3天
    '  Dim w4 As Date = Date.Today().AddDays(4) '未来第4天
    '  Dim w5 As Date = Date.Today().AddDays(5) '未来第5天
    '  Dim w6 As Date = Date.Today().AddDays(6) '未来第6天
    '  Dim w7 As Date = Date.Today().AddDays(7) '未来第7天
    
Next
'此代码从状态表202提取数据,填充到固定表“未来7天201”中,其中“未来7天201”桌台类型、桌台名称、桌台编号已全部填好,只需将状态表202数据“日期”、“预订宴类_午餐”、“预订宴类_晚餐”填入固定表对应的地方,我这样写代码怎么没反应,请老师看看是哪里出了问题?
老师,我将日期那个单引号去掉了,也不行,是不是日期表示方法有问题?
[此贴子已经被作者于2024/7/17 13:40:56编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:114418 积分:582807 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/17 13:35:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:985 积分:6684 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/7/17 13:44:00 [只看该作者]

老师,我将日期那个单引号去掉了,也不行,是不是日期表示方法有问题?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:114418 积分:582807 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/17 13:48:00 [只看该作者]

调试
msgbox("桌台编号 = '" & dr("桌台编号") & "' And 今日_日期 = #" & w0 & "# ")
    Dim dr0 As DataRow = DataTables("未来7天201").Find("桌台编号 = '" & dr("桌台编号") & "' And 今日_日期 = #" & w0 & "# ")
msgbox(dr0 IsNot Nothing)
    If dr0 IsNot Nothing Then 
        dr0("今日_日期") = Date.Today() '前为:目标列,后为来源列
        dr0("今日_午餐") = dr("预订宴类_午餐")

 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:985 积分:6684 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/7/17 14:17:00 [只看该作者]

第一调试是正确数据,不能写入数据,对话框关不了,重启电脑2次

 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:985 积分:6684 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/7/17 14:47:00 [只看该作者]

'提取今日数据:单独写代码,运行没有问题
Dim s As Date = e.Form.Controls("日期").Value '选择日期
For Each dr As DataRow In DataTables("状态表202").Select("日期=#" & s & "#") '数据来源于表
    Dim dr0 As DataRow = DataTables("未来7天202").Find("桌台类型 = '" & dr("桌台类型") & "' And 桌台名称 = '" & dr("桌台名称") & "' And 今日_日期 = #" & s & "#") 
    If dr0 Is Nothing Then '如果没找到的话
        dr0 = DataTables("未来7天202").AddNew()
        dr0("桌台类型") = dr("桌台类型")
        dr0("桌台名称") = dr("桌台名称") 
    End If 
    Dim w0 As Date = Date.Today() '今日    
    If dr0 IsNot Nothing Then 
        dr0("今日_日期") = w0 '前为:目标列,后为来源列
        dr0("今日_午餐") = dr("预订宴类_午餐")
        dr0("今日_晚餐") = dr("预订宴类_晚餐")
    End If 
Next

'提取明日数据:单独写代码,运行没有问题
Dim s1 As Date = e.Form.Controls("日期").Value '选择日期
For Each dr As DataRow In DataTables("状态表202").Select("日期=#" & s1 & "#") '数据来源于表     
    Dim dr1 As DataRow = DataTables("未来7天202").Find("桌台类型 = '" & dr("桌台类型") & "' And 桌台名称 = '" & dr("桌台名称") & "' And 未来第1天_日期 = #" & s1 & "#") 
    If dr1 Is Nothing Then '如果没找到的话
        dr1 = DataTables("未来7天202").AddNew()
        dr1("桌台类型") = dr("桌台类型")
        dr1("桌台名称") = dr("桌台名称") 
    End If 
    Dim w1 As Date = Date.Today().AddDays(1) '未来第1天      
    If dr1 IsNot Nothing Then 
        dr1("未来第1天_日期") = w1 '前为:目标列,后为来源列
        dr1("未来第1天_午餐") = dr("预订宴类_午餐")
        dr1("未来第1天_晚餐") = dr("预订宴类_晚餐")
    End If 
 Next

 '提取后天的数据:单独写代码,运行没有问题
Dim s2 As Date = e.Form.Controls("日期").Value '选择日期
For Each dr As DataRow In DataTables("状态表202").Select("日期=#" & s2 & "#") '数据来源于表     
    Dim dr2 As DataRow = DataTables("未来7天202").Find("桌台类型 = '" & dr("桌台类型") & "' And 桌台名称 = '" & dr("桌台名称") & "' And 未来第2天_日期 = #" & s2 & "#") 
    If dr2 Is Nothing Then '如果没找到的话
        dr2 = DataTables("未来7天202").AddNew()
        dr2("桌台类型") = dr("桌台类型")
        dr2("桌台名称") = dr("桌台名称") 
    End If 
    Dim w2 As Date = Date.Today().AddDays(2) '未来第2天      
    If dr2 IsNot Nothing Then 
        dr2("未来第1天_日期") = w2 '前为:目标列,后为来源列
        dr2("未来第1天_午餐") = dr("预订宴类_午餐")
        dr2("未来第
老师,一段一段运行代码没问题,如何合起来写?


 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:985 积分:6684 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/7/17 14:49:00 [只看该作者]

麻烦老师,将21楼数据进一步完善

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:114418 积分:582807 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/17 14:53:00 [只看该作者]

'提取今日数据
Dim s As Date = e.Form.Controls("日期").Value '选择今日日期
For Each dr As DataRow In DataTables("状态表202").Select("日期>=#" & s & "#")
    Dim dr0 As DataRow = DataTables("未来7天202").Find("桌台类型 = '" & dr("桌台类型") & "' And 桌台名称 = '" & dr("桌台名称") & "' And 今日_日期 = #" & dr("日期") & "#") 
    If dr0 Is Nothing Then '如果没找到的话
        dr0 = DataTables("未来7天202").AddNew()
        dr0("桌台类型") = dr("桌台类型")
        dr0("桌台名称") = dr("桌台名称") 
    End If 
    Dim w0 As Date = Date.Today() '今日    
    If dr0 IsNot Nothing Then 
        dr0("今日_日期") = dr("日期")
        dr0("今日_午餐") = dr("预订宴类_午餐")
        dr0("今日_晚餐") = dr("预订宴类_晚餐")
    End If 
Next

 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:985 积分:6684 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/7/17 16:54:00 [只看该作者]

Dim s As Date = Date.Today() '今日  
For Each dv As DataRow In DataTables("状态表202").Select("日期>=#" & s & "#") '数据来源于表
    Dim dr As DataRow = DataTables("未来7天202").Find("桌台编号 = '" & dv("桌台编号") & "' And 桌台类型 = '" & dv("桌台类型") & "' And 桌台名称 = '" & dv("桌台名称") & "'") 
    If dr Is Nothing Then '如果没找到的话
        dr = DataTables("未来7天202").AddNew()
        dr("桌台编号") = dv("桌台编号")
        dr("桌台类型") = dv("桌台类型")
        dr("桌台名称") = dv("桌台名称") 
    End If 
    
    If dv("日期") = Date.Today() Then '今天
        Dim dr0 As DataRow = DataTables("未来7天202").Find("桌台编号 = '" & dv("桌台编号") & "' And 桌台类型 = '" & dv("桌台类型") & "' And 桌台名称 = '" & dv("桌台名称") & "' And 今日_日期 = #" & s & "#")
        If dr0 IsNot Nothing Then 
            dr0("今日_日期") = dv("日期") 
            dr0("今日_午餐") = dv("预订宴类_午餐")
            dr0("今日_晚餐") = dv("预订宴类_晚餐")
        End If 
    ElseIf dv("日期") = Date.Today().AddDays(1) Then
        Dim w1 As Date = Date.Today().AddDays(1) '未来第1天  
        Dim dr1 As DataRow = DataTables("未来7天202").Find("桌台编号 = '" & dv("桌台编号") & "' And 桌台类型 = '" & dv("桌台类型") & "' And 桌台名称 = '" & dv("桌台名称") & "' And 未来第1天_日期 = #" & w1 & "#")
        If dr1 IsNot Nothing Then 
            dr1("未来第1天_日期") = Date.Today().AddDays(1) 
            dr1("未来第1天_午餐") = dv("预订宴类_午餐")
            dr1("未来第1天_晚餐") = dv("预订宴类_晚餐")
        End If 
    ElseIf dv("日期") = Date.Today().AddDays(2) Then
        Dim w2 As Date = Date.Today().AddDays(2) '未来第2天  
        Dim dr2 As DataRow = DataTables("未来7天202").Find("桌台编号 = '" & dv("桌台编号") & "' And 桌台类型 = '" & dv("桌台类型") & "' And 桌台名称 = '" & dv("桌台名称") & "' And 未来第2天_日期 = #" & w2 & "#")
        If dr2 IsNot Nothing Then 
            dr2("未来第2天_日期") = Date.Today().AddDays(2) 
            dr2("未来第2天_午餐") = dv("预订宴类_午餐")
            dr2("未来第2天_晚餐") = dv("预订宴类_晚餐")
        End If
        '....
        
    End If 
    
Next
老师,还没弄出来,你仔细看一下上述代码,错在哪里,能否按上述思路做出来?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:114418 积分:582807 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/17 17:16:00 [只看该作者]

上实例

 回到顶部
总数 169 上一页 1 2 3 4 5 6 7 8 9 10 下一页 ..17