关于网格部件选人实现勾选与自动同步选项功能构建-创新互联
业务需求:批量选择企业人员,填充到网格部件,并实现人员列表的勾选效果,自动同步已选人员列表项。
![](/upload/ad_content/xuanchuantu-10.jpg)
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:
网站设计制作、成都网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的
浦口网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
首先我们需要构建一个已选人员列表和一个企业人员选择列表,
![关于网格部件选人实现勾选与自动同步选项功能构建](/upload/otherpic40/153725c3znrhhpzrzreccl.png.thumb.jpg)
这个窗体构建相当简单,我们不做详细讲解,这里具体介绍如何实现的人员选择列表的勾选效果和同步人员。
勾选效果实现思路:获取网格部件的datatable,将datatable传入人员选择窗体中,循环判断datatable和选择列表,(人员ID)判断条件成立设置勾选标识。
同步人员实现思路:获取选择列表的标识人员,然后传回显示窗体,循环显示窗体人员,根据datatable的select查询方法判断传回的list集合是否已存在,没有利用datatable的Delete的方法删除行。
![关于网格部件选人实现勾选与自动同步选项功能构建](/upload/otherpic40/153731kk7vj8okvztckzq9.png.thumb.jpg)
'打开智能窗体,窗体位置: 项目窗体\队伍建设\教育培训\*学习人员选择列表*
dim form1 = 创建窗体("8f03a0cb-db62-4965-81e4-b995e4e4b1d5")
'if Me.Input1="EDIT" then
'获取已选人员列表
dim dt_YXRY=网格部件1.DataTable
form1.Input1="修改"
'传入选择列表
form1.Input2=dt_YXRY
form1.Input3="其他"
'end if
form1.ShowDialog()
'判断是否得到"Y"
if form1.Output1="Y" then
dim index = 网格部件1.DataTable.Rows.Count
Dim dt=网格部件1.DataTable
dim drx
dim rows=form1.Output2
'判断人员勾选是否为空
dim dt_dr
if rows.Count <> 0 then
for each dr in rows
'判断选择的人员是否在网格中cstr
drx = dt.Select("PEIXUNRENYUANID='"+cstr(dr["ID"])+" ' and QUERENRENGANGWEIID = '"+cstr(dr["岗位ID"])+"' ")
'不在网格中。drx.Length>0表示存在
if drx.Length < 1 then
'msgbox(dr["ID"]&" "&dr["姓名"])
dt_dr=dt.NewRow()
dt_dr["ID"]=Guid()
dt_dr["PEIXUNRENYUANID"]=dr["ID"]
dt_dr["PEIXUNRENMINGCHENG"]=dr["姓名"]
dt_dr["SHIFOUCANJIAXUEXI"]=true
dt_dr["QUERENRENGANGWEIID"]=dr["岗位ID"]
dt_dr["GANGWEI"]=dr["岗位"]
dt.Rows.Add(dt_dr)
index=index+1
end if
next
end if
'定义变量获取传回的list集合
dim dtt=form1.Output4
'定义变量获取网格部件的dt
dim dtt1=网格部件1.DataTable
dim dtt_dr
if dtt.Rows.Count>0 and dtt1.Rows.Count>0 then
'循环dt
for each dr1 in dtt1.Copy().Rows
'判断行状态是否为标记已删除
if dr1.RowState<>8 then
'利用select方法判断是否存在
rows=dtt.Select("人员ID='"+cstr(dr1["PEIXUNRENYUANID"])+"'")
if rows.Length = 0 then
'msgbox(dr1["PEIXUNRENYUANID"]&" 没找到,移除")
dtt1.Select("PEIXUNRENYUANID='"+Cstr(dr1["PEIXUNRENYUANID"])+"'")[0].Delete()
end if
end if
next
end if
end if
人员选择列表代码:
dim dt_RY
dim xm
dim jsy
'设置安全人员选择状态,循环设置已经选择的人员
dim a
dim b
dim dt_a= 网格部件1.DataTable
for each dr1 in RY.Rows
if dr1.RowState<>8 then
'人员ID
a=dr1["PEIXUNRENYUANID"]
'岗位ID
b=dr1["QUERENRENGANGWEIID"]
for each dr4 in dt_a.Rows
if Cstr(dr4["ID"])=Cstr(a) and Cstr(dr4["岗位ID"])=Cstr(b) then
网格部件1.MarkRowsByFilter("ID="&Cstr(dr4["ID"])&" and 岗位ID='"&Cstr(dr4["岗位ID"])&"' ",true)
end if
next
end if
next
原文地址:http://bbs.delit.cn/thread-975-1-1.html
转载请注明出处:
撰写人:度量科技http://www.delit.cn
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站标题:关于网格部件选人实现勾选与自动同步选项功能构建-创新互联
分享路径:
http://myzitong.com/article/ddpgce.html