Fabiano, tenho algo parecido com isso.. dá uma olhada..
declare -- Especificacao do type type rec_prm is record ( p_param varchar2(100), p_value varchar2(1000), p_type varchar2(50), p_format varchar2(100) ); type tab_prm is table of rec_prm index by binary_integer; tTab_prm tab_prm; -- Procedimento que recebera os valores procedure prc_prm ( p_tab_prm tab_prm ) is l_dHoje Date; begin dbms_output.put_line( '*************************************' ); for c in 1..p_tab_prm.count loop if p_tab_prm(c).p_type = 'Date' then l_dHoje := To_date( p_tab_prm(c).p_value, p_tab_prm(c).p_format ); end if; dbms_output.put_line( 'Param=' || p_tab_prm(c).p_param || ' Value=' || p_tab_prm(c).p_value || ' Type=' || p_tab_prm(c).p_type || ' Format=' || p_tab_prm(c).p_format ); end loop; dbms_output.put_line( '*************************************' ); dbms_output.put_line( 'Total de parametros ' || p_tab_prm.count ); dbms_output.put_line( '*************************************' ); end; begin -- Linha 1 tTab_prm(1).p_param := 'Nome:'; tTab_prm(1).p_value := 'Eduardo'; tTab_prm(1).p_type := 'Char'; tTab_prm(1).p_format := null; -- Linha 2 tTab_prm(2).p_param := 'Hoje:'; tTab_prm(2).p_value := '27/05/2008 18:10:10'; tTab_prm(2).p_type := 'Date'; tTab_prm(2).p_format := 'dd/mm/yyyy hh24:mi:ss'; prc_prm( p_tab_prm => tTab_prm ); end; / Edu Fabiano Arndt <[EMAIL PROTECTED]> escreveu: Gleyson, eu já possuo algumas function/procedures em que uso collections, mas agora preciso de algo diferente. onde vou usar a function, não tenho como passar um array, tenho que passar os parâmetros diretamente. o que eu gostaria mesmo é criar uma function parecida com o GREATEST que retorna o maior valor da lista de argumentos, inclusive acho que essa função por hora já vai resolver meu problema e não irei nem precisar criar outra função. mas se alguem souber como criar uma função desse tipo, me avisem. valeu, abraço. Fabiano. 2008/5/27 Gleyson Melo <[EMAIL PROTECTED]>: > Fabiano, > > Acredito que a melhor forma de resolver o seu problema seja estudar um > pouquinho de Collections do PL/SQL e receber, como parâmetro da função, uma > coleção de objetos (Sim, uma matriz). > > 2008/5/27 Fabiano Arndt <[EMAIL PROTECTED]>: > >> Bom dia pessoal, >> >> to com uma certa dificuldade para criar uma função que receba >> múltiplos parâmetros, ou seja >> uma função que eu possa passar quantos parâmetros eu quiser. >> >> por exemplo, >> >> func(1, 2, 3, 4, 5) >> ou >> func(10) >> ou apenas >> func() >> ou qualquer outro número de parâmetros >> >> gostaria também de saber como eu faria nesse caso pra saber quantos >> parâmetros foram passados para a function e como acessá-los >> >> uso 9i. >> >> obrigado, >> Fabiano. >> >> > > -- > Atenciosamente, > Gleyson Melo > Oracle Database 10g Administrator Certified Professional > > [As partes desta mensagem que não continham texto foram removidas] > > --------------------------------- Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]