DataTables("告知内容").sqlGetComboListString("手机号码","uuid='uuid'and 是否告知='是'").replace("|",",").split(",").length)
DataTables("告知内容").sqlGetComboListString("手机号码","uuid='uuid'and 是否告知='否'").replace("|",",").split(",").length)
老师 这两个得到的数据是一样 有没有办法做限制 因为是否告知只能等于一个是 或 否
当等于是的时候 就是成功数 失败数就是0
当等于否的时候 就是失败数 成功数就是0
Dim uuid As String =args(0)
Dim cmd As new SQ LC ommand
cmd.Conne ct ionName = _data
cmd.Comman dText = "UPD ATE 信息列表 S ET 告知条数 = ? ,成功数 = ? ,失败数 = ? WHERE uuid = ?"
cmd.Parameters.Add("@告知条数",DataTables("告知内容").sqlGetComboListString("手机号码","uuid='uuid'").replace("|",",").split(",").length)
cmd.Parameters.Add("@成功数",DataTables("告知内容").sqlGetComboListString("手机号码","uuid='uuid'and 是否告知='是'").replace("|",",").split(",").length)
cmd.Parameters.Add("@失败数",DataTables("告知内容").sqlGetComboListString("手机号码","uuid='uuid'and 是否告知='否'").replace("|",",").split(",").length)
cmd.Parameters.Add("@uuid",uuid)
cmd.ExecuteNonQuery
如果参照二楼的写法 又会导致项目重复计算这个数据 老师有没有办法限定重复计算呢?
告知内容表中对应的uuid记录 如果是否告知等于是 就是成功数 i1 失败数就为零 反之是否告知等于否时 就是失败数i2 成功数就为零
当前代码如下:
Dim uuid As String =args(0)
Dim br1 As List(Of DataRow)
br1 =DataTables("告知内容").Sel ect("uuid='" & uuid & "'")
Dim i As Integer
Dim i1 As Integer
Dim i2 As Integer
For Each br As DataRow In br1
Dim tel As String = br("手机号码")
Dim tels() As String = tel.split(",")
i += tels.Length
If br("是否告知")="是" Then
i1 += tels.Length
i2=0
Else If br("是否告知")="否" Then
i1 = 0
i2 += tels.Length
End If
Next
output.show(i)
output.show(i1)
output.show(i2)
Dim cmd As new S QLC ommand
cmd.Connec tion Name = _data
cmd.Comm andText = "UPD ATE 信息列表 SET 告知条数 = ? ,成功数 = ? ,失败数 = ? WHERE uuid = ?"
cmd.Parameters.Add("@告知条数",i)
cmd.Parameters.Add("@成功数",i1)
cmd.Parameters.Add("@失败数",i2)
cmd.Parameters.Add("@uuid",uuid)
cmd.ExecuteNonQuery
[此贴子已经被作者于2022/1/27 22:39:36编辑过]