Najlepsze, co mogłem wymyślić, to zadeklarować zmienną tabelową typu lokalnego do funkcji i używać jej w całym kodzie. Następnie wykonaj INSERT...SELECT w tabeli parametrów tuż przed instrukcją RETURN.
Do tej pory unikałem typów zdefiniowanych przez użytkownika. Chociaż wydają się obiecujące, z możliwością zmiany typu w jednej lokalizacji zamiast zmiany typów danych wszędzie, po prostu nigdy nie zapewniają wydajności, jeśli chodzi o wydajność i konserwację z powodu takich problemów.