|||
这类应用一般是多选数据后填入到一个字段中,然后需要统计多选的数据分别出现了多少次的效果。
数据库中保存数据如下: 要实现的效果如下:
代码示例:
'定义网格中显示的dt
dim dt=executeSelect("SELECT NULL 部门ID,NULL 部门名称,0 总数 FROM dual where 1=0")
网格部件1.DataTable=dt
网格部件1.RefreshDataByDataTable()
'查找目录中的部门
dim dr
dim dept_dt=executeSelect("select 责任部门,责任部门id from xy_院务公开目录表")
dim deptIDstr=""
dim deptNamestr=""
dim dtx
dim drx
for each dept_dr in dept_dt.Rows
'判断 责任部门id 中是否有重复的,没有重复的才添加(责任部门ID可能是多个字符串组合)
deptIDstr=split(dept_dr["责任部门id"],",")
deptNamestr=split(dept_dr["责任部门"],",")
for i=0 to deptIDstr.Length-1
'判断 责任部门id字符串中的每个部门ID 是否已经在网格中存在
if dt.Select("部门ID='"&deptIDstr.GetValue(i)&"'").Length=0 then
dr=dt.NewRow()
dr["部门ID"]=deptIDstr.GetValue(i)
dr["部门名称"]=deptNamestr.GetValue(i)
dt.Rows.Add(dr)
end if
next
next
'更新每个责任部门一共有多少个可以项目
for each drr in dt.Rows
drr["总数"]=dept_dt.Select("责任部门 like '%"& drr["部门名称"] &"%'").Length
next
网格部件1.GridView.BestFitColumns()
Powered by Discuz! X3.2
© 2001-2013 Comsenz Inc.