Ir para conteúdo
  • Cadastre-se

Acessar A Nfe e o item da mesma em uma procedure


Ver Solução Respondido por Agnaldo Prates,
  • Este tópico foi criado há 236 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Por qual motivo não consigo acessar o item, tanto da NFe do componente que está no form quanto dos itens dela em uma procedure? Será que necessita de uma busca ?

procedure TfrmACBrNFe.Teste(nIdNFe : Integer; nItemPro:Integer );
Var
  NotaF: NotaFiscal;
  Produto: TDetCollectionItem;
begin
  NotaF:= ACBrNFe1.NotasFiscais.Items[nIdNFe];
  With NotaF.NFe do
  begin

     Produto:= NotaF.NFe.Det.Items[nItemPro];

     With Produto.Prod do
     begin
         cProd := '100';
         {
         .
         .
         .
         }
     end;
  end;
end;
Grato.

Prates, Agnaldo

  • Moderadores
Postado
4 minutos atrás, Agnaldo Prates disse:

  NotaF:= ACBrNFe1.NotasFiscais.Items[nIdNFe];
  With NotaF.NFe do
  begin

     Produto:= NotaF.NFe.Det.Items[nItemPro];

Dessa forma você está acessando pelo índice da collection, então depende do que está passando como parâmetro.

Talvez você deva passar a chave da nota, e o número do item e sim fazer a busca. Lembrando que a numeração dos itens nem sempre vem em ordem.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado
6 horas atrás, BigWings disse:

Dessa forma você está acessando pelo índice da collection, então depende do que está passando como parâmetro.

Talvez você deva passar a chave da nota, e o número do item e sim fazer a busca. Lembrando que a numeração dos itens nem sempre vem em ordem.

Obrigado @BigWings

Seria o caso de passar a chave se a nota já existisse. Acontece que a nota ainda está sendo preenchida.

Talvez seja obscuridade na dúvida.

Veja. No form existe o componente ACBrNFe1. Ok.

Quando clicar em gerar NFe, chama-se o procedimento Alimentacomponente. Ok.

Dentro desta procedure (alimentacompoente), eu quero chamar outra procedure, porém, quero pasar o item do produto para alimentar as tags do imposto, tendo em vista que, somente em 2027 é que as empresas optantes do SN estarão obrigadas a preenherem os campos da RT. 

Não sei se fui claro.

Prates, Agnaldo

  • Moderadores
Postado
14 horas atrás, Agnaldo Prates disse:

Dentro desta procedure (alimentacompoente), eu quero chamar outra procedure, porém, quero pasar o item do produto para alimentar as tags do imposto, tendo em vista que, somente em 2027 é que as empresas optantes do SN estarão obrigadas a preenherem os campos da RT. 

Deve funcionar desde que passe o índice correto...

Para a primeira nota e primeiro item tanto nIdNFe quando nItemPro devem ser 0, por exemplo.

  • Obrigado 1
Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado (editado)
16 horas atrás, Agnaldo Prates disse:

Obrigado @BigWings

Seria o caso de passar a chave se a nota já existisse. Acontece que a nota ainda está sendo preenchida.

Talvez seja obscuridade na dúvida.

Veja. No form existe o componente ACBrNFe1. Ok.

Quando clicar em gerar NFe, chama-se o procedimento Alimentacomponente. Ok.

Dentro desta procedure (alimentacompoente), eu quero chamar outra procedure, porém, quero pasar o item do produto para alimentar as tags do imposto, tendo em vista que, somente em 2027 é que as empresas optantes do SN estarão obrigadas a preenherem os campos da RT. 

Não sei se fui claro.

Dependendo da situação, passar o item direto como parâmetro pode ser uma solução.

procedure TfrmACBrNFe.GerarImposto(ADet: TDetCollectionItem);
begin
	ADet.Prod.CProd := '100';
	...
end;
Editado por Daniel - PiraByte
  • Curtir 1
  • Solution
Postado
5 horas atrás, BigWings disse:

Deve funcionar desde que passe o índice correto...

Para a primeira nota e primeiro item tanto nIdNFe quando nItemPro devem ser 0, por exemplo.

Solucionado. Muitíssimo obrigado.

Prates, Agnaldo

  • Este tópico foi criado há 236 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.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...