PFC服务简介


概要:

这一章主要介绍了什么是PFC的Services ,以及如何使用它们。

一、应用程序服务

PFC提供了以下各种应用程序Services :

DataWindow caching

Debugging

Error

Application preference

Most recently uesed object

Security

Transaction registration

你必须通过n_cst_appmanager(应用程序管理器)来控制这些Services (这些Services实际上是应用程序管理器的是数据成员)。应用程序管理器(application manager)通过调用成员函数来开启与关闭Services 。由于它们在应用程序管理器的范围内有效。而应用管理器是全局变量,因此你可以在你的应用程序的任何地方是使用应用程序Services 。

1. DataWindow caching service

概要:

Datawindow caching service为Datawindow提供了数据缓冲。它将数据保存在内存中,从而减少了程序访问数据库的频率,加快了程序的执行速度。Datawindowcaching service支持如下的数据源:

l_ Datawindow对象,它的数据可以来自于数据库表也可以来自存储过程。

l_ SQL语句

l_ Datawindow控件

l_ DataStore对象

l_ 数组中的数据

l_ 文件

PFC使用Powerbuilder的Datastore来实现Datawindow caching service 。它对的对象是n_cst_dwcache 。

PFC的代码实际只在父类对象中这本书讲述的都是扩展类的对象,就像n_cst_dwcache 。而实际上PFC的代码全在父类的对象中(pfc_n_cst_dwcache)。

使用方法

使用DataWindow caching 可以将数据库访问频率降到最低,可以加快程序运行速度。

2 开启DataWindow caching

l_ 调用n_cst_appmanager的of_SetDWCache函数

gnv_app.of_SetDWCache(TRUE)

(1) 使用Datawindow caching :

(1). 调用of_Register函数进行数据缓存,同时依据不同的数据提供相应的参数。

l_ 缓存Datawindow对象从数据库中检索出的数据时:你需要传递标识符(identifier)、事务对象、Datawindow对象名、其他参数(如果存在的话)。

l_ 缓存SQL语句从数据库中检索出的数据时:你需要传递标识符(indentifier)、事务对象、SQL语句。

l_ 将数据缓存到数组中:传递标识符(identifier)、Datawindow对象名、数据。

l_ 缓存DataWindow控件中的数据:传递标识符(identifier)、Datawindow控件。

l_ 缓存DataStore中的数据:传递标识符(identifier)、DataStore对象。

l_ 缓存文件中的数据:传递标识符(identifier)、文件名。

(2) 你可以使用函数of_IsRegistered(参数是对象本身),确定DataWindow对象是否已经在caching service中注册了。

(3) 调用函数of_GetRegistered函数访问已经缓存的数据。

Gnv_app.inv_dwcache.of_GetRegistered(攄_emplist敚琲ds_datastore)

Ids_datastore.ShareData(dw_emplist)

(4) 调用函数of_Refresh检索已经缓存数据的DataWindow 。

(5). 调用函数of_UnRegister函数停止数据缓存服务。

(6) (可选)调用n_cst_appmanager的of_SetDWCache函数关闭DataWindow cachi ng service 。

gnv_app.of_SetDWCache(FALSE)

通常你没必要显示的关闭DataWindow caching service 。PFC在删除对象n_cst_dwcache时会自动的关闭它。

2. Debugging service

概要:

Debugging service 在应用程序遇到错误时会自动显示错误信息。PFC的消息路由当发现需要调用的事件不存在时便会使用Debugging service显示出错信息。

重要说明: PFC debugging service 只是一个开发工具。在用户的应用程序中不要开启它。

使用方法

使用debugging service 可以帮助你在PFC的开发过程中解决问题。

(1) 调用n_cst_appmanager的of_SetDebug函数开启Debugging service 。

gnv_app.of_SetDebug(TRUE)

(2) PFC的对象首先检测应用程序的debugging状态,然后在适当的情况下显示错误信息。

(3) (可选)调用n_cst_appmanager的 of_SetDebug函数关闭Debugging service。

gnv_app.of_SetDebug(FALSE)

多数情况下,你不需要显示的关闭Debugging service 。

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus