PB中客房机从服务器获取系统时间

Author: 柯建勋 Date: 1999年 第32期 13版

    PowerBuilder开发常采用Client/Server模式,而此种模式下对于系统时间的读取操作要注意前台与后台的分别。PowerBuilder中有函数today()和time()可以分别返回当前机器的日期和时间,虽然用户在自己的PC机上可以任意地修改系统的日期和时间,而在应用系统中就得不到正确的当前日期和时间了。在Client/Server结构中,有一台机器是用作数据库服务器的,一般用户没有权限修改时间,但我们可以读取时间作为系统时间。
    以Oracle 数据库为例,定义函数f_get_current_time() 返回datetime变量。函数脚本如下:
    datetime ldt_cur_time
    select sysdate
    into :ldt_cur_time
    from sys.dual;
    if sqlca.sqlcode <> 0 then
    messagebox(″出错信息″,″读系时间出错!″,Exclamation!)
    end if
    return ldt_cur_time