老师我要实现的功能有一下几点:
1、首先 每次打开项目后能自动检测 【客服目标】表,有几个名字(条件是按系统日期所在月 例如:本月为10)
2、其次 在【组合1】表增加行 (增加行:根据 【组合1】表日期列的最大日期,距离系统日期天数X姓名数)
3、在【组合1】表新增加的行中循环填入姓名
例如:3.1【客服目标】表按月筛选出 张三、李四、王二 (姓名计数为3)
3.2【组合1】表中最大日期为2016/10/5,系统日期为2016/10/7 (相差天数为2天)
3.3【组合1】表增加3*2=6行
3.4【组合1】表新增行中写入, 姓名列 日期列
张三 2016/10/6
李四 2016/10/6
王二 2016/10/6
张三 2016/10/7
李四 2016/10/7
王二 2016/10/7
备注:姓名为【客服目标】表中的名字,按条件是按月筛选出来
以上是我想实现的功能
我的设计思路是:(【组合1】AfterOpenProject写入)1、首先提起系统日期计算出所在月份,其次 在【客服目标】表中筛选出 当月姓名并写入到集合中,同时计算出集 合个数。然后 查找【组合1】表中日期列中查找最大日期,并计算出距离系统日期天数。最后 计算出【组合1】表
中的增加行数(增加行数=相差天数X姓名数)。
2、(【组合1】DataColChanged写入) 查找出姓名列为空的,并把姓名按次序循环写人不通的行(日期我就不知怎么写入了)
如何对空行循环赋值,我写了如下代码,错误比较多,望老师指出错误,或者指点更好更简洁的方法
If e.DataRow.Isnull("姓名") = True then '判断【组合1】姓名列是否存在空值
Dim t1 As Byte '
Dim t As List(Of String) = DataTables("客服目标").GetValues("姓名","月=" & Date.Today.month) '姓名写入集合
Dim t3 As List(Of String) = DataTables("组合1").GetValues("姓名","月=" & Date.Today.month) '(这条代码写错啦)
t1 = t.Count '集合计数
Dim t5 As Integer = DataTables("组合1").DataRows.Count '所有行计数
Dim t2 ,r As Integer
t2 = Tables("组合1").Compute("count(姓名)","姓名 Is Not Null") '非空行计数
For r = 0 To t5 - t2 '非空行行循环次数
Dim dr As DataRow
dr = DataTables("组合1").Find("[月] Is null",,r) '查找空行
For Each t6 As String In t '
dr("姓名") = t(r) '写入姓名
Next
Next
End If