Try OpenEdge Now
skip to main content
ProDataSets
Introducing the OpenEdge DataSet : Using ProDataSets : ProDataSets and temp-tables : Passing temp-tables
 
Passing temp-tables
You can pass a temp-table between procedures within a session or between sessions, such as between a server session that loads database data into the table and a client session that views the data and perhaps allows changes. You can pass a temp-table as a static parameter and receive it as a static or dynamic object. You can also pass a dynamic temp-table and receive it as either a static or dynamic object.
In all these cases, the names of the tables and fields do not need to match on the two sides of the call. Only the essentials of the field definitions—their number, sequence, and data types—need to match. Field names along with the format and other attributes can be different, as can index definitions, because indexes are rebuilt as the temp-table is received.
In addition, you can pass a temp-table by HANDLE, in which case only the handle as a pointer to either a static or dynamic temp-table is passed. Nothing is copied from caller to callee. Because handles are not valid between sessions, and because there is no way to share either the definition or data across sessions without copying it, the HANDLE form can be used only between procedures in the same session.