Describe()
Describe()
目錄
功能:返回數據窗口控制項結構方面的指定信息,包括 DataWindow 對象以及數據窗口對象中其他對象的屬性取值。數據窗口中的每個列、每個標題等等都是對象,各自都有一組描述其特徵的屬性。數據窗口對象的屬性,在 Describe()函數的參數
中可以通過字元串指定要得到其值的一組屬性,該函數將會把它們的值作為一個字元串返回。使用Describe()函數也可以計算表達式的值
參數:dwcontrol 數據窗口控制項名
propertylist 屬性列表,是個字元串,由要查看其取值的一個或多個屬性或表達式組成。屬性以及表達式之間使用空格分隔,這裡的屬性指數據窗口對象的屬性
返回值:String 該函數返回一個字元串,這個字元串由對應於 propertylist 中各屬性的具體取值構成,各屬性值之間使用換行字元 ~n分隔。如果屬性列表中包含了無效的項 比如拼錯了屬性名或寫錯了表達式 那麼Describe() 函數在相應項的位置返回一個驚嘆號 ! ,並忽略隨後的所有項;當某個屬性沒有值時 Describe()函數在相應位置返回一個問號 ? ,如果某個屬性的值是個問號 ? ,那麼Describe()函數將在該項位置返回問號 並把問號放置到引號中,通常為單引號' 。如果任何參數的值為NULL,則Describe()函數返回NULL
用法:使用 Describe()函數可以深入理解數據窗口的結構。例如:我們可以查到數據窗口都具備哪些區域,也有稱做帶Band 的叫法,各列的數據類型是什麼等。使用Describe()函數也能夠得到數據窗口當前的屬性取值之後,可以使用數據窗口控制項Modify() 函數進行所需的修改
應用程序中經常使用 Describe()函數得到數據窗口當前的 SELECT 語句,然後根據需要進行修改,比如增加 WHERE 子句 修改排序方式等,當開發人員使用數據窗口畫筆以圖形化方式創建數據窗口對象,選擇了操作資料庫的數據源后,實際上就定義了某個 SELECT 語句,在保存數據窗口對象時 PowerBuilder 數據窗口控制項的屬性保存的不是標準的 SQL SELECT 語句,而是以它自己定義格式的 SELECT 語句,稱做PBSELECT語句,與數據窗口對象保存在一起。當應用程序使用 Describe() 函數得到Table.Select 屬性的值時,如果應用程序已經連接到資料庫上,那麼Describe()函數返回SQL SELECT 語句,如果應用程序尚未連接到資料庫上,那麼Describe()函數返回 PBSELECT 語句。