Ir para conteúdo
  • Cadastre-se

sismais

Membros Pro
  • Total de ítens

    90
  • Registro em

  • Última visita

Posts postados por sismais

  1. 2 horas atrás, José M. S. Junior disse:

    Ok, se está setado para não ler cedente retorno, não deveria validar agencia e conta mesmo... Vamos verificar este caso para ajustes.

    Na verdade a ideia de validar até é boa (poderia ter até uma outra propriedade para escolhermos validar ou não). O problema é que no caso da Caixa (e possívelmente outros bancos) não é retornado o número da Conta então a validação poderia ser feita usando o código do beneficiário por exemplo.

  2. 1 hora atrás, José M. S. Junior disse:

    Boa tarde @maiconsaraiva, tentou ler o retorno setando o campo "LerRetornoCedente" como false, para layouts onde o retorno não informa todos os dados de cedente normalmente é utilizado esta opção.

    Já sim, mas aí é que tá. Se seto para False ele gera o excepcional (como no trecho de código acima), se seto para "True" ele passa, mas atribui à propriedade Cedente.Conta um valor errado, este é o problema.

  3. Olá pessoal, bom dia. Já vi este erro em alguns tópicos que foi dado como resolvido, mas o problema persiste.

    No Arquivo ACBrBoletoCaixa.pas, Linha 1759:

       rCedente := trim(Copy(ARetorno[0],47,30));
       rAgencia := Copy(ARetorno[0],27,4);
       rConta   := Copy(ARetorno[0],34,8);

    O "rConta" não está pegando o valor correto ( e nem teria como pegar, vou explicar por que). Vi um relato da própria Juliana Tamizou (em um tópico semelhante, mas sobre o CNAB240).

    Citação do tópico referente ao CNAB240:

    Citar

    Bom dia Rodrigo.

    Você chegou a conferir a informação que está vindo nas posições lidas pela rotina?

    No caso do Sicob o código do cedente também contém os dados da conta, conforme orientações extraídas do manual disponibilizado pelo banco:

    Código do Convênio no Banco (Código do Cedente)

    Código fornecido pela CAIXA, através da agência de relacionamento do cliente, específico para
    identificar determinados tipos de serviços / produtos.
    O campo CÓDIGO DO CEDENTE deverá ser preenchido da seguinte forma:
    AAAAOOOCCCCCCCCD, onde:
    AAAA = código da Agência CAIXA de relacionamento do cliente / cedente
    OOO = Operação
    CCCCCCCC = Número da Conta Corrente ou seqüencial
    D = Dígito Verificador

     

    Favor anexar o arquivo com problema para que possamos analisar.

    Acontece que no novo layout da caixa (página que disponibiliza, link direto para o manual ) , deixa claro que no retorno vem apenas código do beneficiário (código do cedente):

    Trecho da pág. 19:

    image.png.55ef37fffd7257422650b16923f1ee56.png

    NE004, pág 34:

    image.thumb.png.16f5694fc379d9701e20bd8c5aef8c30.png

     

    Na versão atual do layout, o código do beneficiário não contém o código da conta corrente. Tenho provas em um cliente que possui Conta Corrente e Código de Beneficiário totalmente diferentes.

    Teria que modificar esse trecho,  não estou conseguindo processar meus retornos neste novo cliente.

    O trecho na linha 1772 do arquivo ACBrBoletoCaixa.pas tem que ser modificado:

       with ACBrBanco.ACBrBoleto do
       begin
          //(Por Maicon Saraiva) Esta validação não pode ser feita (motivo abaixo)
          if (not LeCedenteRetorno) and
             ((rAgencia <> OnlyNumber(Cedente.Agencia)) or
              (rConta <> OnlyNumber(Cedente.Conta))) then
             raise Exception.Create(ACBrStr('Agencia\Conta do arquivo inválido'));
    
          if LeCedenteRetorno then
          begin
            Cedente.Nome         := rCedente;
            Cedente.Agencia      := rAgencia;
            Cedente.Conta        := rConta; //(Por Maicon Saraiva) Esta leitura não é segura, já que o Número da Conta não está contido no arquivo de retorno ( e nem no código do beneficiário) da CEF (e possívelmente passará a ser assim em outros bancos).
          end;
    
          ACBrBanco.ACBrBoleto.ListadeBoletos.Clear;
       end;

    Em anexo, envio o arquivo de retorno, e mais uma imagem do Tradutor de Arquivo de retorno disponibilizado pela caixa (Nota: o código da Conta Corrente é 222-3 e do Beneficiário é 551835):

    image.thumb.png.10117367b1754700cc1bc23b632111cb.png

    Não se se estou errado, mas se não estiver precisamos modificar este trecho do código no SVN do ACBr.

    Desde já agradeço.

    GCB_MZ_BEC2_RTC400_B1N7U9_D170918_H042123_NT0345931381.ret

  4. 16 horas atrás, carlos_tedex disse:

    Boa tarde Maicon,

    Também tive problemas em todos os meus clientes que utilizam o arquivo remessa da CEF.

    Antes o componente tinha um tratamento parecido com sua sugestão.

    Para resolver de forma mais rápida sem precisar alterar o componente fiz o seguinte:

    Quando estou alimentando o componente verifico se a variável ValorMoraJuros é maior que zeros, caso seja eu alimento a variável CodigoMora := 1.

    Exemplo:

    
      if cdsFinanceiroMoraDiaria.AsFloat > 0 then
      begin
        ValorMoraJuros  := cdsFinanceiroMoraDiaria.AsFloat;
        CodigoMora      := '1'; //Valor por Dia
      end
      else
        ValorMoraJuros  := 0;

     

    Bacana Carlos. Acabei fazendo algo parecido também.

  5. Pelo que vi, os bancos estão fazendo um balaio de gato com o formato destes campos. Não sei se isso vai se regularizar após a estabilização desta nova plataforma de cobrança, espero que sim.

    Tenho 2 observações a fazer:

    01. Acredito que há um erro no layout da remessa CNAB240 (Na linha 825 da unit ACBrBoletoBancoob.pas):

         else if CodigoMora = '2' then
           ValorMora := IntToStrZero(Round(ValorMoraJuros * 10000), 15);

    A multiplicação, quando CodigoMora=2 não deveria ser por 10000 (assim como é feita no layout 400) e sim por 100, pois, segundo manual (em XLS) do Sicoob de 24/02/2017 este campo deve estar no formato abaixo para remessa CNAB240:

    "Juros de Mora por Dia/Taxa ao Mês
    Valor = R$ ao dia
    Taxa = % ao mês
    Ex: 0000000000220 = 2,20%; Ex: 0000000001040 = 10,40%"

    Já a CNAB400 fica assim:

    "Taxa de mora mês
    Ex: 022000 = 2,20%"

    Este sim, deve ser multiplicado por 10000.

    Tive que utilizar CodigoMora=1 que é em R$ / dia.

    Em anexo envio o manual do Sicoob datado de 24/02/2017.

    02. Tive que fazer uma adaptação na geração do meu arquivo de remessa para o Sicoob (Fiz no meu ERP), mas poderia ser feito no ACBrBoletoBancoob para ajudar mais pessoas.

    Minha adaptação (pode ser que ajude mais alguém):

    No momento de alimentar o ACBrBoleto1.Titulos

                    
                    CodigoMora := '1';
                    case ACbrBoleto1.Banco.TipoCobranca of                 
                     cobBancoob :
                      begin
                        //Se estiver gerando remessa então faz o tratamento especifico do campo ValorMoraJuros
                        if (bGerarRemessa) and (FdmBoleto.qrCedenteTAXA_JUROS.AsFloat<>0) then
                        begin
                          if FdmBoleto.ACBrBoleto1.LayoutRemessa=c400 then
                          begin
                            //0=Isento, 1=Valor por dia, 2=Taxa mensal
                            //Obs: Até 15/09/2017 este campo CodigoMora só era usado no layout 240 na unit ACBrBancoBancoob, mas já coloco nos dois por segurança
                            CodigoMora:= '2';
                            ValorMoraJuros := FdmBoleto.qrCedenteTAXA_JUROS.AsFloat/30 //Divido por 30 aqui por que na unit ACBrBancoBancoob/cnab400 ele multiplica por 30
                          end else
                          if FdmBoleto.ACBrBoleto1.LayoutRemessa=c240 then
                          begin
                            CodigoMora := '1'; //0=Isento, 1=Valor por dia, 2=Taxa mensal
                            ValorMoraJuros := StrToFloat(FormatFloat('###,##0.00',ValorDocumento * (FdmBoleto.qrCedenteTAXA_JUROS.AsFloat / 30 /100) ));  //Juros armazenado sempre mensal e em percentual
                          end;
                        end;
                      end;
    
    
                    end;

    Para padronizar e evitar maiores problemas futuros, minha sugestão seria o ACBrBoleto forçar nós desenvolvedores a enviar um formato específico no campo "ValorMoraJuros" (podendo ser em %/mês ou em R$ ao dia por exemplo). E o campo CodigoMora seria preenchido de acordo a necessidade (e disponibilidade de cada banco).  Um exemplo seria remover este campo e criar um novo que deixe explicito o formato exigido: "PercentualJurosAoMes" (Nos tratamentos seria fácil transformar em R$/dia, %/dia, ou R$/mês) , e tornaria obrigatório o preenchimento do CodigoMora (mesmo se em algumas remessas não utilizar, o ACBr usaria).
    Assim o ACBrBoleto poderia, em cada unit de cada banco, fazer os tratamentos necessários (Na impressão e na geração das remessas).
    (Não sei se estão entendo o que quero dizer)

     

     

    Sicoob_Layouts_para_troca_de_informacões_Fev_2017.xls

  6. Em 04/08/2017 at 11:46, José M. S. Junior disse:

    Bom dia, alteração já disponível no SVN.

     

    José. bom dia. A linha abaixo acabou forçando uma mudança nos códigos da minha aplicação:

    PadRight(CodigoMora, 1, '3')                               + //118 - Código de juros de mora: Valor por dia

    Como o CodigoMora não tem nenhum tratamento default e é uma string, ele vem por default = '', e se não for preenchido na alimentação do ACBrTitulos (no ERP) ele então ficará "3", e antes ficava "1" (caso tivesse Mora)
    Nno meu caso por exemplo começou a dar problema com esta nova atualização, já que eu não preenchia este campo, creio que isso poderá afetar outros clientes também.

    Minha sugestão é colocar a linha como abaixo:

    IfThen( (ValorMoraJuros > 0) and (CodigoMora=''), '1', PadRight(CodigoMora, 1, '3') )   + //118 - Código de juros de mora: Valor por dia

    Assim manteremos compatibilidade com as duas necessidades.

     

     

  7. Agnaldo, muito obrigado pela informação, não sabia sobre a possibilidade desse procedimento. Vou a passar com protocolos a partir de agora.

    Bom, dando continuidade à este procedimento, depois de um bom tempo me responderam, porém apontando novos erros:

    Citar

    1. Informamos que foi realizada nova leitura para a massa de teste da empresa PAULO T. M. ME, após a análise informamos que a mesma apresenta alguns erros:

    1.2 O cedente está no sistema http://cobranca.caixa cadastrado como “sem registro”;

    1.3 O código de barras não possui as medidas: 13 mm altura x 103 mm largura, 12 mm do final da folha até o Centro (meio) do código de barras; verificar termo em anexo.

    2. Aguardarmos nova massa de teste para análise.

    3. Estamos à disposição.

    Vou ajustar e enviar novamente.

     

     

  8. Pessoal, gostaria de pedir ajuda para um problema que está me deixando louco. (Talvez nem seja um problema).

    Enviamos alguns boletos para a homologação pela Caixa, eles solicitaram alguns ajustes, fiz os ajustes solicitados, emiti novos boletos e enviei, agora retornaram me dizendo que no Código de Barras do Boleto não consta o Fator de Vencimento.

    Mensagem da Caixa:
     

    Citar

    2.     A massa não poderá ser homologada devido as inconformidades abaixo:

    ·       Não consta informação do fator de vencimento no código de barras

    3.     Para maiores esclarecimentos poderá ser consultado o MO 67119.

    Eu fiquei confuso, já que aparentemente estava tudo OK, mas como bom samaritano que sou, repassei todo o MO, para tentar identificar se poderia haver algum erro nas posições etc. Quebrei a cabeça fiz testes e mais testes, e no final vi que não tem erro.
    Detectei também que pode ter sido um engano do agente homologador, parece que ele é novo na caixa, e ao que me parece pode ter confundido a ordem do Código de Barras (que passa no leitor) e a ordem da linha digitável. (que tem ordem diferente).
    O que fiz? Redigi um outro e-mail formal, citando o item do MO 67119 onde deixa claro que a linha digital segue ordem diferente do código de barras (que passa no leitor), e falei que se ainda assim tivesse com erro, para por favor darem exemplo apontando um boleto específico (dentre os que eu enviei).

    Citar

    Olá SR. FULANO, bom dia. Tudo bem?
    Conforme conversei com nosso cliente em comum, o erro do qual citaram do Fator de Vencimento, verificamos e não detectamos erro (pelo nosso entendimento do MO).


    Abaixo relaciono nossa analise, por favor re-encaminhe para o setor de homologação.

    • No item "5.5 ANEXO V – LINHA DIGITÁVEL / REPRESENTAÇÃO NUMÉRICA" (página 22) do MO 67119 temos a nota abaixo:
      "Nota 3: Os dados da representação numérica não se apresentam na mesma ordem do código de barras, mas sim de acordo com a seqüência descrita acima."
      R: Os boletos emitidos seguem exatamente o que informa neste e nos demais itens. Não conseguimos entender o erro. Não seria uma pequena confusão quanto ao Código de Barras e a Linha Digitável que tem ordens diferentes?

      Ou seja, segundo a nota acima (um padrão estabelecido pelo BC) a ordem da linha digitável possui ordem diferente do código de barras (que passamos no leitor), e em nossos boletos enviados para homologação ambos estão em ordem e representação correta. Creio que pode ter sido um pequeno engano no que concerne à estes dois objetos (linha digitável e código de barras).


    O que aconteceu? O gerente da Caixa (não consigo ter contato direto com o agente homologador), não deu a mínima atenção, e me mandou um e-mail com um print do conteúdo do e-mail que falava do fator de vencimento (mesmo e-mail que eu já tinha lido e respondido),  e enviaram também um print da parte no MO que fala sobre o fator de vencimento. (que eu também já tinha lido e re-lido várias vezes); O que eu fiz? Falei com o cliente (que já estava meio aborrecido com a situação) expliquei que aquele e-mail eu já tinha processado, respondido e precisava da re-analise referente ao fator de vencimento, enviei outro e-mail para o gerente da caixa, e dai não me responderam mais. Ligo na agencia e nunca consigo falar com ele, o proprio cliente ja pediu ele pra me ligar e ele não liga. Em fim. Nunca fiquei tão frustrado com a CEF como estou agora.

    Desculpem o desabafo, mas estou postando em detalhes para compartilhar essa tristeza com os amigos.E já estou tentando resolver isso há pelo menos 20 dias. Sem contar que o e-Cobrança da caixa está com instabilidade para emissão de boletos, e o cliente está me perguntando sempre como está o andamento (ele sabe que agora depende da caixa, ma não entende nada técnico e me pediu ajuda pra resolver isso, e foi o que eu fiz).

    Bom, agora gostaria de pedir ajuda de quem já homologou Boleto na caixa. Estou anexando alguns boletos, se alguém puder dar uma olhada e ver se tem ou não algo errado no Fator de Vencimento, eu ficaria muito grato.

     

    Boleto Teste 1.pdf

    Boleto Teste 2.pdf

    Boleto Teste 3.pdf

  9. Pessoal, estou atualizando meus relatórios (para Delphi Seattle e Fast Report 5).

    E estou em dúvida sobre quais os relatórios que estão corretos estarão recebendo as atualizações.

    - DANFeRetrato.fr3 ou DANFeRetratoNovo.fr3 ?
    - DANFeNFCe.fr3 ou DANFeNFCe3_50.fr3 ?

    Já dei uma pesquisada aqui no fórum e procurei nos logs mas não ficou claro a diferença.

  10. 17 horas atrás, Eliseu disse:

    Os meus cliente que migraram do ECF sentiram muita dificuldade com a forma anterior. Essa forma atendeu plenamente a todos.
    A lei fala apenas do que é obrigatório e te da liberdade para promover outras alterações. Eu não vi nenhum problema e como já tem mais de um ano acho que isto está superado.

     

    Opa, beleza. Já implementei, e também não vejo problema em fazer isso. Os colegas que estão acompanhando este post saberia dizer algo a respeito?

  11. Waldir Paim

    Em relação ao Delphi para Web o que quis dizer foi justamente isso. Tem soluções sim, mas nada que valia apena investir em programação para Web com ele, visto que existem ferramentas bem melhores (Para programação Web). Vou dar uma pesquisada nas dicas que me passou, obrigado. Aqui na empresa estamos em um dilema para saber se investimos no Desktop ou mudamos para Web.

    Voltando ao tópico, sua ideia é interessante, mas pelo que vejo iria demorar um tempo para poder iniciarmos o uso correto?. Neste caso preciso ainda encontrar alguma alternativa ainda que mais simples para resolver minha necessidade atual, porém continuo disposto a contribuir no projeto com o que puder. Como pretendem dar os próximos/primeiros passos?

  12. Em relação à linguagem, creio que o Delhpi ainda vai dar muito o que falar por ai. Não tenho do que reclamar, tem atendido bem minhas necessidades, a única dificuldade fica somente para programação Web. que nativamente ainda não tem nada plauísivel, não sei nas novas versões. mas até a pouco não tinha. Mas como já está atuando bem para Mobile, logo deverá ter soluções eficientes para Web. Ou alguém já conhece alguma?

  13. Então Waldir Paim

    Deve ter uma galera com essa necessidade mesmo. Não estou com muita pressa não, mas o quanto antes melhor. Esta ferramenta que está trabalhando, tem previsão de quando ficará pronta? Precisam de ajuda em alguma implementação? Gostaria de conversar mais a respeito sim.

    6 horas atrás, xyberx disse:

     Eu tenho e fiz tudo isso de vários jeitos diferentes, se precisar só entrar em contato.

     [email protected] ou [email protected]

    Bacana xyberx, enviei um email pra ti.

  14. Olá pessoal. Gostaria de contratar (se o preço estiver acessível), alguém para desenvolver um pequeno aplicativo para atualizar minhas aplicações automáticamente pela web, e também uma distribuição do EXE e oturos arquivos pelos computadores da Lan.

    O Atualizador irá ter 2 funcionalidades em uma.

    1. Ele deverá verificar, se há internet, e verificar em um Banco MySQL se há uma nova versão do sistema disponível. Se houver ele baixa ou verificar se essa versão já não esta disponível na pasta de distribuição no servidor.

    2. Ele deverá ou baixar os arquivos necessários na internet, ou buscar no diretório do servidor (que pode ser uma pasta ou mesmo um FTP local), e atualizar os arquivos do terminal.

    Requisitos:

    - Desenvolvimento:
    -- Delhi, podendo ser em versão mais nova, e disponibilização dos fontes completos e razoavelmente comentados.
    -- Conexão com MySQL remoto para verificação de novas versões.
    -- Conexão com FTP.
    - Download e descompactação de alguns arquivos, já outros download e distribuição somente.
    - Deverá mostrar o progresso do Download, e ter tratamentos para falhas na conexão (Tentar novamente, cancelar, etc.).

    Informações e propostas enviar por mensagem ou Skype: maicon.interprise.

    Obrigado, aguardo.



     

  15. Em 03/02/2016 at 07:59, Eliseu disse:

    Pessoal, não sei se este assunto já está superado, mas, como eu estava com o mesmo problema, e o cliente estava pressionando para mostrar o valor cheio e o troco no danfe, eu consegui uma alternativa bem razoável para o Fast Report, e sem alterar nenhum dos fontes acbr.

    Estou editando o .fr3 e no evento BeforePrint do memo que imprime o valor em dinheiro, eu inclui o seguinte código para imprimir o valor em dinheiro sem descontar o troco:

    procedure mmPagOnBeforePrint(Sender: TfrxComponent);
    var nDin: Double;
    begin
       if <CalculoImposto."VTroco"> > 0 then
       begin               
          if <Pagamento."tPag"> = 'Dinheiro' then
          begin             
             nDin := <Pagamento."vPag"> + <CalculoImposto."VTroco">;
             mmPag.Text := FormatFloat('#0.00', nDin);
          end;
       end;  
    end;
     

    Eliseu, você conseguiu verificar se é permitido fazer isso?

    Estou pensando em colocar assim no meu sistema. Se colocar o valor do troco (sem informar o valor cheio antes) pode acabar confundindo um pouco alguns clientes. Obrigado.

  16. Olá pessoal, procurei no fórum e em outros locais na Web e não encontrei.

    Estou preparando meu sistema pra emitir a NFCe, já tenho o CSC e o IDToken/CSC, consigo emitir em ambiente de homologação normalmente e gerar o DANFCe.

    Porém no momento de consultar pelo celular usando um leitor QRCode o seguinte erro é exibido:
    "Ocorreu um erro no processamento da página. Failed to convert parameter value from a String to Int64."

    Já tentei com uns 3 que emiti, e nada.

    Dados técnicos:
    Delphi 7, Firebird 2.1, Danfe do Fast Report (DANFeNFCe.fr3), Estado: BA

     

    Segue anexo do DANFE com problemas.

    Em caso de uso do DANFECe (do FastReport) teria algum tratamento especifico para montagem do QRCode? Não pesquisei a fundo, mas estou presumido que o proprio componente faça tal montagem.

    Desde já agradeço.

    DANFeNFCe_Problemas.pdf

  17. Olá pessoal!

     

    Bom tenho um pequeno ERP que já emite NFe 3.1 Normalmente. Temos um PDV Fiscal (ECF+TEF) Homologado, cuja integração com o ERP principal é feita somente parcial (Não integra financeiro por exemplo).

    Estamos precisando implementar a NFCe em nosso sistema. Eu teria duas opções:

     

    1 - Implementar no PDV Homologado já existente.

    2 - Implementar dentro do meu ERP principal e em um módulo PDV (Não homologado) que temos totalmente integrado com a retaguarda (meu interesse maior seria neste caso).

     

    Estou muito na correria ultimamente e mal pude pegar nos manuais do NFC-e.

    Procuro alguém para implementar pra mim. E gostaria de saber dos amigos aqui do forúm se posso implementar como desejo na opção 2? (Não tive tempo de aprofundar neste aspecto ainda).

     

    Detalhes da aplicação:

    Delphi 7

    Banco: Firebird 2.1

    Obs: Forneço VirtualBox com ambiente de desenvolvimento montado.

     

     

    Preços e/ou dúvidas enviar para:

    [email protected]

    Skype: maicon.interprise

    Att.

    Maicon Saraiva

     

    Desde já agradeço.
     

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