表頭
字段 類型 長度 標題頭
id char
編號
name char
姓名
old integer 年齡
sex char
性別
status char
狀況
表aaa
的內容
id name old sex status
小王
女 導游會英語
小李
男 個體收入高
小林
女 會計
小黃
男 電腦專家
小鄭
女 教師
在數據窗口中新建立兩個數據窗口數據來源都為aaa表要求如下
數據窗口名
字段
數據源形式
顯示格式
SQL過濾語句
Ad
Id
name
old
sex
SQL Select
表格
aaa
sex
=:sex and
aaa
old
<=:old
Ad
Id
name
old
sex
status
SQL Select
自由格式
aaa
id
=:id
注意寫SQL過濾語句是在數據窗口中先點中Id和 name兩個字段在窗口下方按Where標簽頁按Colume並在Cloume的下拉條中選中aaasex在Valua的一欄中填入 :sex注意這裡的sex前面有一冒號再在Cloume的下拉條中選中aaa old在Operator欄選<=在Valua的一欄中填入 :old按窗口上方的Desion菜單選Retriveal Arguments在Name一欄填sex注意這裡的sex前面沒有冒號type一欄選String再在Name一欄的下一行填oldtype一欄選number同時為讓個人資料的表格數據按年齡升序排列在窗口下方按Sort標簽頁將左邊的ID字段拖到右邊按Syntax標簽頁可看到自動生成的SQL語句
SELECT aaaid aaaname aaaold aaasex FROM aaa
WHERE ( aaasex = :sex ) AND ( aaaold <= :old ) ORDER BY aaaold ASC
這裡SQL語句的意思是選取性別=變量sex年齡<=變量old的記錄只顯示幾個字段盡管在Pb中這些語句是通過拖動圖標自動生成但看一看了解其工作原理還是有好處的
三.數據的連動
可以用鼠標讓記錄的連動的窗口制作如下圖這裡主要用到函數getitemString(getrow()) 它可取得雙擊鼠標當前行的左邊第一個字符串即數據窗口內當前行id字段的值並賦給實例變量tttttttt再傳給數據窗口二的SQL的過濾語句Where id=:id就可在數據窗口二中顯示id=tttt的記錄在這兩個數據窗口之間變量tttt從數據窗口一跑到數據窗口二起到象橋梁般的連接作用數據窗口一即dw_的鼠標單擊事件的腳本如下
ttttt=dw_getitemString (getrow())
sle_text=ttttt
bdw_settransobject(sqlca)
bdw_retrieve(bttttt)
dw_settransobject(sqlca)
dw_retrieve(ttttt)
[] []
From:http://tw.wingwit.com/Article/program/PB/201311/24570.html