当前位置: 代码迷 >> PB >> pb,动态数据库查询解决办法
  详细解决方案

pb,动态数据库查询解决办法

热度:34   发布时间:2016-04-29 09:54:12.0
pb,动态数据库查询
需要一个函数,完成的功能是动态的从数据库中查询数据,查询出来的数据是代码,并不是真正的内容,所以还需要把相应代码转换成对应的具体内容,如代码1代表的是身份证,代码2代表的是军官证。
这样在前台界面检索的时候,检索出来的数据是实际所对应的数据(身份证……)


------解决方案--------------------
直接用数据窗口来做,将数据窗口的列设置为dropdowndw类型
------解决方案--------------------
如果是数据窗口可以用下面这段代码格式化
lsFormatTemp="[general]~tgfgetmc1(字段名,'',bz)" 
dw_master.modify("字段名.format=~""+ lsFormatTemp +"~"")
gfgetmc1(字段名,'',bz)这个函数是自己创建,返回名称就行了
------解决方案--------------------
string ls_emp_st,ls_select, ls_cmp_fname,ls_com_lname
lv_emp.deleteitems()
ls_emp_st = mid(this.text,1,pos(this.text,'',1)-1)
ls_select = "select emp_fname,emp_lname from employee where state = ?"
declare cur_emp dynamic cursor for sqlsa;

if sqlca.sqlcode<>0 then
messagebox("提示","定义游标时出错,原因:"+sqlca.sqlerrtext)
return 
end if
prepare sqlsa from :ls_select;
open dynamic cur_emp using :ls_emp_st;
fetch cur_emp into :ls_emp_fname; ls_emp_lname;
if sqlca.sqlcode = 100 then messagebox("提示","没有此州的雇员!")
do while sqlca.sqlcode = 0
lv_emp.additem(ls_emp_fname + "" +ls_emp_lname,1)
fetch cur_emp into :ls_emp_fname, :ls_emp_fname;
loop
close cur_emp;

  相关解决方案