Ir para conteúdo
  • Cadastre-se

dev botao

Erro com componentes de acesso a dados.


  • Este tópico foi criado há 297 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia Galera.

 

Eu queria saber o que esta errado nessa rotina abaixo ele passa direto no RECORDCOUNT > 0 mais tem registro na tabela . segue a baixo a rotina. ele chega ate QryComplementar.open; depois sai e não entra no QryComplementar.first;

Precisso fazer referenia dessa nota de devolucao. vlw galera se alguem pode mim dar um norte blz

QryComplementar.close;
QryComplementar.sql.clear;
QryComplementar.sql.add('select * from NFE_COMPLEMENTAR where NUMNOTA = :NUMNOTA');
QryComplementar.ParamByName('NUMNOTA').asstring := InttoStr(FrmNotaFiscal.qryVenda.FieldByName('NOTAFISCAL').AsInteger);
QryComplementar.open;

if (QryComplementar.RecordCount > 0) then
begin
QryComplementar.first;
while not QryComplementar.eof do
begin
with Ide.NFref.add do
begin
refNFe := QryComplementar.fieldbyname('chave').asstring; // NFe Eletronica
end;
QryComplementar.next;
end;
end;

Link para o comentário
Compartilhar em outros sites

1 hora atrás, joveci guedes de almeida disse:

Bom dia Galera.

 

Eu queria saber o que esta errado nessa rotina abaixo ele passa direto no RECORDCOUNT > 0 mais tem registro na tabela . segue a baixo a rotina. ele chega ate QryComplementar.open; depois sai e não entra no QryComplementar.first;

Precisso fazer referenia dessa nota de devolucao. vlw galera se alguem pode mim dar um norte blz

QryComplementar.close;
QryComplementar.sql.clear;
QryComplementar.sql.add('select * from NFE_COMPLEMENTAR where NUMNOTA = :NUMNOTA');
QryComplementar.ParamByName('NUMNOTA').asstring := InttoStr(FrmNotaFiscal.qryVenda.FieldByName('NOTAFISCAL').AsInteger);
QryComplementar.open;

if (QryComplementar.RecordCount > 0) then
begin
QryComplementar.first;
while not QryComplementar.eof do
begin
with Ide.NFref.add do
begin
refNFe := QryComplementar.fieldbyname('chave').asstring; // NFe Eletronica
end;
QryComplementar.next;
end;
end;

Eu recomendaria primeiro fazer a conversão com um INTTOSTRDEF para sempre ir um número padrão.

# Antes:

QryComplementar.ParamByName('NUMNOTA').asstring := InttoStr(FrmNotaFiscal.qryVenda.FieldByName('NOTAFISCAL').AsInteger);

# Depois:

QryComplementar.ParamByName('NUMNOTA').asstring := InttoStrDef(FrmNotaFiscal.qryVenda.FieldByName('NOTAFISCAL').AsInteger, 0);

 

Depois seria bacana você fazer a depuração ou colocar logs para saber qual o valor que está vindo em FrmNotaFiscal.qryVenda.FieldByName('NOTAFISCAL').AsInteger.

Valter Patrick

Gerente de Projetos na empresa CTEC

(33)98400-0936

GitHub: https://github.com/valterpatrick

Link para o comentário
Compartilhar em outros sites

Valter bom dia...

Eu não preciso mais converter por que ja aterei para inteiro o campo e  FrmNotaFiscal.qryVenda.FieldByName('NOTAFISCAL').AsInteger.

esta retornando o valor da nota correto, ja depurei e veriquei notafiscal=3760 que é o numero da nota mais quado chega no recordcount > 0 ele mostra que e 0

Link para o comentário
Compartilhar em outros sites

  • Moderadores
3 horas atrás, joveci guedes de almeida disse:

Bom dia Galera.

 

Eu queria saber o que esta errado nessa rotina abaixo ele passa direto no RECORDCOUNT > 0 mais tem registro na tabela . segue a baixo a rotina. ele chega ate QryComplementar.open; depois sai e não entra no QryComplementar.first;

Precisso fazer referenia dessa nota de devolucao. vlw galera se alguem pode mim dar um norte blz

QryComplementar.close;
QryComplementar.sql.clear;
QryComplementar.sql.add('select * from NFE_COMPLEMENTAR where NUMNOTA = :NUMNOTA');
QryComplementar.ParamByName('NUMNOTA').asstring := InttoStr(FrmNotaFiscal.qryVenda.FieldByName('NOTAFISCAL').AsInteger);
QryComplementar.open;

if (QryComplementar.RecordCount > 0) then
begin
QryComplementar.first;
while not QryComplementar.eof do
begin
with Ide.NFref.add do
begin
refNFe := QryComplementar.fieldbyname('chave').asstring; // NFe Eletronica
end;
QryComplementar.next;
end;
end;

veja sua dúvida e problema não tem a ver com o ACBrNFe e sim delphi

tente usar os canais voltados a delphi.

que componente é esse de query? ou engine de conexão que tá usando?

tente após o .open. fazer um .last e .first

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 297 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.