Richard Huxton wrote:
-->-----Mensagem original-----
-->De: Richard Huxton [mailto:[EMAIL PROTECTED]
-->Enviada em: sexta-feira, 1 de dezembro de 2006 12:24
-->Para: Alejandro Michelin Salomon ( Adinet )
-->Cc: Pgsql-General
-->Assunto: Re: [GENERAL] Problem with function parameters
-->
-->
-->Alejandro Michelin Salomon ( Adinet ) wrote:
-->> Hi :
-->>
-->> I have installed Pg 8.08
-->>
-->> I create this function :
-->> CREATE OR REPLACE FUNCTION CALCULO_VALOR_LIQUIDO_HELPDESK(
-->> nTipoDesconto SMALLINT,
-->>
-->> nTipoComissao SMALLINT,
-->
-->> When i test this function, i call the function with this
-->parameters :
-->>
-->> SELECT CALCULO_VALOR_LIQUIDO_HELPDESK( 0, 1, 10, 10, 1000 );
-->>
-->> This is the error that happens:
-->>
-->> ERROR: function calculo_valor_liquido_helpdesk(integer, integer,
-->> integer, integer, integer) does not exist SQL state: 42883
-->> Hint: No function matches the given name and argument
-->types. You may need to
-->> add explicit type casts.
-->>
-->> I dont now what the two first parameters are see as
-->integer. When 0
-->> and 1 are true smallint values.
-->
-->"0" and "1" end up as literal integers, since you've not told it
-->otherwise. You have two options:
-->1. Cast your parameters when you call the function
--> select calculo_valor_...(0::smallint, 1::smallint, ...)
-->2. Define your function to take integers
-->
-->I'd choose #2, you're not gaining anything by having
-->smallint parameters.
-->
-->--
--> Richard Huxton
--> Archonet Ltd
-->
I change the parameters to integer and is ok now.
Thanks for your help.
Alejandro Michelin Salomon
---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq