国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

PB通用類庫和業務類庫的設計思想(二)

2024-07-21 02:10:08
字體:
來源:轉載
供稿:網友

二、ufc通用類庫框架
(一)ufc通用類庫簡介
   ufc(user foundation class)類庫是一組powerbulider的對象,它是由許多通用對象組成的基礎類庫。主要包括權限管理對象、錯誤截獲對象、應用程序管理對象、事務管理對象、數據窗口服務對象、窗口對象等。
   類庫主要包括以下幾個包:
1、五個核心包
ufcappsrv.pbl  應用對象服務包,包括應用程序管理對象、字符串操作對象、數值操作對象等。
ufcmain.pbl  通用對象服務包, 包括pb的標準對象的各種擴展對象:窗口、數據窗口、編輯框、圖片按鈕等。
ufcobjsrv.pbl  定制對象服務包, 大部分是一些定制的用戶對象,例如工具條、outlook條等。
ufcdwsrv.pbl  數據窗口服務包,包括各種數據窗口服務,例如過濾服務、查找服務、排序服務、彈出菜單服務等。
ufcwnsrv.pbl  窗口服務包,包括數據窗口上的擴展服務,例如狀態條服務、個性化風格服務等。
2、兩個輔助包
ufctemplate.pbl  模板對象包, 包括各種模板窗口。
ufccommon.pbl    公共業務對象包, 包括mis系統的一些通用業務窗口和數據窗口,例如權限管理窗口、系統參數管理窗口等。
3、可選包(可以根據需要包含)
ufcexternal.pbl   外部擴展對象包,包括各種第三方pb對象,以及api相關對象。
ufcdatabase.pbl   數據庫對象包,包括對各數據庫對象的統一封裝,以及業務帳套的管理。
4、工具包(可以根據需要包含)
ufcreport.pbl  通用報表對象包,提供了一個通用的報表工具。
ufcupdate.pbl  自動升級對象包,提供了一個最新程序上載和更新的工具。
ufcstatistic.pbl   通用數據統計分析圖表包,提供通用的對數據的統計和分析工具,以及圖表顯示。
(二)ufc通用類庫命名規范
1、ufc對象的命名
    所有基礎類庫的對象(包括所有的結構體和全局函數), 其名稱都帶前綴ufc_,加上這個前綴的好處是讓業務對象與類庫對象區別開來, 而不會產生重名的麻煩:      ufc_type_objectname
具體類型說明如下:
     前綴                               描述 
ufc_m_                       menu 
ufc_n_                        standard class user object 
ufc_n_                        custom class user object 
ufc_s_                        global structure 
ufc_u_                        visual user object 
ufc_w_                       window 

例如:             
       例子                             解釋 
ufc_w_base                      所有窗口的基類 
ufc_u_tv                          treeview控件基類 
ufc_u_dw                        datawindow控件基礎類 
ufc_n_dwsrv                   數據窗口服務基礎類 
ufc_n_tr                         不可視的事務對象基礎類 

2、ufc對象實例命名
   所有對象實例采用pb中標準的命名方式, 采用(對象類型縮寫)+(_)+(實例英文描述)
例如:  dw_master ,   w_logon 等。

3、ufc變量命名
   所有變量和pb中默認的命名方式一致, 采用 (作用域)+(類型)+(_)+(變量英文描述)
例如:  gnv_app   li_index   is_username   等。

4、ufc基礎類庫中事件和函數命名
   所有自定義事件(非系統事件), 都采用 (ufc_)+(事件描述)的方式, 例如:  ufc_open
   對于一個事件的前觸發和后觸發, 采用(ufc_pre)+(事件描述)表式前觸發, 采用(ufc_post)+(事件描述)表示后觸發,  例如:  ufc_preopen ,  ufc_postopen。
   對于函數, 采用 (of_)+(函數描述)的方式,  例如 of_getusername() 。

(三)核心包分析
   ufc基礎類庫主要采用窗口、標準用戶對象、定制用戶對象來實現面向對象封裝。主要的服務有:
1、應用程序管理對象(ufc_n_appmanage),實現整個應用程序的管理,以及對應用系統全局變量的封裝。它包含的服務主要有:
   a。系統參數對象(ufc_n_sysparam),提供了對業務系統數據庫中的各種全局參數的訪問。
   b。錯誤日志對象(ufc_n_error), 提供了對系統中各種錯誤的捕獲,最后統一記錄和顯示出錯信息。
   c。事件日志對象(ufc_n_eventlog),提供了每個系統登錄用戶的登錄細節,以及對系統的操作情況。
   d。系統序列號對象(ufc_n_sequence), 提供定義系統中各種編號的規則定義,以及各種編號的自動生成。
   e。權限管理對象(ufc_n_rightmanage), 提供了一個統一的權限管理對象,通過它來獲取登錄用戶對每個模塊的訪問權限(ufc_n_right),所有權限感應對象根據傳遞給它的ufc_n_right來初始化其自身表現。

