Within a single session, you can simply pass a handle to the temp-table, and you should do this wherever possible. This is far faster than passing and copying the table. In deciding whether to use the TABLE or HANDLE parameter form, you need to decide whether it is important for the receiving routine to operate on the temp-table as a static object. As with other object types, you can access and manipulate a temp-table using just its handle, but you have to do it with dynamic, handle-based statements. You can write a static FIND or FOR EACH statement against a temp-table handle. Think about how best to balance efficiency against ease of programming in each case where you need to pass temp-table parameters.