PB数据窗口中代码列动态选择两法在线教程
方法一:为该对照表设计一数据窗口(暂称变动选择窗口),该窗口包括"代码"列和"含义"列;在录入数据窗口"代码"列的"Edit Style" 选项中,直接选择下拉数据窗口风格(Dr opDownDataWindow),在风格窗口中选择上述变动选择窗口,再从"Display Column"和"Da ta Colu mn"下拉列表框中,为上述下拉数据窗口选择要显示的列和数值列,并设置"Alway sShow Arrow"选项,将下拉特征设置为"V Scroll Bar", 如下图:图1
方法二:将这个"代码"列变为下拉列表框的形式,在下拉列表框(D ropDownList Box) 窗口中,除选中"Always Show Arrow"外,其他选项不做任何变动。利用当前光标操作,编写下面一段程序来完成对上述" 含义"的动态选择。
string code //"代码"变量
string codemeaning //"含义"变量
int i=1
declare cl cursor for //定义光标,光标名为C1
select codemeaning-col,code-col from code_meaning_table using SQLCA;
open cl; //打开光标,此时执行此光标对应的SQL SELECT语句
aa:
fetch cl into:codemeaning,:code;
//取记录,光标下移一条记录
if sqlca.sqlcode=0 then
//取记录成功
//将codemeaing值写入列code-col中
setvalue(dw_1,"code_col",+i,codemeaning+"~t"+code)
i=i+1 //行数加1
goto aa
//取下一条记录,直至最后一条
end if
close cl; //关闭光标,SQL SELECT语句结束
将以上程序放在数据录入界面窗口的"open"事件脚本中执行,即可将数据库表"code _meaning_table"中的"含义"(codemeaning_col) 选项循环写入"代码"下拉列表框中。