-
Miguel Leeuwe
- PowerBuilder
- Wednesday, 21 November 2018 03:16 PM UTC
In the past, when doing some dynamic translations in my code, I had an application that would drill down from Windows to all objects on it, the objects and datawindows, reports/ ddw's and nested dddw's or reports.
One of the problems I had was that with nested reports or dddw's there was no way to get the child.
A trick I used for that was to make PB "think" that the dw type was grid (anything else then tabular/freeform) and then getChild() would work.
(See https://pbbraindump.wordpress.com/2008/05/09/nested-report/ all the way down).
Can we get GetChild() to work on any (nested) dw-type?
cheers, Miguel
------
I know it’s an old post, but here it is:
From TekTips:
pgaec (Programmer)30 Jan 04 01:23
Source: http://www.justpbinfo.com/pbtips/getchild-nested.asp
——————————————————————————-
Getchild() provides a reference to a child DataWindow or to a report in a composite DataWindow, which you can use in DataWindow functions to manipulate that DataWindow or report.
According to the definition above, a call to GetChild ( ) for the nested report that is part of a tabular (or other) DataWindow fails and the function returns -1. So there is no way you can get a reference to the nested DataWindow that is part of a non-composite DataWindow.
The following method enables the usage of the getChild() function also on such non-composite DataWindows.
1. Export your Tabular, Freeform, Grid, Graph ( or whatever ) style base DataWindow in the library painter.
2a. In the third line of the export file change “processing=0” (or whatever) to “processing=5”. This is the actual trick ie. to impose the functionality of a composite DataWindow (it has processing=5).
2b. Instead of doing 2a., you could instead do a “modify()” to (temporarily) change the processing to 5, just as long as you need it. (added by MiguelL), you then don’t have to do step 1, 2a, nor 3
3. Import the exported and modified file back.
4. You can call GetChild ( ) on your nested DataWindow as you “normally” would.
Now you have the power of the datawindowchild functions at hand, which means you could easily modify nested reports after the retrieve ie. Filtering and Sorting etc.
NOTICE:
The method described above is an undocumented and NOT SUPPORTED by Sybase and should be used with caution.
Comment by leeuwemiguel | August 26, 2015 |
Find Questions by Tag
Helpful?
If a reply or comment is helpful for you, please don’t hesitate to click the Helpful button. This action is further confirmation of their invaluable contribution to the Appeon Community.