Foxtable(狐表)用户栏目专家坐堂 → 关于计划管理


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

主题:关于计划管理

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


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
关于计划管理  发帖心情 Post By:2020/9/20 5:05:00 [只看该作者]

老师,我下面是一段关于生成当天营业数据的代码,但怕有时候商家忘记交班,想在每天下班前自动生成营业数据,比如  18点01执行这个操作,计划管理里,该怎样处理这段代码嘛

Dim d As WinForm.Label =Forms("交班").Controls("今日日期")
d.text = Date.Today

Dim jby As WinForm.Label =Forms("交班").Controls("交班员")
jby.text = _UserName

Dim lsxssl As WinForm.Label =Forms("交班").Controls("商家订货数量")
Dim lsxsje As WinForm.Label =Forms("交班").Controls("商家订货金额")
Dim lsxsds As WinForm.Label =Forms("交班").Controls("商家订货单数")
lsxssl.text = DataTables("供应商订货总表").Compute("sum(订货数量)","日期 = '#" & d.text & "#'")
lsxsje.text = DataTables("供应商订货总表").Compute("sum(订货金额)","日期 = '#" & d.text & "#'")
lsxsds.text = DataTables("供应商订货总表").Compute("count(订货单号)","日期 = '#" & d.text & "#'")

Dim cldhsl As WinForm.Label =Forms("交班").Controls("供应商回货数量")
Dim cldhje As WinForm.Label =Forms("交班").Controls("供应商回货金额")
Dim cldhds As WinForm.Label =Forms("交班").Controls("供应商回货单数")
cldhsl.text =DataTables("供应商回货总表").Compute("sum(回货数量)","日期 = '#" & d.text & "#'")
cldhje.text=    DataTables("供应商回货总表").Compute("sum(回货金额)","日期 = '#" & d.text & "#'")
cldhds.text =  DataTables("供应商回货总表").Compute("count(回货单号)","日期 = '#" & d.text & "#'")

Dim khdhsl As WinForm.Label =Forms("交班").Controls("客户订货数量")
Dim khdhje As WinForm.Label =Forms("交班").Controls("客户订货金额")
Dim khdhdj As WinForm.Label =Forms("交班").Controls("客户预付订金")
Dim khdhds As WinForm.Label =Forms("交班").Controls("客户订货单数")
khdhsl.text = DataTables("客户订货总表").Compute("sum(总数量)","日期 = '#" & d.text & "#'")
khdhdj.text = DataTables("客户订货总表").Compute("sum(预付订金)","日期 = '#" & d.text & "#'")
khdhje.text = DataTables("客户订货总表").Compute("sum(应付金额)","日期 = '#" & d.text & "#'")
khdhds.text = DataTables("客户订货总表").Compute("count(订货单号)","日期 = '#" & d.text & "#'")

Dim sjshsl As WinForm.Label =Forms("交班").Controls("商家送货数量")
Dim sjshds As WinForm.Label =Forms("交班").Controls("商家送货单数")
sjshsl.text =DataTables("商场送货总表").Compute("sum(送货数量)","日期 = '#" & d.text & "#'")
sjshds.text =  DataTables("商场送货总表").Compute("count(送货单号)","日期 = '#" & d.text & "#'")

Dim rr As DataRow
rr = DataTables("营业综合报表").sqlFind("日期 = '" & d.text & "'")
If rr IsNot Nothing Then
    DataTables("营业综合报表").SQLDeleteFor("日期 = '" & d.text & "'")
    Dim r As Row = Tables("营业综合报表").AddNew
    r("商家订货数量") = lsxssl.text
    r("商家订货金额") = lsxsje.text
    r("商家订货单数") = lsxsds.text
    r("供应商回货数量") = cldhsl.text
    r("供应商回货金额") = cldhje.text
    r("供应商回货单数") = cldhds.text
    r("客户订货数量") = khdhsl.text
    r("客户订货金额") = khdhje.text
    r("客户订货单数") = khdhds.text
    r("客户预付订金") = khdhdj.text
    r("商家送货数量") = sjshsl.text
    r("商家送货单数") = sjshds.text
    r("交班员") = jby.text
    r("日期") = d.text
    DataTables("营业综合报表").save
