2012-09-18 113 views
1

使用PowerBuilder 11.5。PowerBuilder dropdowndatawindow插入更改顯示列值

我有一個datawindow(dw)消耗dropdowndatawindow(dddw)。我在dw的構造函數中執行dddw.insertrow(0),然後執行dw.insertrow()。

我遇到的問題是dw中的dddw控件的「顯示列」的值在某個時刻正在改變爲「數據列」的值,即生成的應用程序正在顯示數據(主鍵)而不是格式化的字符串值(我選擇的「顯示列」)。

我也檢索插入和檢索調用後,「顯示列」屬性的值,它仍然定義爲我最初設置它(即不變),但是當數據顯示時,「數據顯示「列」值。

任何指向這種情況的原因?

感謝

+0

您確定dw actualy中的列值與dddw中的一行值匹配嗎?你在dddw做了一些動態過濾嗎? – Seki

+0

dddw是否檢索任何行?當你把它放下時它有什麼? –

+0

@HughBrackett是的。我通過完全消除dddw來解決問題,並在Column控件(文本框)中顯示一個值。 – Usering

回答

1

PB顯示「數據」,而不是「顯示」時,它無法找到確切的匹配 DW的價值DDDW的數據。

想一想,你的「數據列」有「char(...)」類型嗎?

可能的解決方案之一 - 切換到數字(我prefere「長」)類型而不是字符串作爲「數據」。 PB更精確的數字。

+1

爲什麼字符串數據不匹配而不是數字? – Seki

+1

「數據列」的類型是long,「顯示列」是一個字符串(計算字段)。問題是dw的值傳遞給dddw,dddw的SELECT語句檢索相應的記錄,但dddw仍然顯示「數據列」而不是「顯示列」。 – Usering

+1

@Alex Tabone,我不使用autoretrieved DDDW's。 Imho,首選方法是在更改DW中的項目之前在DDDW中插入新行。 – Maximus