Foxtable(狐表)用户栏目专家坐堂 → [求助]求老师解决,关于排班


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

主题:[求助]求老师解决,关于排班

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


加好友 发短信
等级:幼狐 帖子:104 积分:953 威望:0 精华:0 注册:2011/8/16 16:33:00
[求助]求老师解决,关于排班  发帖心情 Post By:2017/6/1 11:35:00 [只看该作者]

 我是一个初学者,“表A 是通过论坛上的例子做了一个

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


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170601112058.png
图片点击可在新窗口打开查看

 

想达到以下效果。

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170601112352.png
图片点击可在新窗口打开查看

望老师帮助解决。谢谢!

 

 

我QQ邮箱:1218457069@qq.com


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/1 12:35:00 [只看该作者]

Dim frm As winform.Form = Forms("窗口2")
Dim y As Integer = frm.Controls("ComboBox1").value '指定年
Dim m As Integer = frm.Controls("ComboBox2").value '指定月
Dim k As Integer = frm.Controls("ComboBox3").value '指定开始位置
Dim k1 As Integer = frm.Controls("ComboBox4").value '指定开始位置
Dim k2 As Integer = frm.Controls("ComboBox5").value '指定开始位置
Dim days As Integer = Date.DaysInMonth(y,m) '返回指定 年\月 的天数
Dim ed As Date = New Date(y,m,Days)
Dim sd As Date = New Date(y,m,1) '从指定日期开始

Dim zblds As List(Of String) = DataTables("值班领导").GetValues("姓名","姓名 is not null", "_sortkey")
Dim dbzs As List(Of String) = DataTables("带班组").GetValues("姓名","姓名 is not null","_sortkey")
Dim zbrys As List(Of String) = DataTables("值班人员").GetValues("姓名","姓名 is not null","_sortkey")

Dim d As Date = sd
Dim i1 As String = iif(k2=0,1,k2)
Dim i2 As Integer = iif(k1=0,1,k1)
Dim i3 As Integer = iif(k=0, 1, k)
Do While d <= ed
    Dim nr As Row = Tables("表a").AddNew
    nr("日期") = d
    nr("星期") = Format(d, "dddd")
    nr("值班人员") = zbrys(i3-1)
    nr("带班组") = dbzs(i2-1)
    nr("值班领导") = zblds(i1-1)
    d = d.AddDays(1)
    i2 += 1
    i3 += 1
    If i2 > dbzs.count Then
        i2 = 1
    End If
    If i3 > zbrys.count Then
        i3 = 1
    End If
    If d.DayOfWeek = 0 Then
        i1 += 1
    End If
    If i1 > zblds.count Then
        i1 = 1
    End If
Loop


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


加好友 发短信
等级:幼狐 帖子:104 积分:953 威望:0 精华:0 注册:2011/8/16 16:33:00
  发帖心情 Post By:2017/6/1 14:35:00 [只看该作者]

非常感谢 有点色 老师的帮助。

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


加好友 发短信
等级:幼狐 帖子:104 积分:953 威望:0 精华:0 注册:2011/8/16 16:33:00
  发帖心情 Post By:2017/6/2 10:25:00 [只看该作者]

老师,如果指定空2天不安排人(比如节假日不排)该如何实现。代码改怎么写。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/2 10:39:00 [只看该作者]

 

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


 


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


加好友 发短信
等级:幼狐 帖子:104 积分:953 威望:0 精华:0 注册:2011/8/16 16:33:00
回复:(有点色) [upload=table,排班.table]v...  发帖心情 Post By:2017/6/6 22:25:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170606221958.png
图片点击可在新窗口打开查看

 

如何“带班组”本次无人参加值班,此代码执行出错,代码该如何改。麻烦老师了。


 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

Dim frm As winform.Form = Forms("窗口2")
Dim y As Integer = frm.Controls("ComboBox1").value '指定年
Dim m As Integer = frm.Controls("ComboBox2").value '指定月
Dim k As Integer = frm.Controls("ComboBox3").value '指定开始位置
Dim k1 As Integer = frm.Controls("ComboBox4").value '指定开始位置
Dim k2 As Integer = frm.Controls("ComboBox5").value '指定开始位置
Dim days As Integer = Date.DaysInMonth(y,m) '返回指定 年\月 的天数
Dim ed As Date = New Date(y,m,Days)
Dim sd As Date = New Date(y,m,1) '从指定日期开始

Dim zblds As List(Of String) = DataTables("值班领导").GetValues("姓名","姓名 is not null", "_sortkey")
Dim dbzs As List(Of String) = DataTables("带班组").GetValues("姓名","姓名 is not null","_sortkey")
Dim zbrys As List(Of String) = DataTables("值班人员").GetValues("姓名","姓名 is not null","_sortkey")

Dim d As Date = sd
Dim i1 As String = iif(k2=0,1,k2)
Dim i2 As Integer = iif(k1=0,1,k1)
Dim i3 As Integer = iif(k=0, 1, k)
Dim dt As DataTable = DataTables("假期")
Dim dbzCount As Integer = dbzs.Count
Do While d <= ed
    Dim fdr As DataRow = dt.Find("日期 = #" & d & "#")
    If fdr Is Nothing Then
        Dim nr As Row = Tables("表a").AddNew
        nr("日期") = d
        nr("星期") = Format(d, "dddd")
        nr("值班人员") = zbrys(i3-1)
If dbzCount > 0 Then nr("带班组") = dbzs(i2-1)
        nr("值班领导") = zblds(i1-1)
        i2 += 1
        i3 += 1
        If i2 > dbzs.count Then
            i2 = 1
        End If
        If i3 > zbrys.count Then
            i3 = 1
        End If
    Else
        Dim nr As Row = Tables("表a").AddNew
        nr("日期") = d
        nr("星期") = Format(d, "dddd")
        nr("值班领导") = fdr("说明")
    End If
    If d.DayOfWeek = 0 Then
        i1 += 1
    End If
    If i1 > zblds.count Then
        i1 = 1
    End If
    d = d.AddDays(1)
Loop

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


加好友 发短信
等级:幼狐 帖子:104 积分:953 威望:0 精华:0 注册:2011/8/16 16:33:00
回复:(有点蓝)Dim frm As winform.Form = Forms("窗...  发帖心情 Post By:2017/6/7 0:34:00 [只看该作者]

谢谢老师

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


加好友 发短信
等级:幼狐 帖子:104 积分:953 威望:0 精华:0 注册:2011/8/16 16:33:00
  发帖心情 Post By:2017/6/10 19:19:00 [只看该作者]

如何让各值班组按天数进行排班,达到如下图效果。

 

求老师,帮助。 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170610191328.png
图片点击可在新窗口打开查看


 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:排班 (1).table


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


加好友 发短信
等级:幼狐 帖子:104 积分:953 威望:0 精华:0 注册:2011/8/16 16:33:00
  发帖心情 Post By:2017/6/10 21:16:00 [只看该作者]

以下是引用hjsl在2017/6/10 19:19:00的发言:

如何让各值班组按天数进行排班,达到如下图效果。

 

求老师,帮助。 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170610191328.png
图片点击可在新窗口打开查看


 

 下载信息  [文件大小:392.0 KB  下载次数:3]
图片点击可在新窗口打开查看点击浏览该文件:排班 (1).table

麻烦大家帮我看看。

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