Ir para conteúdo
  • Cadastre-se

Painel de líderes

Conteúdo popular

Showing content with the highest reputation on 24-10-2016 em todas as áreas

  1. Acredito ter conseguido resolver o problema... Commit [r12508] Após comparar detalhadamente a declaração de várias estruturas e tipos, de libxmlsec.pas com as declarações em C... Notei que a seguinte declaração poderia ter variação em 32/64 bits - time_t = LongInt; + time_t = SizeInt; No código original estava como "LongInt", mas time_t deve ser definido como Int64 (quando compilado em 64 bits) Por favor atualizem e testem... As DLLs de 64 bits podem ser baixadas em: ftp://ftp.zlatkovic.com/libxml/64bit/ No mesmo endereço, temos as DLLs de 32bits, porém compiladas com o MinGW... (usam a mesma nomenclatura das DLLs de 64 bits)... Vou subir essas DLLs para o nosso SVN
    4 pontos
  2. Acredito que tenhamos resolvido o problema... Atualize os seus fontes... e use as DLLs de: \ACBr\DLLs\XMLSec\MinGW\64
    2 pontos
  3. Olá Daniel obrigado pela ajuda ! Fiz teste no seguinte ambiente Linux CentOS 7 64 bits FPC 3.0 Lazarus 1.6 Consegui assinar e transmitir a NFe normalmente No ambiente 32 bits tudo continua funcionando normalmente também Abraços,
    2 pontos
  4. Não precisa atualizar as DLLs 32 bits... Voce deve "ligar" a diretiva de compilação em ACBr.inc, apenas se você decidir usar a versão 32 que está disponível no link indicado no change-log
    2 pontos
  5. Boa Tarde Italo Funcionou. Obrigado
    1 ponto
  6. Apenas para informar... As DLLs de 64 Bits já estão no SVN, em: \ACBr\DLLs\XMLSec\MinGW\64 Elas devem ser copiadas para: A mesma pasta da sua aplicação (.EXE) ou C:\Windows\System32
    1 ponto
  7. Acredito que não exista vantagem de desempenho usar a versão 32 bits, compilada com MinGW... A não ser que você queira manter uma padronização dos nomes das DLLs que o seu sistema deve distribuir, seja em 32 ou 64 Sim, o ACBr ligará a diretiva USE_MINGW, quando a CPU é 64 bits... veja no final de ACBr.inc // Ative a diretiva abaixo, para usar a Libxml2, libxslt, libxmlsec compilada // com MinGw ftp://ftp.zlatkovic.com/libxml/64bit/ {.$DEFINE USE_MINGW} {$IfDef CPU64} {$DEFINE USE_MINGW} {$EndIf} Na prática,isso apenas afetará a maneira que a libxmlsec.pas (e demais), procuram pelas DLLs (o nome da DLL) {$IFDEF MSWINDOWS} {$IFDEF USE_MINGW} LIBXMLSEC_SO = 'libxmlsec1.dll'; {$ELSE} LIBXMLSEC_SO = 'libxmlsec.dll'; {$ENDIF} {$ELSE} LIBXMLSEC_SO = 'libxmlsec.so'; {$ENDIF}
    1 ponto
  8. Que ótima notícia, Daniel. Testei no Windows com Delphi 10.1 Berlin e consegui assinar o XML com sucesso. Compilando em 32 bits tudo continua funcionando normalmente também. Muito obrigado Daniel e os demais colegas que contribuíram para este resultado. Att.
    1 ponto
  9. Agora fiquei confuso. Pensando apenas em 32 bits, tem vantagem ou desvantagem usar uma ou outra versão? E quando eu for migrar para 64 bits, o ACBr irá "ligar" a diretiva automaticamente quando for 64 ou preciso fazer isso manualmente caso opte por usar essa versão?
    1 ponto
  10. Bom dia, sobre NFC-e, outro dia achei esse site bem interessante http://nfce.encat.org/ sobre a sua dúvida: http://nfce.encat.org/institucional/nfc-e-nas-ufs/ Att Ricardo
    1 ponto
  11. Você deve verificar com a TEFHouse responsável pelo módulo TEF se eles exigem ou não homologação. SITEF e Pay&Go tem homologação que pode ser feita remotamente.
    1 ponto
  12. Ótima notícia! Quando você diz compiladas com MinGW, muda alguma coisa? Após atualizar o fontes, obrigatoriamente tenho que atualizar as DLL de 32 bits? Obrigado.
    1 ponto
  13. Isso é para evitar o transtorno de ter que emitir uma 2a via do boleto quando ele estiver vencido. Assim o cliente pode pagar em qualquer agencia mesmo vencido. Qualquer banco terá acesso aos dados do boleto online, cobrará os juros e multas. Mas essa alteração será por etapas. Primeiro os boletos de maior valor. Parece que até final de 2017 tambem os boletos de pequeno valor. Acho que pra nós do ACBr não alterará nada.
    1 ponto
  14. Seguindo a sugestão do Elton, consegui implementar as seguintes modificações, a fim de resolver o problema... -- OpenSSLExt, libeay32 -- [+] Adicionado suporte ao método: "X509_NAME_print_ex" (por: DSA) -- ACBrDFeOpenSSL -- [*] Modificada a implementação dos métodos: "GetSubjectName" e "GetIssuerName", para usar o método do OpenSSL "X509_NAME_print_ex", a fim de resolver problemas de detectação de Encoding em alguns certificados (por: DSA) Commit [r12506]
    1 ponto
  15. Caso queira conhecer outra opção de PDV, acesse http://www.djpdv.com.br
    1 ponto
  16. Bom dia José, O modo de envio síncrono é destinado a NFC-e (modelo 65) e não a NF-e (modelo 55). Lembre-se que no modo síncrono o lote só pode conter apenas UMA nota.
    1 ponto
  17. Bom dia a todos, Vocês chegaram a notar que existe um arquivo chamado DistribuicaoDFe.txt dentro da pasta: ...\Exemplos\ACBrDFe\ACBrNFe ? Vocês leram a NT que mencionei em postagens anteriores? Você entenderam que ao executar pela primeira vez o DistribuicaoDFe o que se obtêm são os resumos das notas (semelhante ao ConsultarNFeDest)? E que ao executar o DistribuicaoDFe pela segunda (ou terceira) vez o que se obtêm são os XML completos das notas manifestadas (semelhante ao Download)? Exemplo pratico: Suponha que foram emitidas 70 notas contra o seu CNPJ. UltNSU = 0 DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); // onde cUF e CNPJ são do destinatário da mercadoria Teremos como resposta 50 resumos de notas UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); Teremos como resposta os 20 resumos de notas restantes, uma vez que foram emitidas 70 notas contra o seu CNPJ, lembra? UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; Note que toda vez que executamos o DitribuicaoDFe devemos ler o valor de UltNSU pois sempre vamos usar essa informação na próxima vez que ele for executado. Como eu sei que não tem mais resumos de notas, simples: if ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137 then sTemMais := 'N' else sTemMais := 'S'; Se o Status for 137 significa que não tem mais documentos a serem lidos, logo devemos esperar por 1 hora para executar novamente o DistribuicaoDFe. Bom, agora você deve realizar a manifestação das 70 notas cujos resumos foram retornados pelo DistribuicaoDFe. Manifestado todas eles devemos executar: DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); // lembre-se o valor de UltNSU se refere a última execução do DistribuicaoDFe, pois este sempre retorna o um novo valor para UltNSU, veja a linha abaixo. UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; As duas linhas acima deve-se serem executadas até que o Status seja 137. Depois de manifestar as 70 notas (segundo o nosso exemplo) nessas ultimas execuções do DistribuicaoDFe podemos obter os XMLs completos dessas notas, bem como novos resumos de mais notas, resumos de eventos e até o XML completo de Eventos dessas notas manifestadas. Os XML completos das notas, serão salvos em disco desde que a propriedade: Configuracoes.Arquivos.Salvar tenha o valor True e esses XML serão salvos na pasta pré definida em PathDownload. Bom agora é com vocês, arregace as mangas e bom trabalho.
    1 ponto
×
×
  • 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.