功能:多条件判断筛选记录
操作位置:服务器端操作
实现代码:
'通过%比和直接赋值判断出两个数据结果并合并显示出来
'查找所有按百分比的提成结算(也就是提成结算方式小于等于1的值)
Dim query1 As System.Linq.IQueryable(Of LightSwitchApplication.SjHeTongXinXi)
'查找所有直接结算金额的提成(也就是大于1的值)
Dim query2 As System.Linq.IQueryable(Of LightSwitchApplication.SjHeTongXinXi)
'查找所有未开始结算的或结算总金额为空的记录(也就是提成结算为0的值)
Dim query3 As System.Linq.IQueryable(Of LightSwitchApplication.SjHeTongXinXi)
query1 = From q In _
(From t In query Where t.提成结算 <= 1 Select t) _
Where q.合同单位.客户简称.Contains(par客户简称) And q.合同金额 * q.提成结算 <> q.结算信息.Sum(Function(xx) xx.结算金额) _
Select q
query2 = From q In _
(From t In query Where t.提成结算 > 1 Select t) _
Where q.合同单位.客户简称.Contains(par客户简称) And q.提成结算 <> q.结算信息.Sum(Function(xx) xx.结算金额) _
Select q
query3 = From q In _
(From t In query Where t.合同单位.客户简称.Contains(par客户简称) Select t) _
Where q.结算信息.Count(Function(xx) xx.结算金额) = 0 Or q.提成结算 = 0 Select q
'合并三个查询数据集()
query = query1.Union(query2).Union(query3)