Convercion error from string

19/04/2013

0

Caros colegas, estou batendo cabeça a dois dias para resolver este erro.
Criei uma plicação em Delphi 7 com banco de dados sql usando o interbase 6.5.
Tenho um formulário que mostra a saida de mercadorias por clientes.
Estou usando o Qreport para formularios, no QuickRep1 do Form tenho:
1º rbPageHeader = Logo da empresa e Titulo do formulário
2ºrbDetail = Código do cliente, Nome, Data da saida, Valor total - ligado ao sql saidaclientes
3ºQRSubDetail1 = Código do produto, decrição, quantidade, valor unidade, valor total - ligado ao sql saidaprodutos
4ºrbSummary = QRExpr - fazer a soma total das saidas - ligado ao sqlclientesvalortotal

No evento BeforePrint do rbDetail coloquei o seguinte comando:
SQLSAIDAPRODUTOS.Active:=True;
SQLSAIDAPRODUTOS.SQL.Clear;
SQLSAIDAPRODUTOS.SQL.Add('select * from saida_prod where sai_cod_cliente='+#39+SQLSAIDACLIENTESCODIGOSAIDA.AsString+#39);
SQLSAIDAPRODUTOS.Active:=True;

Toda vez que chamo o relatório surge o seguinte erro:
Project Estoque.exe raised exception class EIBInterBaseError with message'conversion error from string'

OBS a dois dias atrás estava funcionando normal mostrando todos os cliente e seus produtos, o erro começou depois que eu deletei todos os dados das tabelas pois eu queria entregar o sistema com os registros limpos.

Alguêm poderia me ajudar ? desde ja agradeço
Jean Carlos

Jean Carlos

Responder

Posts

19/04/2013

Rafael Cunha

O erro pode ser no momento que você em "SQLSAIDACLIENTESCODIGOSAIDA.AsString" caso o valor desse campo seja null.
Responder

19/04/2013

Jean Carlos

Rafael o valor do campo estar not null
Responder

19/04/2013

Jean Carlos

O erro pode ser no momento que você em "SQLSAIDACLIENTESCODIGOSAIDA.AsString" caso o valor desse campo seja null.



Olá amigo o campo estar como not null
Responder

19/04/2013

Rafael Cunha

Mais sempre que você vai emitir um relatório você seleciona um cliente? Tenta utilizar da seguinte forma.


SQLSAIDACLIENTESCODIGOSAIDA.AsValue; //Não tenho certeza que é assim.. mais retorna uma variant ao invés de string.
Responder

19/04/2013

Joel Rodrigues

Depure para ver exatamente em que linha ocorre.
Responder

19/04/2013

Jean Carlos

Mais sempre que você vai emitir um relatório você seleciona um cliente? Tenta utilizar da seguinte forma.


SQLSAIDACLIENTESCODIGOSAIDA.AsValue; //Não tenho certeza que é assim.. mais retorna uma variant ao invés de string.





Rafael coloquei o seu código e quando vou copilar aparece o seguinte erro:
[Error] UrelSaidaFilial.pas(80): Undeclared identifier: 'AsValue'
Responder

19/04/2013

Jean Carlos

Mais sempre que você vai emitir um relatório você seleciona um cliente? Tenta utilizar da seguinte forma.


SQLSAIDACLIENTESCODIGOSAIDA.AsValue; //Não tenho certeza que é assim.. mais retorna uma variant ao invés de string.





Rafael coloquei o seu código e quando vou copilar aparece o seguinte erro:
[Error] UrelSaidaFilial.pas(80): Undeclared identifier: 'AsValue'


Esqueci de mecionar que este relatório é de todos os clientes da tabela no relatorio sai todos os clientes e os produtos de cada um, foi só eu deletar todos os registros que começou a dar este erro, ja tinha dado este erro antes eu resolvi excluindo o form e seus componentes e criando outro form do zero, mais se toda vez que deletar os registros da tabela ficar assim ai o cliente nao vai gostar rsrs
Responder

19/04/2013

Jean Carlos

Mais sempre que você vai emitir um relatório você seleciona um cliente? Tenta utilizar da seguinte forma.


SQLSAIDACLIENTESCODIGOSAIDA.AsValue; //Não tenho certeza que é assim.. mais retorna uma variant ao invés de string.





Rafael coloquei o seu código e quando vou copilar aparece o seguinte erro:
[Error] UrelSaidaFilial.pas(80): Undeclared identifier: 'AsValue'


Esqueci de mecionar que este relatório é de todos os clientes da tabela no relatorio sai todos os clientes e os produtos de cada um, foi só eu deletar todos os registros que começou a dar este erro, ja tinha dado este erro antes eu resolvi excluindo o form e seus componentes e criando outro form do zero, mais se toda vez que deletar os registros da tabela ficar assim ai o cliente nao vai gostar rsrs



Veja como estar minha tabela de saida produtos:


CREATE TABLE "SAIDA_PROD"
(
"SAI_COD_FILIAL" INTEGER NOT NULL,
"SAI_COD_PRODUTO" INTEGER NOT NULL,
"SAI_VALORPRODUTO" NUMERIC(15, 2) NOT NULL,
"SAI_QUANTIDADE" NUMERIC(8, 2) NOT NULL,
"SAI_VALORTOTAL" NUMERIC(15, 2) NOT NULL,
"SAI_PROD_FORN" INTEGER,
CONSTRAINT "SAIDA_PROD_PK" PRIMARY KEY ("SAI_COD_FILIAL", "SAI_COD_PRODUTO")
);
ALTER TABLE "SAIDA_PROD" ADD CONSTRAINT "SAI_COD_PROD" FOREIGN KEY ("SAI_COD_PRODUTO") REFERENCES ESTOQUES ("ESTCODIGO");

E a minha tabela saida cliente:


CREATE TABLE "SAIDA_FILIAL"
(
"CODIGOSAIDA" INTEGER NOT NULL,
"CODIGOFILIAL" INTEGER NOT NULL,
"DATASAIDA" TIMESTAMP,
"VALORTOTAL" NUMERIC(15, 2),
PRIMARY KEY ("CODIGOSAIDA")
);
ALTER TABLE "SAIDA_FILIAL" ADD CONSTRAINT "SAIDAFILIAL" FOREIGN KEY ("CODIGOSAIDA") REFERENCES FILIAL ("CODIGO");
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar