以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于ComboList求助  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=149610)

--  作者:huangfanzi
--  发布时间:2020/5/7 14:35:00
--  [求助]关于ComboList求助
假定合同表中有以下记录

合同编号  关联标识  关联序号
HT001      A            1
HT002      A            2
HT003      A            3
HT004      B            1
HT005      B            2
HT006      C            1
HT007      C            3
HT008      C            2
。。。
现在窗口中有个选择合同编号的ComboBox控件,如何使其ComboList的内容是 红字部分的合同编号,其条件就是不同的关联标识中最大的关联序号记录中的合同编号
谢谢老师!
[此贴子已经被作者于2020/5/7 14:34:43编辑过]

--  作者:有点蓝
--  发布时间:2020/5/7 14:40:00
--  
要使用sql处理:http://www.foxtable.com/webhelp/topics/0696.htm

示例一

Dim cmd As New SQLCommand
Dim
 dt As DataTable
Dim
 cmb As WinForm.ComboBox
cmd.CommandText = "SELECT DISTINCT a.
合同编号 From {合同表} as a inner join (select 关联标识, max(关联序号) as 关联序号 from {合同表} group by 关联标识) as b on a.关联标识=b.关联标识 where a.关联序号=b.关联序号"

dt = cmd.ExecuteReader()
cmb = e.Form.Controls(
"ComboBox1")
cmb.ComboList= dt.GetComboListString(
"
合同编号")

上述代码可以设置在窗口的AfterLoad事件中。