Ir para conteúdo
  • Cadastre-se

Giovani Da Cruz

Membros
  • Total de ítens

    66
  • Registro em

  • Última visita

Tudo que Giovani Da Cruz postou

  1. Fiz um ajuste em LJsonNotas.AddElement(LJsonNota); //<- aqui para LJsonNotas.AddElementJSON(LJsonNota); para compatibilidade com os fontes ACBrBoletoW_Banrisul.pas
  2. O Banrisul agora permite vincular a nota fiscal com os boletos PIX registrados. Link da documentação https://developers.banrisul.com.br/pages/docs/clientes-banrisul/api-cobranca-v1.html#tag/boletos Fiz uma alteração na unit ACBrBoletoW_Banrisul para conseguir enviar esta informação e gostaria de compartilhar, talvez possa ser utilizada pela comunidade. ACBrBoletoW_Banrisul.pas
  3. O boleto é registrado no banco via API v2 do Sicredi, retorna os dados, tudo ok. Mais a frente o pessoal abre o internet bank e baixa os arquivos de retornos disponíveis. E digamos que em um destes arquivos há disponível a quitação do boleto gerado. Este arquivo de retorno vai conter a seção Y, nela vai ter a url preenchida (SegY, 82, 77) mas nestes casos que peguei, na linha depois onde deveria supostamente ter o TXID (SegY, 159, 35), é completado com espaços em branco. Uma sugestão se código seria na unit ACBrBoleto, separando os campos na validação. Neste caso deixei a segunda validação em comentário, porque o arquivo que estava processando não tinha dados na parte do TXID, assim consegui processar os retornos normalmente. Precisaria avaliar em que situações o campo TXID realmente é obrigatório. procedure TACBrBoletoPIXQRCode.PIXQRCodeDinamico(const AURL, ATXID: String; ATitulo : TACBrTitulo); var LEMV : TACBrPIXQRCodeDinamico; begin if (EstaVazio(AURL)) then raise Exception.Create(ACBrStr('URL é obrigatório!')); // if (EstaVazio(ATXID)) then // raise Exception.Create(ACBrStr('TXID é obrigatório!')); LEMV := TACBrPIXQRCodeDinamico.Create; try LEMV.IgnoreErrors := True; LEMV.MerchantName := ATitulo.ACBrBoleto.Cedente.Nome; LEMV.MerchantCity := ATitulo.ACBrBoleto.Cedente.Cidade; LEMV.PostalCode := Poem_Zeros(ATitulo.ACBrBoleto.Cedente.CEP,8); LEMV.URL := AURL; //LEMV.TxId := ATXID; // aqui já estava em comentário Seturl(AURL); SettxId(ATXID); Setemv(LEMV.AsString); finally LEMV.Free; end; end; Vou ver aqui para deixar o arquivo de retorno com dados fictícios para postar aqui.
  4. Isso, quando analiso um arquivo de retorno de uma quitação de boleto, existe o registro Y, existe a url (SegY, 82, 77), mas na posição do TXID (SegY, 159, 35) está em branco. Então quando indico este arquivo de retorno e faço: ACBrBoleto1.LerRetorno; Ocorre a exceção: 'URL e TXID é obrigatório!'
  5. Não é exatamente o mesmo. É ao processar arquivos de retorno contendo quitações de boletos híbridos, estou tendo a mensagem 'URL e TXID é obrigatório!'
  6. Oi pessoal, estava lendo sobre o tópico e me deparei com uma situação hoje pela manhã. Banco: Sicredi modo de arquivos cnab240 Boleto Híbrido registrado via WebService Ao processar o retorno de um boleto pago no pix, estava ocorrendo um erro 'URL e TXID é obrigatório!' procedure TACBrBoletoPIXQRCode.PIXQRCodeDinamico(const AURL, ATXID: String; ATitulo : TACBrTitulo); var LEMV : TACBrPIXQRCodeDinamico; begin if (EstaVazio(AURL) or EstaVazio(ATXID)) then raise Exception.Create(ACBrStr('URL e TXID é obrigatório!')); ... end; Analisando o arquivo de retorno, o arquivo contém a seção Y, com a URL do pix, mas em branco a parte do TXID ACBrBancoSicredi.pas linha: 2298 if Trim(Copy(SegY,82,77))<>'' then QrCode.PIXQRCodeDinamico(Trim(Copy(SegY,82,77)),Trim(Copy(SegY,159,35)), Titulo); Esta situação já ocorreu com alguém? O boleto foi registrado e quitado normalmente.
  7. Bom dia @Juliana Tamizou, segue em anexo o manual utilizado. Atenciosamente Giovani Da Cruz 1685563119393-gr---cob136---cobranca-web---layout-cnab-240---remessapdf.pdf
  8. Boa tarde! Verificamos a necessidade de realizar um ajuste, no arquivo ACBrBancoUnicredES.pas para utilizar a opção "Dias para Negativação" O problema ocorre que ao montar o arquivo de remessa, o mesmo utiliza o mesmo valor para dias de protesto e dias de negativação. { Dias para protesto / Negativação } ADias := '00'; if Length(ACodProtesto) > 0 then begin if ACodProtesto[1] in ['1', '2'] then // protesto begin ADias := PadLeft(IntToStr(DiasDeProtesto), 2, '0'); end; if ACodProtesto[1] in ['4', '5'] then // negativação begin ADias := PadLeft(IntToStr(DiasDeNegativacao), 2, '0'); end; end; Também colocamos um ajuste para o código correto para a questão da negativação. if ACodProtesto = '7' then begin ACodProtesto := '4'; end; Com esta versão do arquivo, consegui homologar para CNAB 240. Gostaria de disponibilizar o arquivo para ver se pode ser útil ao projeto. ACBrBancoUnicredES.pas
  9. Olá. Estamos mantendo uma versão open source do User Control https://github.com/infussolucoes/usercontrol-sd Há diversas melhorias sugeridas por usuários, no entanto estamos atarefados aqui na empresa e não estamos conseguindo fazer as modificações sugeridas. Então estamos contratando freelancers com experiência em manipulação de componentes para realizar algumas melhorias no UserControl. A Suíte permanecerá Open Source. Interessados podem entrar em contato comigo. E-mail: [email protected] Skype: giovani_da_cruz
  10. Olá pessoal. Tenho interesse em contratar freelancers para o desenvolvimentos de algum módulos em html 5 Os módulos são integrações por json de sistemas existentes. E-mail para contato: [email protected]
  11. Seguinte, poderia carregar a lista de ocorrências, sem ter que instanciar um objeto. Exemplo: procedure TFrmRemessaCadastro.Button1Click(Sender: TObject); var I: Integer; vList : TACBrOcorrenciasRemessa; begin vList := TACBrBoleto.GetOcorrenciasRemessa(); ComboOcorrencia.Clear; for I := Low(vList) to High(vList) do begin ComboOcorrencia.Items.Add(vList[I].Descricao); ComboOcorrencia.Values.Add(GetEnumName(TypeInfo(TACBrTipoOcorrencia), Integer(vList[I].Tipo))); end; end;
  12. Olá pessoal! Estava analisando a função function GetOcorrenciasRemessa da unit acbr boleto, gostaria se saber se há possibilidades de deixar a mesma como class function como segue class function TACBrBoleto.GetOcorrenciasRemessa: TACBrOcorrenciasRemessa; var I: Integer; begin SetLength(Result, 41); for I:= 1 to 41 do begin Result[I-1].Tipo := TACBrTipoOcorrencia(I-1); Result[I-1].descricao := cACBrTipoOcorrenciaDecricao[I-1]; end; end; Assim se torna possível o uso da função se precisar instanciar um objeto. Desde já agradeço o retorno.
  13. Sim, estou utilizando as dlls de x64. Interessante que funcionava em antes da alteração do endereço, a pesquisa de cnpj funciona normalmente, no x64. Outro detalhe interessante é que testando o exemplo executando no D, funciona, mas no C, mesmo como administrador, da o Erro 500.
  14. Encontrei um problema mesmo compilando o programa de exemplo. Delphi 10 Seatle, Windows: Diversos compilação: 64 bits OBS: Colocando o exe gerado na pasta C:\arquivos de programas... Em x32 funciona normalmente. Em x64 em uma pasta comum O erro ocorre: procedure TACBrConsultaCPF.Captcha(Stream: TStream); HTTPGet('https://www.receita.fazenda.gov.br/Aplicacoes/SSL/ATCTA/CPF/captcha/gerarCaptcha.asp'); HTTPMethod( 'GET', AURL ); HTTPSend.HTTPMethod(Method, AURL); aqui a propriedade HTTPSend.ResultCode fica 500. Sendo que depois dará o erro aqui OK := HTTPSend.ResultCode = 200; //... if not OK then raise EACBrHTTPError.Create( 'Erro HTTP: '+IntToStr(HTTPSend.ResultCode)+' '+ HTTPSend.ResultString + sLineBreak + 'URL: '+AURL + sLineBreak + sLineBreak + 'Resposta HTTP:' + sLineBreak + String(AjustaLinhas( AnsiString(RespHTTP.Text), 80, 20) )) ; Detalhe o erro só ocorre na compilação x64 e executando em uma pasta mais restrita ex : c:\Program Files
  15. Testando agora, com os fontes atualizados de hoje, verifiquei que o problema foi resolvido com o Fortes. Com fast, não aparece qualquer informação dos dados de entrega. Testado com DANFeRetrato, DANFeRetratoNovo atualizados. conferencia.xml
  16. Nos meus testes utilizei o fortes. Vou tentar com o fast para ver se o problema persiste.
  17. Olá pessoal. Fazendo alguns testes com o endereço de entrega, percebi um detalhe. O complemento não esta saindo no danfe. No xml, tudo é preenchido corretamente, e o logradouro, número, bairro e etc aparecem automaticamente no danfe, porém o complemento não. Alguém já passou pelo mesmo problema? Talvez seja algo que esteja fazendo errado, mas não consegui identificar.
  18. Olá pessoal, alguns clientes de minha empresa reportaram a necessidade de importar dados de pessoas para o Sistema dos correios, o SIGEP. Conforme o manual, criei um componente para facilitar a geração do arquivo. Este componente foi criado, mantendo o padrão do ACBr e gostaria de saber se pode ser adicionado aos componentes. Segue em anexo os fontes do componente e o manual de geração do arquivo. O caminho das unit já esta no padrão do ACBr também, mas coloquei todos os arquinos no mesmo zip, a fim de facilitar o upload. ACBrSIGEP.zip Importação de Dados - SIGEP.docx
  19. Pelo que sei, você pode criar um formulário próprio para fazer um login personalizado no User Control. Se você estiver usando o UserControl da comunidade Show Delphi, Existe um fórum http://showdelphi.com.br/forum/forum/duvidas-e-problemas-relacionados-ao-usercontrol-showdelphi-edition/. Link do repositório git para baixar o componente: https://github.com/infussolucoes/usercontrol-sd Descrição dos componentes: http://showdelphi.com.br/descricao-dos-componentes-usercontrol/
  20. Realizei um estudo aqui e já resolvi.
  21. Olá. Tentei pesquisar aqui no fórum antes, mas não encontrei o que procurava. Seguinte, estou listando as notas destinadas a meu cliente normalmente com o exemplo DMDFe.NFe.DistribuicaoDFe. Até ai, tudo bem. Porém não estou conseguindo saber a situação da Manifestação da NF-e. Gostaria e exibir semelhante ao MD-e gratuito. Tem isto implementado no projeto? Caso positivo, alguém pode me dar escrever aqui um breve exemplo? Desde já, agradeço a colaboração.
  22. Por hora já conseguimos colaboradores para o projeto. Desde já, agradeço a todos pelo contato.
  23. Olá pessoal, estamos a procura de programadores Freelancer. Utilizamos Delphi 7 e disponibilizamos área de trabalho remota para a execução dos serviços. Os serviços em geral são a implementação de novos recursos, relatórios e etc. Interessados, favor enviar e-mail para [email protected], se possível com o skype para contato e a forma que costuma cobrar. (Valor a Hora, pro projeto, etc).
  24. Use por exemplo DataVencimento := ACBrNFe1.SSL.CertDataVenc;
  25. Comigo ocorreu o mesmo, hoje pela manhã atualizei os fontes, rodei o bat como de costume, e na hora de instalar, ocorre o mesmo erro. É com o pacote da danfe como fast. Utilizando o instalador: D:\ACBr\trunk2\Fontes\ACBrDFe\ACBrNFe\DANFE\NFe\Fast\ACBrNFeDANFEFRDM.pas(1935) Error: E2003 Undeclared identifier: 'FpNFe' D:\\ACBr\trunk2\Fontes\ACBrDFe\ACBrNFe\DANFE\NFe\Fast\ACBrNFeDANFEFR.pas(1974) Fatal: F2063 Could not compile used unit 'ACBrNFeDANFEFRDM.pas' Compilation failure
×
×
  • 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...