Jump to content

Mario Inacio

Membros
  • Posts

    115
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by Mario Inacio

  1. Bom dia.

    A implementação ficou correta mas somente para quando o emitente for de SC.

    Num caso específico que tenho, a empresa é do RS e a abriu uma conta na Unicred de SC, então a regra criada não é executada.

    A regra deveria estar vinculada ao estado da Agência emissora, mas de qualquer forma contornei o problema, já preenchendo o campo com 15 caracteres.

  2. fpNome é usado na procedure GerarRegistroHeader240 e o manual exige que o nome seja CREDSOL CONFEDERACAO.

    fpCodigosMoraAceitos é usado quando se atribui conteudo a propriedade CodigoMora quando dispara o SetCodigoMora que está na unit ACBrBoleto, e manual  apenas permite valores 0 ou 1, e o default de fpCodigosMoraAceitos está como 1 e 2 setado no create da mesma Unit.

     

     

     

     

  3. Boa tarde.

    Apesar da alteração não ter sido incluido ao SVN, baixei e tentei gerar a remessa do Cresol em CNAB240, pois na homologação, algumas inconsistências ocorreram na versão disponível no SVN.

    Tento alterar as propriedades abaixo e não são efetivadas, o que estaria errado?

    constructor TACBrBancoCresol.Create(AOwner: TACBrBanco);
    begin
      inherited create(AOwner);
      fpNumero                        := 133;
      fpNome                          := 'CRESOL CONFEDERACAO'; // alterado por mario 22/02/2022
      fpCodigosMoraAceitos            := '01';                  // incluido por mario 22/02/2022
      fpDigito                        := 3;
      fpNumeroCorrespondente          := 0;
      FNumeroSequencialRegistroNoLote := 0;
      fpLayoutVersaoArquivo           := 84;
      fpLayoutVersaoLote              := 42;
    end;

     

    ACBrBancoCresol.pas

    Faltou o Manual

    manual_cobrança_integrada_cooperado_240.pdf

  4. Boa tarde.

    Estou homologando o Banco Safra e conforme o manual em anexo para CNAB210, na posição 221 a 221 (Código para Protesto) deve obedecer a lista constante em C026 (Pagina 150), sendo que a versão atual do ACBrBoleto setava para '0' caso não houvesse Protesto.

    Alterei a Unit ACBrBancoSafra (linha 733) para setar corretamente para 'Instrucao1 := '3';  // Não protestar'

    Link Manual Safra: https://www.safra.com.br/data/files/47/71/9D/F6/C451971028EDDE77E03EF9C2/Layout padrao CNAB240 V 10 07 - 03_11_20 _1_.pdf

    Segue em anexo, Unit alterada para avaliação.

     

    ACBrBancoSafra.pas

  5. Boa tarde.

    Estou com erro ao imprimir em Raw.

    O demo imprime normal, então fiz um teste criando o método que uso dentro do demo e emite normal, colei o mesmo trecho no meu sistema apresenta o erro no spooler da impressora:

    image.thumb.png.d2bb10035507e1e5519ab63f8baebd08.png

    Código testado no demo e no meu sistema, no demo funciona:
    
    var
       LocalPosPrinter: TACBrPosPrinter;
       SL: TStringList;
    begin
       try
          LocalPosPrinter := TACBrPosPrinter.Create(nil);
          SL := TStringList.Create;
          sl.Add('teste de impressao');
          with LocalPosPrinter do begin
             Porta  := 'RAW:Daruma DR700 Spooler';
             Modelo := ppEscDaruma;
             Ativar ;
             Buffer.Text := SL.Text;
             Imprimir;
          end;
       finally
          sl.free;
          LocalPosPrinter.Free ;
       end;
    end;

    Alguém já passou por isso?

  6. Ola.

    Ainda não é assim que imagino, pois o parâmetro dessa função pode ser NFe, CTe ou MDFe.

    Deveria ser variant.

    procedure CarregaComponente(vComponente: variant);
    begin
      vComponente.Configuracoes.Geral.idCSC := <idCSC>;
      vComponente.Configuracoes.Geral.VersaoQrCode := veqr200;
    end;

     

  7. Ola Big.

    Não vou usar apenas NF-e, quero chamar para todos os DF-e e parametrizar em um único local.

    Seria assim as chamadas:

     
    CarregaComponente(ACBrNfe) ou 
    CarregaComponente(ACBRCte) ou
    CarregaComponente(AcbrMDfe)
     

    Dentro da função CarregaComponente identificaria o componente que chamou e usaria com "with" 

  8. Boa tarde.

    Estou alterando a forma de configurar o componente em minha aplicação e estava tentando fazer uma função genérica, mas precisava de classe/função que identificasse o componente que chegou ali.

    Da seguinte forma:

    procedure CarregaComponente(vComponente: variant);
    
    begin
    
    	   // essa funcao abaixo precisaria identificar o componente que chamou	
           with ClasseQueIdentificaOComponenteQueChamou(vComponente) do begin
    
                   with Configuracoes.Geral do begin   
                      SSLLib                  := TSSLLib(fieldbyname('SSLLib').asInteger);
                      SSLCryptLib             := TSSLCryptLib(fieldbyname('CryptLib').asInteger);   
                      SSLHttpLib              := TSSLHttpLib(fieldbyname('HttpLib').asInteger);   
                      SSLXmlSignLib           := TSSLXmlSignLib(fieldbyname('XmlSign').asInteger);   
                      Salvar                  := True;   
                      ExibirErroSchema        := True;   
                      RetirarAcentos          := True;   
                      FormaEmissao            := TpcnTipoEmissao(fieldbyname('formaemissao').asInteger);   
                      ModeloDF                := TpcnModeloDF(1);   
                      VersaoDF                := TpcnVersaoDF(fieldbyname('versao').asInteger);   
                      IdCSC                   := fieldbyname('idtokenhom').asString;   
                      CSC                     := Trim(fieldbyname('tokenhom').asString);   
                      if fieldbyname('ambiente').asInteger = 0 then begin                //producao   
                         IdCSC                := fieldbyname('idtoken').asString;   
                         CSC                  := fieldbyname('token').asString;   
                      end;   
                      VersaoQRCode            := veqr200;   
                   end;   
         end;
    
    end;

     

    Teria alguma nesse sentido?

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.