Ir para conteúdo
  • Cadastre-se

dev botao

Erro Na Impressão Doc Anterior - Sugestão Para Melhoria Acbr


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

Recommended Posts

  • Membros Pro
Postado

Boa tarde.

 

No componente atual da acbr ta dando erro pra imprimir a tag doc anterior, eu ajustei o componente fazendo umas mudanças no indice da variavel e deu certo, segue mudanças para analise se é possível arrumar no componente.

 

procedure TdmACBrCTeFR.CarregaDocumentoAnterior; // Adicionado por NCC - 04/04/2014

IMPRESSÃO DOC ANTERIOR - ROTINA ACBrCTeDACTEFRDM.PAS


procedure TdmACBrCTeFR.CarregaDocumentoAnterior;    // Adicionado por NCC - 04/04/2014
var i,ii,iii:integer;
begin
  with cdsDocAnterior do
  begin
    Close;
    FieldDefs.Clear;
    FieldDefs.Add('CNPJCPF', ftString, 18);
    FieldDefs.Add('xNome', ftString, 60);
    FieldDefs.Add('UF', ftString, 2);
    FieldDefs.Add('IE', ftString, 14);

    FieldDefs.Add('Tipo', ftString, 33);
    FieldDefs.Add('Serie', ftString, 3);
    FieldDefs.Add('nDoc', ftString, 20);
    FieldDefs.Add('dEmi', ftString, 10);
    FieldDefs.Add('Chave', ftString, 44);
    CreateDataSet;

  {$IFDEF PL_200}
    for i := 0 to CTe.infCTeNorm.docAnt.emiDocAnt.Count - 1 do
    begin
      with CTe.infCTeNorm.docAnt.emiDocAnt.Items[i] do
      begin
  {$ELSE}
    for i := 0 to CTe.infCTeNorm.emiDocAnt.Count - 1 do
    begin
      with CTe.infCTeNorm.emiDocAnt.Items[i] do
      begin
  {$ENDIF}
        for ii := 0 to idDocAnt.Count - 1 do
        begin
          for iii := 0 to idDocAnt.Items[ii].idDocAntPap.Count-1 do
          begin
            with idDocAnt.Items[ii].idDocAntPap.Items[iii] do
            begin
              Append;
              FieldByName('CNPJCPF').AsString:=CNPJCPF;
              FieldByName('xNome').AsString:=xNome;
              FieldByName('UF').AsString:=UF;
              case tpDoc of
                daCTRC: FieldByName('Tipo').AsString:='CTRC';
                daCTAC: FieldByName('Tipo').AsString:='CTAC';
                daACT: FieldByName('Tipo').AsString:='ACT';
                daNF7: FieldByName('Tipo').AsString:='NF 7';
                daNF27: FieldByName('Tipo').AsString:='NF 27';
                daCAN: FieldByName('Tipo').AsString:='CAN';
                daCTMC: FieldByName('Tipo').AsString:='CTMC';
                daATRE: FieldByName('Tipo').AsString:='ATRE';
                daDTA: FieldByName('Tipo').AsString:='DTA';
                daCAI: FieldByName('Tipo').AsString:='CAI';
                daCCPI: FieldByName('Tipo').AsString:='CCPI';
                daCA: FieldByName('Tipo').AsString:='CA';
                daTIF: FieldByName('Tipo').AsString:='TIF';
                daOutros: FieldByName('Tipo').AsString:='OUTROS';
              end;
       
            // correção PADILHA TROCADO INDICE VARIAVEL "ii" para "iii"
              
              FieldByName('Serie').AsString:=idDocAnt.Items[i].idDocAntPap.Items[iii].serie;                           // correção PADILHA TROCADO INDICE VARIAVEL "ii" para "iii"
              FieldByName('nDoc').AsString:=intToStr(idDocAnt.Items[i].idDocAntPap.Items[iii].nDoc);                   // correção PADILHA TROCADO INDICE VARIAVEL "ii" para "iii"
              FieldByName('dEmi').AsString:=FormatDateTime('dd/mm/yyyy',idDocAnt.Items[i].idDocAntPap.Items[iii].dEmi);// correção PADILHA TROCADO INDICE VARIAVEL "ii" para "iii"
          
              end;
            post;
          end;
          for iii := 0 to idDocAnt.Items[ii].idDocAntEle.Count-1 do
          begin
            Append;
            FieldByName('CNPJCPF').AsString:=CNPJCPF;
            FieldByName('xNome').AsString:=xNome;
            FieldByName('UF').AsString:=UF;
            with idDocAnt.Items[ii].idDocAntEle.Items[iii] do
            begin
              FieldByName('Tipo').AsString:='CT-e';
              FieldByName('Chave').AsString:=chave;
              FieldByName('Serie').AsString:=copy(chave,23,3);
              FieldByName('nDoc').AsString:=copy(chave,26,9);
              FieldByName('dEmi').AsString:=copy(chave,5,2)+'/'+copy(chave,3,2);
            end;
            post;
          end;
        end;
      end;
    end;
  end;
end;

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