Alexsander

Membros
  • Total de ítens

    355
  • Registro em

  • Última visita

  • Days Won

    2

Alexsander last won the day on March 25 2013

Alexsander had the most liked content!

Reputação

7 Neutro

1 Seguidor

Sobre Alexsander

Profile Information

  • Localização
    Porto Alegre, RS
  1. O problema estava no Ubuntu (tanto 14.04 LTS quanto 16.04 LTS): quem fez o empacotamento da libxmlsec alterou as opções padrão e removeu diversas funções. A solução que encontrei foi recompilar a libxmlsec com as opções default e substituir a versão do repositório.
  2. Carregar Certificado A1

    Apenas para registro, segue código que utilizamos. Nosso certificado está em base64 em CertModA1.certificado: var dados: AnsiString; (...) dados := DecodeStringBase64(CertModA1.certificado); (...) Certificados.DadosPFX := dados;
  3. Como ficou esse feedback? Se precisar de ajuda para implementar isto no componente, avise.
  4. Estou tendo este problema no Ubuntu 16.04 recém instalado (ainda com a libxmlsec 1.2.20 original): ==== EXCEPTION ==== Erro ao ler informações do Certificado. Provavelmente a senha está errada Detalhe: este MESMO executável do meu aplicativo funciona normalmente num Ubuntu 14.04 (que veio com a libxmlsec 1.2.18, porém eu COMPILEI a libxmlsec 1.2.18 com as opções default para funcionar). Acho que a exigência de "libxmlsec 1.2.20" que está no ACBr não é necessária, mas parece que o Ubuntu está empacotando esta lib com algumas opções desligadas. Ainda não testei compilar no 16.04 mas eu achava que o fato de vir com a 1.2.20 eliminaria esta necessidade.
  5. ACBrPosPrinter com EPSON TM-T20 USB no Linux

    Só para constar, resolvi este problema mandando gerar um arquivo e depois enviando este arquivo para a impressora: var cupom, impressora: TFileStream; arquivo: string; (...) arquivo := '/tmp/cupom.txt'; with ACBrNFe1.NotasFiscais.Items[0].NFe.Ide do ACBrDANFe1.PosPrinter.Porta := arquivo; (...) impressora := TFileStream.Create('/dev/usr/lp0', fmOpenReadWrite); cupom := TFileStream.Create(arquivo, fmOpenRead); impressora.CopyFrom(cupom,cupom.Size);
  6. ACBrPosPrinter com EPSON TM-T20 USB no Linux

    Sim, eu sei, olhei os fontes. A função TBlockSerial.GetErrorDesc da Synaser retorna este erro. Eles mapearam alguns erros, os demais eles repassam para a SysErrorMessage da SysUtils. A mensagem em questão é o erro ENOTTY, o texto está no arquivo errnostr do FPC (linha 18): /usr/share/fpcsrc/3.0.2/rtl/linux/errnostr.inc Apenas imaginei que alguém poderia ter tido o mesmo problema.
  7. ACBrPosPrinter com EPSON TM-T20 USB no Linux

    Conforme eu expliquei no post original, o "echo" está funcionando perfeitamente. Por coincidência eu já tinha encontrado esta mesma página em uma pesquisa anterior... PS: Se eu instalar a impressora com os drivers, via CUPS, funciona no ACBrPosPrinter, porém esta opção cria dificuldades para o suporte.
  8. Via linha de comando, echo "Teste" >> /dev/usb/lp0 imprime normalmente. No PosPrinterTeste quando coloco "/dev/usb/lp0" dá erro "Communication error 25: Not a typewriter." De que forma preciso configurar o ACBrPosPrinter (ou o Linux) para funcionar ?
  9. Menu OnExibeMenu não aparece.

    Você conseguiu fazer funcionar no Linux 64 bits?
  10. Carregar Certificado A1

    Eu também gostaria de usar desta forma, tentei converter o certificado PFX em base64 e usar Certificados.DadosPFX := arquivo_pfx_em_base64 mas não funcionou, deu uma exceção no arquivo ACBrDFeOpenSSL, na linha 885 (abaixo). Ao debugar e vi que p12 na linha 921 está retornando nil. 885 if not LerPFXInfo(DadosPFX) then (...) 921 p12 := d2iPKCS12bio(b, nil); O que está faltando fazer? No momento estou simplesmente convertendo o arquivo PFX em base64. Estou usando Lazarus 1.6.4 com FPC 3.0.2 (Linux 64).
  11. ACBrMonitor e Etiquetas em Impressora Argox

    Agora é possível instalar no CUPS com os drivers da Argox: http://www.argox.com/content.php?sno=0000033&P_ID=19
  12. Incluir CCO na TACBrDFe.EnviarEmail

    Olhei os fontes, daria pra colocar logo após o IF abaixo (colocando nil como valor default para não afetar os programas existentes): procedure TACBrDFe.EnviarEmail(sPara, sAssunto: String; sMensagem: TStrings; sCC: TStrings; Anexos: TStrings; StreamNFe: TStream; NomeArq: String; { AQUI ==> } sBCC: TStrings); (...) if Assigned(sCC) then begin for i := 0 to sCC.Count - 1 do MAIL.AddCC(sCC[i]); end; //--- AQUI if Assigned(sBCC) then begin for i := 0 to sBCC.Count - 1 do MAIL.AddBCC(sBCC[i]); end; //--- fim MAIL.Send; end; Com isso também daria para alterar o ACBrMonitorPLUS para acrescentar a opção CCO no comando NFE.ENVIAREMAIL. Que tal?
  13. LAZARUS 1.6.2 lançado

    Vou testar este upgrade num ambiente de testes. Seria interessante incluir este tipo de requisito na documentação. Enquanto isso, uma alternativa que compilou (não testei se imprime mesmo), junto com a declaração de uma variável tmp_cont integer, foi a seguinte: {$IFDEF FPC_FULLVERSION < 30000} Printer.Write(AString,Length(AString),tmp_cont); {$ELSE} Printer.Write(AString); {$ENDIF}
  14. LAZARUS 1.6.2 lançado

    ACBrDevice.pas(1571,25) Error: Wrong number of parameters specified for call to "Write" procedure TACBrDevice.EnviaStringRaw (...) (...) Printer.Write(AString); (...) Na unit Printers a declaração está assim: function Write(const Buffer; Count:Integer; var Written: Integer): Boolean; virtual; Com SVN blame descobri que esta alteração entrou na release 12443: ~/fontes/ACBr$ svn -r 12442:HEAD log Fontes/ACBrSerial/ACBrDevice.pas ------------------------------------------------------------------------ r12443 | dopi | 2016-10-02 21:47:17 -0300 (Dom, 02 Out 2016) | 18 linhas -- ACBrDevice -- [+] Adicionado o suporte a portas "RAW", permitindo usar o "Nome da Impressora", do sistema operacional, na definição da "Porta" Exemplo: "SWEDA SI-300S" ou "RAW:SWEDA SI-300S" Use "*" para imprimir na impressora Default [+] Nova sintaxe para atribuição de portas do tipo "Arquivo". Exemplo: "C:\TEMP\saida.prn" ou "FILE:C:\TEMP\saida.prn" [+] Adicionada nova propriedade "DeviceType: TACBrDeviceType", sendo que TACBrDeviceType = (dtFile, dtSerial, dtTCP, dtRawPrinter, dtHook) Essa propriedade é detectada automaticamente, na atribuição da propriedade "Porta", mas pode ser atribuída posteriormente, caso a detecção automática não esteja correta. -- ACBrPosPrinter -- [-] Ajuste para ignoarar as tags '</corte_parcial> e </corte_total> quanto propriedade "CortaPapel" for False. [-] Correção na exibição de mensagens de erro com acentuação. (por: DSA) ------------------------------------------------------------------------ Estou compilando com Lazarus 1.4.4 e FPC 2.6.4 num Ubuntu 14.04 LTS.
  15. LAZARUS 1.6.2 lançado

    Requisito mínimo para o ACBr no Lazarus é a versão 1.6?