Ir para conteúdo
  • Cadastre-se

dev botao

Registro 50 repete dados da NF


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

Recommended Posts

  • Consultores

Como ou que código você está usando para gerar os registros 50?

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Como ou que código você está usando para gerar os registros 50?

Boa noite.

Eu segui o exemplo do componente. (em Delphi pois não tem com Lazarus).

Conferi passo a passo e o loop está mudando a NF porém, quando ele gera o .txt os dados da primeira é repetido nas demais.

Quando eu desabilito o while, não ocorre a mensagem de erro e gera correto o registro.

if Result then

begin

Dm.Tabela.First;

while not Dm.Tabela.EOF do

begin

wregistro50.CPFCNPJ:=Dm.Tabela.FieldByName('CNPJ').Value;

wregistro50.Inscricao:=Dm.Tabela.FieldByName('IE').Value;

wregistro50.DataDocumento:=Dm.Tabela.FieldByName('DATA').Value;

wregistro50.UF:=Dm.Tabela.FieldByName('UF').Value;

wregistro50.Modelo:=Dm.Tabela.FieldByName('MODELO').Value;

wregistro50.Serie:=Dm.Tabela.FieldByName('SERIE').Value;

wregistro50.Numero:=Dm.Tabela.FieldByName('NUMERO').Value;

wregistro50.Cfop:=Dm.Tabela.FieldByName('CFOP').Value;

wregistro50.EmissorDocumento:=Dm.Tabela.FieldByName('EMITENTE').Value;

wregistro50.ValorContabil:=Dm.Tabela.FieldByName('TOTAL').Value;

wregistro50.BasedeCalculo:=Dm.Tabela.FieldByName('BASEICMS').Value;

wregistro50.Icms:=Dm.Tabela.FieldByName('VALORICMS').Value;

wregistro50.Isentas:=Dm.Tabela.FieldByName('ISENTO').Value;

wregistro50.Outras:=Dm.Tabela.FieldByName('OUTROS').Value;

wregistro50.Aliquota:=Dm.Tabela.FieldByName('ALICMS').Value;

wregistro50.Situacao:='N';

Registros50.Add(wregistro50);

Dm.Tabela.Next;

end;

end;

Grato pela disposição,

Tércio Lins.

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Você precisa criar "wregistro50", setar os dados e fazer o "Registro50.add".


if Result then
begin
Dm.Tabela.First;
while not Dm.Tabela.EOF do
begin
wregistro50 := TRegistro50.Create;

wregistro50.CPFCNPJ:=Dm.Tabela.FieldByName('CNPJ').Value;
wregistro50.Inscricao:=Dm.Tabela.FieldByName('IE').Value;
wregistro50.DataDocumento:=Dm.Tabela.FieldByName('DATA').Value;
wregistro50.UF:=Dm.Tabela.FieldByName('UF').Value;
wregistro50.Modelo:=Dm.Tabela.FieldByName('MODELO').Value;
wregistro50.Serie:=Dm.Tabela.FieldByName('SERIE').Value;
wregistro50.Numero:=Dm.Tabela.FieldByName('NUMERO').Value;
wregistro50.Cfop:=Dm.Tabela.FieldByName('CFOP').Value;
wregistro50.EmissorDocumento:=Dm.Tabela.FieldByName('EMITENTE').Value;
wregistro50.ValorContabil:=Dm.Tabela.FieldByName('TOTAL').Value;
wregistro50.BasedeCalculo:=Dm.Tabela.FieldByName('BASEICMS').Value;
wregistro50.Icms:=Dm.Tabela.FieldByName('VALORICMS').Value;
wregistro50.Isentas:=Dm.Tabela.FieldByName('ISENTO').Value;
wregistro50.Outras:=Dm.Tabela.FieldByName('OUTROS').Value;
wregistro50.Aliquota:=Dm.Tabela.FieldByName('ALICMS').Value;
wregistro50.Situacao:='N';

Registros50.Add(wregistro50);

Dm.Tabela.Next;
end;
end;
[/code]

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

Você precisa criar "wregistro50", setar os dados e fazer o "Registro50.add".


if Result then

begin

  Dm.Tabela.First;

  while not Dm.Tabela.EOF do

  begin

    wregistro50 := TRegistro50.Create;


    wregistro50.CPFCNPJ:=Dm.Tabela.FieldByName('CNPJ').Value;

    wregistro50.Inscricao:=Dm.Tabela.FieldByName('IE').Value;

    wregistro50.DataDocumento:=Dm.Tabela.FieldByName('DATA').Value;

    wregistro50.UF:=Dm.Tabela.FieldByName('UF').Value;

    wregistro50.Modelo:=Dm.Tabela.FieldByName('MODELO').Value;

    wregistro50.Serie:=Dm.Tabela.FieldByName('SERIE').Value;

    wregistro50.Numero:=Dm.Tabela.FieldByName('NUMERO').Value;

    wregistro50.Cfop:=Dm.Tabela.FieldByName('CFOP').Value;

    wregistro50.EmissorDocumento:=Dm.Tabela.FieldByName('EMITENTE').Value;

    wregistro50.ValorContabil:=Dm.Tabela.FieldByName('TOTAL').Value;

    wregistro50.BasedeCalculo:=Dm.Tabela.FieldByName('BASEICMS').Value;

    wregistro50.Icms:=Dm.Tabela.FieldByName('VALORICMS').Value;

    wregistro50.Isentas:=Dm.Tabela.FieldByName('ISENTO').Value;

    wregistro50.Outras:=Dm.Tabela.FieldByName('OUTROS').Value;

    wregistro50.Aliquota:=Dm.Tabela.FieldByName('ALICMS').Value;

    wregistro50.Situacao:='N';


    Registros50.Add(wregistro50);


    Dm.Tabela.Next;

  end;

end;

Bom dia Regys.

No início da função a variável é criada - desculpe-me, eu não coloquei.

Você colocou o registro dentro do loop. para cada NF será criado um wregistro50?

Vou alterar e retorno o resultado.

Grato,

Tércio Lins.

Link para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.