Instruçao SQL
Oi!
Eu tinha a seguinte instrucao SQL em paradox. Agora que mudei o sistema p/ Interbase, está dando erro e não sei como corrigir. Alguém pode me ajudar???? Os erros são nas linhas que têm ***
Grata,
sql.add(´Select h.cod_estab, ´+
´ h.pedido, ´+
´ h.situacao, ´+
´ h.fornecedor, ´+
´ h.comprador, ´+
´ r.material, ´+
´ h.valor_total, ´+
´ i.item, ´+
´ i.valor_unit, ´+
´ i.quantidade as qtde_ped, ´+
´ f.razao_social as desc_fornecedor, ´+
´ c.descricao as desc_comprador, ´+
*** ´ 0.00 as qtde_receb, ´+
*** ´ ´ ´ as desc_material ´+
´from cpcadped h, cpiteped i, ´+
´ cpcadreq r, cpcadfor f, ´+
´ cpcadcpr c ´+
´where h.cod_estab = i.cod_estab and ´+
´ h.pedido = i.pedido and ´+
´ i.requisicao = r.codigo and ´+
´ h.fornecedor = f.codigo and ´+
´ h.comprador = c.codigo and ´+
´ h.cod_estab = :cod_estab_par and ´+
´ h.data >= :data_ini_par and ´+
´ h.data <= :data_fim_par and ´);
...
Eu tinha a seguinte instrucao SQL em paradox. Agora que mudei o sistema p/ Interbase, está dando erro e não sei como corrigir. Alguém pode me ajudar???? Os erros são nas linhas que têm ***
Grata,
sql.add(´Select h.cod_estab, ´+
´ h.pedido, ´+
´ h.situacao, ´+
´ h.fornecedor, ´+
´ h.comprador, ´+
´ r.material, ´+
´ h.valor_total, ´+
´ i.item, ´+
´ i.valor_unit, ´+
´ i.quantidade as qtde_ped, ´+
´ f.razao_social as desc_fornecedor, ´+
´ c.descricao as desc_comprador, ´+
*** ´ 0.00 as qtde_receb, ´+
*** ´ ´ ´ as desc_material ´+
´from cpcadped h, cpiteped i, ´+
´ cpcadreq r, cpcadfor f, ´+
´ cpcadcpr c ´+
´where h.cod_estab = i.cod_estab and ´+
´ h.pedido = i.pedido and ´+
´ i.requisicao = r.codigo and ´+
´ h.fornecedor = f.codigo and ´+
´ h.comprador = c.codigo and ´+
´ h.cod_estab = :cod_estab_par and ´+
´ h.data >= :data_ini_par and ´+
´ h.data <= :data_fim_par and ´);
...
Renata
Curtidas 0
Respostas
Anonymous
07/03/2003
Até queria ajudar mas não estou entendo a SQL, o que significa *** na instrução, e mesmo se seguinificar eles estam fora das aspas ( ´ ).
Se quiser pode me enviar um e-mail ( nebrio@ig.com.br ), passando a instrução toda, daí eu vejo se posso te ajudar.
Nébrio
Se quiser pode me enviar um e-mail ( nebrio@ig.com.br ), passando a instrução toda, daí eu vejo se posso te ajudar.
Nébrio
GOSTEI 0
Anonymous
07/03/2003
Onde vc pôs 0.00 coloque apenas 0. De resto, acho que o único erro é o último ´and´ que não deveria existir.
GOSTEI 0
Anonymous
07/03/2003
Desculpe, eu te perguntar o siginifica ***.... to meio lento hoje.
Perai que eu vou olhar dinovo, o tempo de um café e eu volto.
Perai que eu vou olhar dinovo, o tempo de um café e eu volto.
GOSTEI 0
Anonymous
07/03/2003
*** ´ 0.00 as qtde_receb, ´+
*** ´ ´ ´ as desc_material ´+
na primeira linha você atribui o nome qtde_receb a 0.00 e não a um campo. Isso eu não entendi ?
a mesma coisa no segunda linha, você atribui o nome desc_material a um campo em branco.
Se puder me explicar é só mandar no e-mail ( nebrio@ig.com.br ), dando uma explicadinha que te respondo, não vou fazer nada de madrugada mesmo.
Tchau.
Nébrio
*** ´ ´ ´ as desc_material ´+
na primeira linha você atribui o nome qtde_receb a 0.00 e não a um campo. Isso eu não entendi ?
a mesma coisa no segunda linha, você atribui o nome desc_material a um campo em branco.
Se puder me explicar é só mandar no e-mail ( nebrio@ig.com.br ), dando uma explicadinha que te respondo, não vou fazer nada de madrugada mesmo.
Tchau.
Nébrio
GOSTEI 0
Renata
07/03/2003
MEU!!!
Os *** é só p/ marcar as linhas que está dando o erro!!!
Eu não tenho isso no meu fonte. Só coloquei no email p/ ficar fácil de vcs. localizarem as linhas!!! :oops:
E o último ´and´ está ali apenas pq. o sql não termina ai, ele continua depois, é que não era necessário eu colocar tudo já que sei onde estão os erros, só não sei quais os comandos que substituem isso em Interbase, pq. em paradox funciona perfeitamente.
Eu atribui 0.00 a um campo e aquele monte de espacos em branco a outro campo pq. mais a frente eu faco pesquisas e consistencias e altero estes valores (que eu selecionei em branco) p/ só depois mostrar na minha pesquisa.
Entenderam agora???
Grata,
Os *** é só p/ marcar as linhas que está dando o erro!!!
Eu não tenho isso no meu fonte. Só coloquei no email p/ ficar fácil de vcs. localizarem as linhas!!! :oops:
E o último ´and´ está ali apenas pq. o sql não termina ai, ele continua depois, é que não era necessário eu colocar tudo já que sei onde estão os erros, só não sei quais os comandos que substituem isso em Interbase, pq. em paradox funciona perfeitamente.
Eu atribui 0.00 a um campo e aquele monte de espacos em branco a outro campo pq. mais a frente eu faco pesquisas e consistencias e altero estes valores (que eu selecionei em branco) p/ só depois mostrar na minha pesquisa.
Entenderam agora???
Grata,
GOSTEI 0
Renata
07/03/2003
Ei Emerson!!!!
Eu troquei 0.00 por 0 como vc. disse. Só que ai ele trunca os valores float qdo eu atualizo eles depois. Por ex, como eu já tinha dito, depois deste select eu faco pesquisar e consistencias e coloco valores nos campos que estou trazendo em branco. Só que, se eu substituo o 0.00 por 0, qdo vou gravar um valor como 5,3 neste campo ele grava apenas 5 (por ex.)
E agora???
Eu troquei 0.00 por 0 como vc. disse. Só que ai ele trunca os valores float qdo eu atualizo eles depois. Por ex, como eu já tinha dito, depois deste select eu faco pesquisar e consistencias e coloco valores nos campos que estou trazendo em branco. Só que, se eu substituo o 0.00 por 0, qdo vou gravar um valor como 5,3 neste campo ele grava apenas 5 (por ex.)
E agora???
GOSTEI 0
Anonymous
07/03/2003
Renata, tenho uma instrução SQL semelhante à sua e não obtive erro. Não sei o que pode ser...
Desculpe não poder ajudá-la.
Obs.: A instrução que eu fiz foi executada no Firebird.
Desculpe não poder ajudá-la.
Obs.: A instrução que eu fiz foi executada no Firebird.
GOSTEI 0
Renata
07/03/2003
A minha esta em Interbase. Em paradox funciona!!!
Bem, obrigada de qq. forma...
Bem, obrigada de qq. forma...
GOSTEI 0
Anonymous
07/03/2003
Renata, tente alterar a prop. DIALECT do IbDataBase para o mesmo utilizado no PIRAD,... quer dizer, PARADOX
GOSTEI 0
Anonymous
07/03/2003
Coloque
´ CAST( 0 AS FLOAT ) as qtde_receb, ´+
´ CAST( null AS VARCHAR(60) ) as desc_material ´+
Onde 60 é o tamanho máximo, em bytes, que
desc_material pode assumir. Use um numero
menor que 64000.
´ CAST( 0 AS FLOAT ) as qtde_receb, ´+
´ CAST( null AS VARCHAR(60) ) as desc_material ´+
Onde 60 é o tamanho máximo, em bytes, que
desc_material pode assumir. Use um numero
menor que 64000.
GOSTEI 0