進入PowerBuilder工作區﹐點取PowerBar上User Object畫筆﹐彈出“Select User Object”對話框。選擇“New”按鈕﹐彈出“New User Object”對話框。選擇Class類Custom用戶對象﹐單擊“OK”按鈕﹐進入到用戶對象工作區。選取選單項File下的Save選單項﹐彈出“Save User Object”對話框﹐輸入“u─sls”﹐然后點擊“OK”按鈕﹐保存該用戶對象。
為用戶對象u─sls的constructor事件編寫處理程序﹕
transaction mytransaction
mytransaction=CREATE transaction
mytransaction.dbms=〞odbc〞
mytransaction.dbparm=〞ConnectString=′DSN=Powersoft Demo DB V6;〞&+〞UID=dba;PWD=sql′ 〞
創建用戶對象函數在查詢時所需的數據窗口對象dw─rsda(假定已創建了Powersoft Demo DB V6庫rsda(bh,xm,xb,bm,…)表)﹐進入PowerBuilder工作區。點取PowerBar上Data Window畫筆﹐彈出“Select DataWindow”對話框。點擊“New”按鈕﹐彈出“New DataWindow”對話框﹐在“DataSource”選擇框中選擇Quick Select﹐“Presentation Style”選擇框中選擇Grid。點擊“OK”按鈕﹐彈出“Quick Select”對話框﹐選取表rsda和表中相應的列(bh,xm,xb,bm)。按下“OK”按鈕﹐進入數據窗口工作區﹐存此數據窗口為“dw─rsda”。
打開已創建好的用戶對象u─sls。在用戶對象工作區點取選單項Declare下的“User Object Functions”選單項﹐彈出“Select Function in User Object”對話框。單擊“New”按鈕﹐彈出“New Function”對話框。在此對話框中定義函數的參數及返回值。定義函數名為﹕f─rsda﹐函數返回值為﹕string。點擊“OK”按鈕﹐進入函數編程工作區﹐編寫程序如下﹕
在PowerBuilder環境下﹐點取PowerBar上的Web.PB Wizard畫筆。輸入或瀏覽選擇Web.PB要訪問的PowerBuilder服務器應用名后﹐點擊“Next”按鈕。在彈出的窗口中選擇所需的用戶對象u─sls﹐然后點擊“Next”﹐在彈出的窗口中選擇所需的用戶對象函數f─rsda。然后點擊“Next”﹐在彈出的窗口中分別作如下的選擇﹕在Select the program interface框中選擇“Internet Server API(ISAPI)”﹐在Enter the URL path for CGI program框中輸入“/scripts”﹐在Select the HTML style框中選擇“Anchor”。然后點擊“Next”按鈕﹐在彈出的窗口中分別作如下的選擇﹕在位置框中輸入“C:\winnt\pbweb.ini”﹐在Enter Server Alias Section框中輸入“Internet”﹐在Driver框中選擇“Winsock”﹐在Application框中輸入“10099”﹐在Location框中輸入“202□194□168□88”。然后點擊“Next”按鈕﹐在彈出的窗口中﹐在HERF text框中輸入“人事檔案查詢”﹐在Specity location and name of HTML file框中輸入“c:\intepub\wwwroot\rsdaweb.htm”。然后點擊“Next”按鈕﹐在彈出的窗口中點擊“Finish”。到此為止﹐能夠訪問PowerBuilder服務器應用中用戶對象u─sls上函數f─rsda的HTML頁面已經完成。