CREATE OR REPLACE PACKAGE PACK_TESTE AS FUNCTION fn_FormataData( p_DtHora IN TIMESTAMP ) RETURN CHARACTER; PROCEDURE testeData( p_data IN TIMESTAMP, rs_Cursor OUT SYS_REFCURSOR ); END PACK_TESTE; CREATE OR REPLACE PACKAGE BODY PACK_TESTE AS FUNCTION fn_FormataData( p_DtHora IN TIMESTAMP ) RETURN CHARACTER IS BEGIN RETURN TO_CHAR(TO_TIMESTAMP_TZ(p_DtHora), 'YYYY-MM-DD"T"HH24:MI:SSTZH:TZM'); EXCEPTION WHEN OTHERS THEN RAISE_APPLICATION_ERROR(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM); END fn_FormataData; PROCEDURE testeData( p_data IN TIMESTAMP, rs_Cursor OUT SYS_REFCURSOR ) AS BEGIN INSERT INTO tb_teste ( cdteste, dtteste ) VALUES ( sq_teste.nextval, p_data ) ; OPEN rs_Cursor FOR SELECT cdteste AS "codigoTeste", fn_FormataData(dtteste) AS "dataTeste" FROM tb_teste ORDER BY cdteste DESC ; END testeData; END PACK_TESTE;