在cb_retrieve按钮的clicked事件中加入如下代码:
blob lblb_data
if not isvalid(my_comp) then
my_conn.createinstance(my_comp)
//创建组件实例
end if
lblb_data=my_comp.uf_employee()
//调用组件的方法
dw_employee.setfullstate(lblb_data)
//将所需的数据展示于数据窗口中
最后编译并运行客户端程序,会得到如下运行结果:
略
本实例在windows nt4.0(sp4)、adaptive server anywhere6.0、jaguar cts3.0、pb7.0下运行通过。
6、 管理连接缓冲
(a) 在jaguarmanager中双击servers,在列表中选一个server。
(b) 选install connection caches
(c) 右键,在弹出的菜单上选“create and install a new connection cache”
(d) 在弹出的窗口中输入connection cache名。
(e) 确定后就进入了connection cache配置面板。
(f) 本文以配置sqlserver为例。在general选项卡中配置:server name 为sqlserver的服务名。user name为登录sqlserver的用户id,输入password。在driver选项卡中选odbc,dll or class name 为odbc32.dll。ping一下试试。
(g) 若ping通不过,你就得看一下本文前面(3)提到的hostname你输入的是什么,若localhost就不行,改为你的机器名。
二、开发应用部分
a、服务端:
1、 新建easerver profile如下图。server name即计算机名。port number为9000,login name为jagadmin。
2、 在new----target----easerver component开始向导
3、 next-next-应用名、库文件存放-next-implement new interface--pbobjectname(n_cst_base)easerver component name--easerver profile--pakeage name(组件以包为单位,新增一个包或选一个存在的包)--component type(stadard component)--instance pooling options(supported)--transaction supported option(not supported)--interface options(next)--other options(全选)--project(next)--next--next--finish
4、 打开刚创建的组件n_cst_base,在constructor事件中:
sqlca.dbms = "mss microsoft sql server 6.x"
sqlca.database = "jaguar_2001"
sqlca.servername = "jaguarcts"
sqlca.logid = "sa"
sqlca.autocommit = false
sqlca.dbparm = ""
connect using sqlca ;
if sqlca.sqlcode = -1 then
messagebox(“system”,"数据库连接失败!"+sqlca.sqlerrtext)
end if
5、 在n_cst_base的destructor事件中:
disconnect using sqlca ;
6、 在n_cst_basek中新增一个对象函数:
of_user_login(string as_userid,string as_password) return integer
//
integer li_return
select count(*) into :li_return from jag001 where jag0101 = : as_userid and jag0102 = : as_password ;
return li_return
jag001表的字段:jag0101(varchar(20))—jag0102(varchar(20))
7、 生成组件代理对象
new--project----easerver proxy wizard一直next,值得注意的是出现一个treeview时、让你选一个包(即在3中创建的包),下一步是选一个代理库(可以选存在的pbl,也可以新增一个pbl),next后是deployment actions,要选三(代理对象名=包名+组件名)
8、 若不出意外,代理对象就生成了。
b、客户端:
1、 新建一个应用。
2、 新建一个连接对象
new--pbobject--connection object wizard其中值得注意的是connectivity options(requires easerver connection);pakage name即3中创建的包。connection object名可以默认,也可以自已输入;resource of connect information可以任选一种。
3、 在新应用的open事件:
n_cst_connect inv_connect_srv //2创建的连接对象声明
jaguar_2001_n_cst_base inv_login_srv //代理对象声明
integer li_return