



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
本文格式為Word版,下載可任意編輯——在PB中巧用下拉數(shù)據窗口在PB中巧用下拉數(shù)據窗口
PowerPB提供了下拉數(shù)據窗口(DropDownDataWindow),使數(shù)據窗口更靈活、更便利。在用數(shù)據窗口進行數(shù)據錄入時,經常要用到代碼錄入,即對經常輸入的某些值設置代碼,錄入時直接錄入代碼即可。例如,有兩個表,主表main_table和代碼表code_table,錄入時主表中需要代碼表中的數(shù)據,但不允許錄入不在代碼表中的數(shù)據。下面介紹如何使用下拉數(shù)據窗口實現(xiàn)上述功能。
靜態(tài)設計下拉數(shù)據窗口
首先對主表和代碼表設計兩個數(shù)據窗口dw_main和dw_code,其中dw_main包括字段id、name、sex、city和unit;dw_code包括字段code和data。假設unit字段有幾個常用值可使用代碼錄入,則在設計dw_main時,用鼠標右鍵點擊字段unit,在下拉菜單中選擇Properties...(屬性),則系統(tǒng)會彈出unit列的屬性對話框;在其中選擇Edit(編輯)項,并在Style(風格)下拉列表框中選擇DropDownDW項;然后在下面的Options(選項)框中作具體的選項配置:在DataWindow下拉框中選擇已設計好的代碼數(shù)據窗口dw_code作為下拉數(shù)據窗口;在DisplayColumn(顯示列)下拉框中選擇code字段;在DataColumn(數(shù)據列)下拉框中選擇data字段,這表示顯示的是code字段的內容,而實際存于表main_table中的是data字段的內容。至此,數(shù)據窗口設計完畢。設計完數(shù)據窗口后,需要建立一個數(shù)據錄入的窗口(window),名字為w_input;在窗口w_input上建立一個數(shù)據窗口的控件dw_1,其屬性DataWindowObjectName設為dw_main,并在w_input的open事件中寫入以下語句:dw_1.SetTransObject(SQLCA)dw_1.Retrieve()
這樣,在執(zhí)行此窗口時,在unit字段上就會出現(xiàn)一個下拉列表框,列出了表code_table中所有的內容,用戶可以用鼠標選擇錄入。
動態(tài)改變SQL語句在上面的例子中,假使表main_table中的字段city也需要代碼錄入,則還需為city字段新建一個表,這樣很麻煩,由于有幾個字段需要代碼,就需有幾個表與之對應。我們可利用下拉數(shù)據窗口的一些特點來解決這一問題??梢韵鄳匦薷谋韈ode_table的結構,加一個字段field(char(30)),以存儲需要代碼的字段名,這樣,就可利用SQL語句對之進行檢索,以得到某字段的所有代碼。具體實現(xiàn)如下:重新設計數(shù)據窗口dw_code,把field字段加上并使它不可見(由于用戶不需要見到該字段的內容),數(shù)據窗口dw_main和窗口w_input的設置同上,只是在數(shù)據窗口dw_1中需要進行一些編程。在ItemFocusChanged事件中,參與如下代碼:Stringls_sqlIntegerrtncode
DataWindowChildfield_child
//dwo為該事件的參數(shù),其name屬性的值表示獲得焦點的字段名ChooseCaselower()Case‘city'//city字段獲得焦點
//獲得city字段下拉數(shù)據窗口的句柄
rtncode=dw_1.GetChild(\
Ifrtncode=-1ThenMessageBox(\//設置事務對象
field_child.SetTransObject(SQLCA)//獲得下拉數(shù)據窗口的SQL語句ls_sql=field_child.GetSQLSelect()//重新設置SQL語句,加上Where條件
ls_sql=ls_sql+\field_child.SetSQLSelect(ls_sql)//取得滿足條件的數(shù)據field_child.Retrieve()Case‘unit'unit字段獲得焦點
//獲得unit字段下拉數(shù)據窗口的句柄
rtncode=dw_1.GetChild(\……(此處編程同上)EndChoose
動態(tài)設置取值參數(shù)上例中采用動態(tài)改變SQL語句,其實,下拉數(shù)據窗口有一種更簡單的方法就是設置取值參數(shù)(RetrievalArguments),但這種方法適合從固定表中取數(shù)據,假使是從動態(tài)表(即表名不固定)中取數(shù)據,則只能通過改變SQL語句來實現(xiàn)。
修改數(shù)據窗口dw_code,在圖形方式下,選擇Design菜單下的RetrievalArguments…,設置取值參數(shù)的類型為String,名字可任取,假設為field_data。然后在窗口下面的Where標簽中選擇Column為\為\為取值參數(shù)的值:field_data(變量名前加冒號表示該變量的值),至此,取值參數(shù)設置完畢。同上例,也需要在窗口w_input中的數(shù)據窗口控件dw_1中的ItemFocusChanged事件中進行如下編程:Integerrtncode
DataWindowChildfield_child
//dwo為該事件的參數(shù),其name屬性的值表示獲得焦點的字段名ChooseCaselower()Case‘city'//city字段獲得焦點//獲得city字段下拉數(shù)據窗口的句柄
rtncode=dw_1.GetChild(\
Ifrtncode=-1ThenMessageBox(\//設置事務對象
field
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 培黎職業(yè)學院《世界通史合》2023-2024學年第二學期期末試卷
- 北京政法職業(yè)學院《自動變速器》2023-2024學年第二學期期末試卷
- 全國粵教清華版初中信息技術八年級上冊第1單元第4節(jié)《“無所不能”的模塊》教學設計
- 頂管穿越粉砂層施工方案
- 安寧陽臺防水工程施工方案
- 無錫重夯試驗段施工方案
- 太空旅游服務預訂合同
- 智能養(yǎng)老設備租賃合同
- 2025年小學三年級語文標準教案《禮物》
- 電視劇絕對計劃歌曲
- 中央經濟會議2024原文及解釋
- QB-T 5823-2023 工坊啤酒機械 發(fā)酵罐
- 新高考化學2024備考選擇題高頻熱點專項突破16 弱電解質的電離平衡
- 2021年古包頭市昆都侖區(qū)水務公司招聘考試試題及答案
- 關于中小企業(yè)“融資難”問題的對策研究-基于臺灣經驗和啟示
- 固體廢棄物管理培訓
- 硬件工程師職業(yè)生涯規(guī)劃
- 【高新技術企業(yè)所得稅稅務籌劃探析案例:以科大訊飛為例13000字(論文)】
- 提升管理層領導力的酒店管理培訓課程
- 思維導圖在初中英語復習課中的應用研究的中期報告
- 絕對干貨!國有企業(yè)總經理辦公會決策事項及總經理職責清單
評論
0/150
提交評論