2010-06-16 63 views
2

我有一個數據窗口(讓它的名字爲父窗口),我在其中顯示另一個數據窗口(讓我們稱之爲子窗口)作爲下拉列表。父級需要兩個檢索參數,名爲org_idpccc_id。該孩子接受一個名爲org_id的檢索參數,該參數應與父級的org_id具有相同的值。現在我想鏈接這兩個檢索參數。powerbuilder:將一個下拉數據窗口鏈接到它的父窗口

我該怎麼做?

回答

2

首先,我想確認您是使用所謂的下拉數據窗口(通常稱爲dddw)來實現關係? Dddw在PB中非常常見,所以在聯機幫助或其他地方找到示例應該不難。

如果你實際上已經通過dddw's做了,那麼我假設dddw代表父數據窗口結果集中的一列。在窗口中,您可以編寫檢索dddw的代碼。這是在很多應用程序中完成的,有時在窗口的初始化事件或父數據窗口控件的事件中完成。

在許多情況下,dddw顯示代碼表數據並且不需要參數,並且可以設置爲在其屬性中自動檢索。如果dddw後面的數據窗口需要參數,請在幫助文件中查找datawindowchild。一旦你掌握了它,你就可以操作dddw的底層dw。查看方法getChild()的幫助文件。

+3

要添加,您需要確保在DataWindowChild(您將從GetChild()獲取的句柄*)*之前執行Retrieve()。只要將相同的org_id傳遞給dwc的Retrieve(),就如同您的父代一樣。 – Terry 2010-06-16 15:49:06

1

在家長Window..Item重點變成事件Getcolumname()的 該列的下拉數據窗口...寫信下面的代碼..

integer morderid 
DataWindowChild dwc_child 

morderid = dw_parent.GetColumnNumber(dw_parent.getrow(),"ord_id") 

dw_parent.GetChild("<field name>", dwc_child) 
dwc_child.SetTransObject(SQLCA) 
dwc_child.Retrieve(morderid) 

morderid = dw_parent.GetColumnNumber(dw_parent.getrow(),"ord_id") 

保證,汽車在下拉檢索屬性關閉.Datawindow。 確保您爲該下拉數據窗口提供檢索參數。

+0

感謝您的回答。 +1,但我不再使用Powerbuilder :-)。希望有人找到這個有用的答案。 – 2011-06-22 11:20:32