datastore
关于DataStore
Datastore是PB中不可视的数据窗口控制,除此以外与数据窗口相比各个方面都极其相似。
由于datastore具有对数据的交互操作,所以用它来代替在程序中经常使用的游标Cursors. 使用datastore检索数据比游标的速度快,
并对数据的分组变得容易,提高比较高级的过滤功能,在程序中不需要变量也可以访问数据,
并且在PB中使编码变得相对简单。
String ls_cust_code,ls_customer_name,ls_address
long ll_row,ll_row_count
datastore lds_dstastore
lds_datastore = CREATE datastore
lds_datastore.dataobject = "dw_customers" //dw_customers为已经存在的数据窗口对象
lds_datastore.settransobject(sqlca)
lds_datastore.retrieve()
ll_row_count = lds_datastore.rowcount()
FOR ll_row = 1 to ll_row_count
ls_cust_code = lds_datastore.getitemstring(ll_row,"cust_id")
ls_customer_name = lds_datastore.getitemstring(ll_row,"cust_name")
ls_address = lds_datastore.getitemstring(ll_row,"cust_address")
NEXT DESTROY lds_datastore
一个调用datastore显示数据的示例:
datastore ds_demo //声明
ds_demo= create datastore //实例化
ds_demo.dataobject = "d_demo" // d_demo为已存在数据对象
ds_demo.settransobject(sqlca)
ds_demo.retrieve()
dw_1.dataobject = ds_demo.dataobject // 为可见数据窗口dw_1传递数据
ds_demo.sharedata(dw_1) //