2、窗口對象和窗口服務對象
   主要的幾個窗口基類說明:
ufc_w_base  --是所有窗口的基類,封裝了一些與業務無關的通用功能。
-ufc_w_master --為了擴展一些api效果,在ufcmain.pbl或ufcexternal.pbl中實現。
--ufc_w_frame  --mdi窗口基類
---ufc_w_navigateframe --導航式的mdi窗口模板
--ufc_w_main  --業務窗口基類,實現了與數據窗口的關聯和事件映射。
---ufc_w_sheet  --業務子窗口
--ufc_w_popup    --popup風格窗口基類
--ufc_w_response --response風格窗口基類
    主要的窗口服務有:
      a。狀態條服務, 為pb中的mdi窗口提供多功能的狀態提示條。
      b。工具條服務, 提供對pb中的標準工具條的操作界面。
      c。桌面配置服務, 對應用程序的整體外觀進行配置,包括導航條、狀態條、工具條的開關,窗口位置的保存等。
      d。墻紙服務,提供在應用程序的mdi區顯示背景圖片。
      e。個性化偏愛服務, 提供了對窗口配置的自動讀取和設置。

3、數據窗口對象和數據窗口服務
    整個基礎類庫就是對數據窗口的擴展,為了不導致數據窗口對象的過度膨脹,把各種服務功能獨立成一個服務對象,而在數據窗口中采用引用服務對象的方式來實現。 其中主要的數據窗口服務有:
    a。排序服務(ufc_n_dwsrv_sort)  b。過濾服務(ufc_n_dwsrv_filter)
    c。查詢服務(ufc_n_dwsrv_query)  d。檢索服務(ufc_n_dwsrv_retrieve)
    e。自動保存服務(ufc_n_dwsrv_autosave) f。數據導出服務(ufc_n_dwsrv_export)
    g。數據導入服務(ufc_n_dwsrv_import) h。下拉查找服務(ufc_n_dwsrv_dropdownsearch)
    i。鏈接服務(ufc_n_dwsrv_linkage)  j。多表服務(ufc_n_dwsrv_multitable)
    k。彈出菜單服務(ufc_n_dwsrv_popmenu) l。彈出選擇服務(ufc_n_dwsrv_popselect)
    m。行管理服務(ufc_n_dwsrv_rowmanage) n。行選擇服務(ufc_n_dwsrv_rowselect)
    o。重復列判斷服務(ufc_n_dwsrv_repeate) p。要求列判斷服務(ufc_n_dwsrv_required)
    q。初始化列服務(ufc_n_dwsrv_initcolumn)   r。改變大小服務(ufc_n_dwsrv_resize)
    s。日歷服務(ufc_u_calendar)  t。計算器服務(ufc_u_calculate)
    u。錯誤記錄服務(ufc_n_error)  v。彈出按鈕服務(ufc_u_popbutton)

4、全局服務對象
   主要有以下服務對象:
   a、字符串操作對象(ufc_n_string) --包括對字符串的分割、全局替換等。
   b、日期時間操作對象(ufc_n_datetime) --包括對日期時間的增減、日期字符串的轉換等。
   c、數值操作對象(ufc_n_numerical) --包括對數值的轉換,包括金額的大小寫轉換等。
   d、類型轉換對象(ufc_n_conversion) --提供對各種枚舉與基本類型之間的轉換。
   e、平臺對象(ufc_n_platform) --提供對操作系統平臺的支持。
   f、sql對象(ufc_n_sql) --對sql語句進行解析和拆分


類庫的基本框架大體上就是這樣, 它們之間具體怎么關聯的, 請聽下回分解。

(待續)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 陇西县| 沙坪坝区| 临邑县| 彭阳县| 塔城市| 探索| 旌德县| 石台县| 边坝县| 黄大仙区| 汉川市| 毕节市| 洮南市| 延吉市| 恭城| 寿阳县| 灯塔市| 大同市| 麻阳| 尼玛县| 镇赉县| 浠水县| 贵阳市| 肇州县| 永德县| 桐庐县| 城口县| 浏阳市| 临清市| 青阳县| 荆门市| 鹿邑县| 呼玛县| 简阳市| 康定县| 凉城县| 烟台市| 阳西县| 新晃| 昆明市| 冀州市|