|When you are producing large printable style reports in PowerBuilder you
quite often have to perform many joins to get the textual versions of all the information
for the report. When you are joining to tables with small amounts of rows but large
descriptions you can increase performance and reduce network traffic by using datawindow
children to perform the joins on the client side.
For example if you where producing a
report when you joined to get the title of the regional office for each order, then the
text of the regional office name would have to be sent back to the client for every row,
not only is this extra work for the database, but also means your result set is much
larger, increasing network traffic and client side processing.
A simple trick to save all this overhead is to just return the code for the regional
office and place a datawindowchild where you need the regional office name. the child
datawindow would just retrieve the list of regional offices once and transfer the data to
the client once. Thus saving lots of server, network and client overhead.
This trick gives performance increases for larger reports where the slight overhead of
the second retrieve is easily made up for.