Pegar retorno funcao em postegrsql com sqlrdd

Forum sobre SQL.

Moderador: Moderadores

wjparron
Usuário Nível 1
Usuário Nível 1
Mensagens: 4
Registrado em: 30 Ago 2011 09:49
Localização: Sao Joao da Boa Vista - SP

Pegar retorno funcao em postegrsql com sqlrdd

Mensagem por wjparron »

Boa tarde

Uso xHarbour + SQLRdd

Não estou conseguindo chamar uma funçao da minha base de dados em postgresql e pegar o retorno
Alguem poderia me ajudar.

funcao do banco -> fnc_ret_cod_est_tbl( par1, par2, par3, par4, par5 ) : retorna varchar

chamada do programa

....
cComm := "select fnc_ret_cod_est_tbl( '00', 'orccab', '0', 'num_orc', 'F' )"
aRet :={}
oSql := SR_GetConnection()
oSql:exec( cComm, ,.t. ,@aRet)
...

Qdo chega na linha oSql:exec o aplicativo fecha sem mostrar nenhum erro
wjparron
Usuário Nível 1
Usuário Nível 1
Mensagens: 4
Registrado em: 30 Ago 2011 09:49
Localização: Sao Joao da Boa Vista - SP

Pegar retorno funcao em postegrsql com sqlrdd

Mensagem por wjparron »

Alguem teria uma outra opção de pegar o resultado da função com SqlRdd, seria de muita ajuda
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Pegar retorno funcao em postegrsql com sqlrdd

Mensagem por Itamar M. Lins Jr. »

Olá!
Vc está usando uma ferramenta que tem suporte comercial.
Veja se vc encontra resposta aqui nesse grupo.
https://groups.google.com/g/comp.lang.xharbour

O site está desatualizado na parte de suporte.
Os grupos incorporados não são mais compatíveis. Para ver este grupo, acesse o Grupos do Google. Saiba mais
Ou pergunta lá mesmo no xharbour.com via email, não sei como é.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
wjparron
Usuário Nível 1
Usuário Nível 1
Mensagens: 4
Registrado em: 30 Ago 2011 09:49
Localização: Sao Joao da Boa Vista - SP

Pegar retorno funcao em postegrsql com sqlrdd

Mensagem por wjparron »

Bom dia

Para quem tiver este problema aqui, vou deixar postado a solução, resolvido por Luiz

> cComm := "select cast( fnc_ret_cod_est_tbl( '00', 'orccab', '0', 'num_orc', 'F' ) as varchar(30))"
> aRet :={}
> oSql := SR_GetConnection()
> oSql:exec( cComm, ,.t. ,@aRet)
>
> If Len(aRet) > 0
> For x = 1 to Len(aRet)
> ? aRet[x, 1]
> inkey(0)
> Next

> por ser varchar e vc não especificar o tamanho do campo ele se perde ao decodificar o retorno

[]s
Wagner
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Pegar retorno funcao em postegrsql com sqlrdd

Mensagem por sygecom »

No seu caso acredito que faltou apenas um select *
Você não estava dizendo quais Campos retornar
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Pegar retorno funcao em postegrsql com sqlrdd

Mensagem por JoséQuintas »

wjparron escreveu:select cast( fnc_ret_cod_est_tbl( '00', 'orccab', '0', 'num_orc', 'F' ) as varchar(30))"
Estranha a solução, ou a função retorna tipos diferentes conforme os parâmetros, e por isso precisou conversão.
De repente faltou algum ajuste na função.
Mas só uso MySQL, nele isso é definido dentro da função, não sei se nesse é diferente.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Pegar retorno funcao em postegrsql com sqlrdd

Mensagem por sygecom »

[quote="JoséQuintas"Estranha a solução, ou a função retorna tipos diferentes conforme os parâmetros, e por isso precisou conversão.
De repente faltou algum ajuste na função.
Mas só uso MySQL, nele isso é definido dentro da função, não sei se nesse é diferente.[/quote]

Igual, define na FUNCTION os tipo de retorno
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder