PB DataWindow中獲取DataWindowChild的SQL
在PowerBuilder(PB)的DataWindow中,可以通過(guò)DataWindowChild來(lái)實(shí)現(xiàn)下拉數(shù)據(jù)窗口(DropDown DataWindow)的功能。本文將介紹如何在PB DataWi
在PowerBuilder(PB)的DataWindow中,可以通過(guò)DataWindowChild來(lái)實(shí)現(xiàn)下拉數(shù)據(jù)窗口(DropDown DataWindow)的功能。本文將介紹如何在PB DataWindow中獲取DataWindowChild的SQL語(yǔ)句以及使用的GetSQLSelect()方法獲取SQL語(yǔ)句。
獲取DataWindowChild的SQL
在PB中,可以使用dw_("Unit_id", fld_child)方法獲取Unit_id字段名下拉數(shù)據(jù)窗口的句柄。如果返回值rtncode等于-1,則說(shuō)明不是下拉數(shù)據(jù)窗口,可以通過(guò)MessageBox進(jìn)行提示。
接著,需要設(shè)置事務(wù)對(duì)象,并通過(guò)fld_()方法獲取DDDW(DropDown DataWindow)的SQL語(yǔ)句。為了去除SQL語(yǔ)句中的Where條件子句,可以使用Lower()函數(shù)將SQL語(yǔ)句轉(zhuǎn)換為小寫,并通過(guò)處理方式根據(jù)具體情況進(jìn)行調(diào)整。
如果SQL語(yǔ)句中存在Where條件子句,則可以使用Pos()函數(shù)找到Where關(guān)鍵字的位置,并通過(guò)Left()函數(shù)重新設(shè)置SQL語(yǔ)句中的Where條件子句。
最后,可以通過(guò)dw__id[GetRow()]方法獲取當(dāng)前dept_id選定值,并將其作為Where條件重新設(shè)置SQL語(yǔ)句。最終,使用fld_(ls_sql)方法重新設(shè)置SQL語(yǔ)句,并通過(guò)fld_()方法取得滿足條件的數(shù)據(jù)。
獲取DataWindowChild關(guān)聯(lián)的DataWindow名稱
在PB中,可以通過(guò)DW Control ("")方法獲取DataWindowChild關(guān)聯(lián)的DataWindow的名稱。
如果想要修改DataWindowChild關(guān)聯(lián)的DataWindow的名稱,可以使用DW Control (" of DataWindow used as dddw")方法進(jìn)行修改。
通過(guò)以上方法,就可以在PB DataWindow中獲取DataWindowChild的SQL語(yǔ)句,并獲取關(guān)聯(lián)的DataWindow的名稱。