End If

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


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/20 20:27:00 [只看该作者]

去掉控件,全部改为变量即可,如:

Dim d As date = Date.Today
……
Dim lsxssl As integer = DataTables("供应商订货总表").Compute("sum(订货数量)","日期 = '#" & d.text & "#'")
……

r("商家订货数量") = lsxssl 

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


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/9/21 16:26:00 [只看该作者]

老师,你这让把控件去掉的方式,我修改了代码,可是这样生成不了数据,我还是用原来的代码,现在出现的问题是在窗体上都能看到生成的数据,可是却保存不到数据表里,后台数据库也没有,昨天我还能保存到数据库里的,也不知道怎么回事。

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

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:代码.txt




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


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

Dim rr As DataRow
rr = DataTables("营业综合报表").sqlFind("日期 = '" & d.text & "'")
If rr IsNot Nothing Then
msgbox("能不能弹出来?")
    DataTables("营业综合报表").SQLDeleteFor("日期 = '" & d.text & "'")
    Dim r As Row = Tables("营业综合报表").AddNew
    r("商家订货数量") = lsxssl.text
……
    DataTables("营业综合报表").save
msgbox(DataTables("营业综合报表").HasChanges) ‘能不能弹出来?
End If

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


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/9/21 17:03:00 [只看该作者]

老师,不弹出对对话框,真不知道怎么回事了,昨天也不知道怎么保存的一条记录,现在也删除了。增加不了了

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


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

不弹出对话框,说明sqlFind查询没有结果,没有符合条件的数据。

确定存在这个条件的数据?msgbox("日期 = '" & d.text & "'")

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


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/9/21 22:07:00 [只看该作者]

Dim rr As DataRow

rr = DataTables("营业综合报表").SQLFind("日期 = '" & d.text & "'")

MessageBox.show(rr("日期"))
''
If rr IsNot Nothing Then
msgbox("能不能弹出来?")
DataTables("营业综合报表").SQLDeleteFor("日期 = '" & d.text & "'")
    Dim r As Row = Tables("营业综合报表").AddNew
    r("商家订货数量") = lsxssl.text

老师,现在的问题应该就在红色部分这块了,现在数据里没有一条记录时,  在 MessageBox.show(rr("日期"))就报错了,当把这个判断条件去掉了,直接增加记录就可以,然后 再判断,当某个表发生了改变,再次点交班,就可以把当天旧的交班记录删除,生成新的交班记录了。

我想这样,当数据库里一条记录都没有是,就不判断了,直接向表中添加记录,等有了记录时再判断,这个逻辑对吗,我按照这个思路写了代码,现在头大了,怎么也不对,请教老师。

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


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/21 22:28:00 [只看该作者]

Dim rr As DataRow
rr = DataTables("营业综合报表").sqlFind("日期 = '" & d.text & "'")
If rr IsNot Nothing Then
    DataTables("营业综合报表").SQLDeleteFor("日期 = '" & d.text & "'")
End If
    Dim r As Row = Tables("营业综合报表").AddNew
    r("商家订货数量") = lsxssl.text
    r("商家订货金额") = lsxsje.text
    r("商家订货单数") = lsxsds.text
    r("供应商回货数量") = cldhsl.text
    r("供应商回货金额") = cldhje.text
    r("供应商回货单数") = cldhds.text
    r("客户订货数量") = khdhsl.text
    r("客户订货金额") = khdhje.text
    r("客户订货单数") = khdhds.text
    r("客户预付订金") = khdhdj.text
    r("商家送货数量") = sjshsl.text
    r("商家送货单数") = sjshds.text
    r("交班员") = jby.text
    r("日期") = d.text
    DataTables("营业综合报表").save


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


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/9/21 23:42:00 [只看该作者]


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


老师, 我现在 这个本日收入 = 客户订金+订货付款 +订货货款

srje.text = (khdhdj.text) + (khdhfk.text) + (khdhjk.text)  我现在这样写是错了,只是把这三个数字排在一起了,无法相加,老师这个该怎么处理呢

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


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/22 8:36:00 [只看该作者]

srje.text = val(khdhdj.text) +


 回到顶部
总数 17 1 2 下一页