嵌套的DataWindow需要对特定报表对象进行动态排序

时间:2013-04-12 13:36:31

标签: powerbuilder

如何在嵌套的DataWindow中对特定报表对象进行动态排序?

1 个答案:

答案 0 :(得分:0)

我认为这可以解决您的问题。首先如果你有一个复合DataWindow(里面有更多的DataWindow),你必须首先得到“子”DataWindow(这是你的复合DataWindow中的DataWindow之一)。获得此引用后,您可以像普通的DataWindow一样对其进行排序。假设您有一个名为:dw_report

的复合DataWindow
long    ll_ret  = -7
string  ls_sort
DataWindowChild dwc_child

dw_report.GetChild("myChildDW", dwc_child)

dwc_child.SetTransObject(SQLCA)
dwc_child.Retrieve()

ls_sort = "Column1 ASC"
ll_ret  = dwc_child.SetSort(ls_sort)
ll_ret  = dwc_child.Sort()

让我们详细了解一下:

长ll_ret = -7 string ls_sort DataWindowChild dwc_child

这里你得到了孩子的参考。重要的是,myChildDW是子DataWindow的名称而不是Report name或dataobject

dw_report.GetChild("myChildDW", dwc_child)

如果您已经检索过数据,则不需要这两行

dwc_child.SetTransObject(SQLCA)
dwc_child.Retrieve()

假设你有一个列名:Column1,你想按升序排序

ls_sort = "Column1 ASC"
ll_ret  = dwc_child.SetSort(ls_sort)
ll_ret  = dwc_child.Sort()

我希望这会有所帮助:)祝你有愉快的一天!

溴。的Gabor