【功能說明】
此元件使用於web網頁,用於自定義資料的查詢條件。類似於WebNavigator的Query功能,但比WebClientQuery的查詢設定更加靈活,功能更齊全。它也可以配合WebRefVal,WebComboBox與WebDateTimePicker等作為查詢條件的輸入元件。並可組合User輸入的條件來自動產生Query的SQL語句,並可作為一般查詢表單與報表的條件輸入對話框,不必另外再設計任何頁面與格式。
【元件屬性】
(ID)(名稱)(string)
元件名稱,用於識別該組件。
DataSourceID(資料源)(string)
要查詢的資料源(WebDataSource),執行查詢時會對本元件對應的資料源做SetWhere的動作,代表對後端下達Where的指令。
Colomns(查詢欄位明細)(collection)
查詢條件的各欄位明細,每個查詢欄位有以下屬性:
Caption(欄位抬頭)(string):設定每個查詢條件的抬頭。當你先選擇
Column欄位名稱後,系統會自動抓資料字典設定的內容。
Column(欄位名稱)(string):設定要做查詢條件的欄位名稱。
ColumnType(欄位類別)(enum):設定輸入元件的類別,共有以下6種類
別:
ClientQueryTextBoxColumn ( WebTextBox ):輸入元件為一般的 TextBox ;
ClientQueryComboBoxColumn ( Web DropDownList ):輸入元件為 Web DropDownList ,還須另外設定 WebRefVal 屬性來搭配此 DropDownList 型態 ( 定義在 WebRefVal 中 ) 。
ClientQueryRefValColumn ( WebRefValBox ):輸入元件為 WebRefValBox ,如果選擇此種類型,還應設定 WebRefVal 屬性。
ClientQueryCalendarColumn ( WebDateTimePicker ):輸入元件為WebDateTimePicker 。
ClientQueryRefButtonColumn ( WebRefButton) :輸入元件為 WebRef Button ,如果選擇此種類型,還應設定 WebRef Button 屬性。
ClientQueryC heckB oxColumn ( WebCheckBox) :輸入元件為 Web CheckBox ,如果選擇此種類型, 這裡要注意: CheckBox 只能是
Bool 或 Char( Varchar) 的欄位 , bool=True/False, Char( Varchar) 只能是 Y/N 。
Condition(條件關係)(enum):Or或者And。設定各查詢條件的組合關係。
WebRefVal(對應的WebRefVal)(string):設定關聯的WebRefVal,此屬性
用在ColumnType為ComboBox與RefValBox時。
NewLine(是否換行)(bool):True或者False。如果為True,則此輸入元件
會換行,如果為False,則此控制項與前一個控制項在同一行(在前一個的
方)
Operator(查詢條件)(enum):選擇查詢條件的方式,有=,!=,<,>,>=,<=,%,%%等。
TextAlign(文字對齊)(enum):設定輸入元件的對齊方式。
Width(顯示寬度)(int):設定輸入元件的寬度大小。
DefalutValue(預設值)(string):設定輸入元件的預設值內容,可以是常數或系統變數或設定為一個自定函數等。
Font(字型)(font)
設定各輸入元件的字體。
ForeColor(標題顏色)(color)
各輸入元件的標題的顏色。
GapHorizontal(水平間距)(int)
各輸入元件之間的水準間距,以Pixed為單位。
GapVertical(垂直間距)(int)
各輸入元件之間的垂直間距,以Pixed為單位。
KeepCondition(保留條件)(bool)
設定是否需要保留上次User輸入的查詢條件,如果為True,則保留,當User再次打開查詢時,會自動將上次設定的條件恢復;如果為False則不會。
TextColor(輸入顏色)(color)
User輸入條件時的字體顏色。
InnerTable(表格線)(bool)
可以在對應的Panel上自動畫上Table表格線。
【事件】
此組件無事件。
【功能函數】
Execute():開啟查詢頁面,另開一頁面的方式來讓User查詢。
Execute(PanelObject):將查詢欄位顯示在指定的PanelObject上並讓User來輸入條件,最後會自動組成SQL的Where語法,並透過配合的WebDataSource 送往Server端,重新取得資料。
Show(PanelObject):將查詢欄位顯示在Panel的元件上,這樣就會直接對此Panel顯示所有查詢欄位。
Clear(PanelObject):可以將此Panel上所有的查詢欄位設定的查詢內容清除,即清除查詢條件。
String GetWhere ():
让设计者取得 ClientQuery 所得到的 SQL 語句,自行組織 SQL 语句。
String GetWhere (Panel):
从 Panel 中 取得组好的查询 Where 语句。
String GetWhereText():
可以取得各個查詢欄位的Captions與條件內容,並以sysmsg.xml中的多語言取得條件的翻譯,如" 客戶編號 等於 2101 ,而且 訂單日期 大於1/1/2007",而且 訂單日期 小於 10/31/2007" 等條件說明。
【其他說明】
當你使用WebClientQuery.Execute() 時,如果User按下"OK"後資料沒出來的可能原因是因為少了一行DataBind(),如下:
WebClientQuery1.Execute(Panel1);
wdvMaster.DataBind(); //用此來讓wdvMaster資料與各元件進行資料綁定。
Converted from CHM to HTML with chm2web Pro 2.85 (unicode) |