• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Question How Share Temp-table Across Reports

#1
Platform: Linux
Language: Progress ABL

It's about night report batches. There is a dynamically generated price file. It will be used by all the reports generated that night. My question is, is it possible to store the prices in a temp-table (to something to that effect) and share it across all the reports run that night?


Thanks.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
#2
Do all of the batches run in the same client?

There are shared temp-tables that can be shared between procedures in a client. Temp-tables can also be passed between ABL clients, I believe.

An alternative approach is to generate and store the price file in a table and then have the client(s) read and cache the table's contents in a temp-table, assuming there will be repeated reads. You could optionally empty that table at the end of the night if you don't need the data long-term.

Not being a developer, I can't advise you on what you should do in this case. But I'm sure someone else will chime in.
 

Cecil

17+ years progress programming and still learning.
#3
Could it be possible to have a pilot process which loads the generated price file into a temp-table, then dump the data of a temp-table (or ProDataSet) into a single XML file? Then each reporting process loads the newly created XML back into there own private/session temp-table and report whatever needed to be reported?

Is the process which creates the dynamically generated price file an OpenEdge process?
 

tamhas

ProgressTalk.com Sponsor
#4
A shared temp-table is almost certainly the wrong solution. Much better is to generate it once and store it somewhere - in a temporary table, possibly in its own DB freshly created by the process which does the generation, or as XML or JSON. Then, have the consuming programs get it from that shared place.