Ir para conteúdo
  • Cadastre-se

Painel de líderes

Conteúdo popular

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

  1. Seu comentário me cheira inveja... e a falta de tempo é pura desculpa de sua parte... (pois de certo nós, os caras do ACBr, somos todos uns desocupados) ... Vá procurar a sua turma... o ACBr não é para você... que não sabe cooperar e quer apenas exigir... Compre um componente pago e exerça o seu direito de ser chato com o suporte deles... Tópico Fechado
    2 pontos
  2. Olá para todos... Acabei de subir para o SVN, uma novo componente, ACBrMTER -- ACBrMTer -- [+] Adicionado novo componente ACBrMTer, que atua como servidor de MicroTerminais TCP/IP, suportando atualmente os protocolos: VT100, StxEtx, PMTG (por: Elias César Vieira e DSA) Alguns Links para estudo: Emulador Wilbor (protocolos VT100 e Stx/Etx) - http://www.gradual.com.br/prod/programas/Emulador Terminal.zip Manual Terminal Wilbor (contém manual protocolo VT100 e Stx/Stx) - http://www.gradual.com.br/prod/manuais/Terminal_Ethernet.pdf Emulador Will Tech (Protocolo VT100) - http://www.willtech.com.br/download/Emulador_2016.rar Manual Terminal WillTech (contem manual protocolo VT100) - http://www.willtech.com.br/download/MANUAL_TC_V1.80_2013.pdf Emulador Gertec (Protocolo PMTG) - http://www.gertec.com/Modulos/Container/PopUpDownload.aspx?codDownload= 541&codIdioma= 1 Manual de Comunicação Protocolo PMTG http://www.gertec.com/Modulos/Container/PopUpDownload.aspx?codDownload= 245&codIdioma= 1 Manual Bematech FIT (VT100 e Stx/Etx) http://www.bematech.com.br/equipamentos/produto/fit-basico Não deixe de ler este tópico:
    1 ponto
  3. Os Componentes do Projeto ACBrFramework não são feitos para serem usados em projetos Web, não garantimos o funcionamento.
    1 ponto
  4. Até onde sei, é um Bug da Bematech (o qual eu já reportei), e continua até hoje... Complicado... Mudar isso agora, no Sw.Básico do ECF, poderia quebrar aplicações que já se ajustaram a esse bug...
    1 ponto
  5. Pessoal, tive tempo para analisar a proposição e aprovei a modificação com base nas seguintes premissas. A implementação : Segue o modelo atual do ACBrTEFD para o CliSitef; Não altera o comportamento do componente atual; Não obriga o usuário a verificar o pinpad na inicialização; Apesar de ser uma implementação específica da CliSitef, segue o modelo de outras implementações específicas do CliSitef como ValidaCampoCodigoEmBarras e DefineMensagemPermanentePinPad; Se de qualquer forma isso causar algum problema, me avisem e eu reverto as alterações da revisão em questão (11842).
    1 ponto
  6. Olá pessoal, Como vou precisar enviar as informações do Bloco Q (livro caixa, obrigatório para empresas do lucro presumido desobrigadas a enviar a ECD), fiz a implementação do mesmo. Fiz todas as alterações sobre a versão atualizada do ACBR de hoje, por volta de 11 da manhã. EDIT: Fiz uma correção no TRegistroQ100 às 16:09, arquivo atualizado ACBrECFBloco_Q_Class.pas ACBrSpedECF.pas ACBrECFBloco_Q.pas
    1 ponto
  7. http://www.projetoacbr.com.br/forum/topic/4974-assinatura-digital-de-arquivos-exe/ http://www.projetoacbr.com.br/forum/topic/27238-problemas-com-inno-setup-e-anti-vírus/ http://www.projetoacbr.com.br/forum/topic/22838-icones-e-botões-sumindo Acho que tem mais algum tópico falando disso só que não estou achando aqui...
    1 ponto
  8. Se vc emitiu a NFCe Offline, logicamente vc não transmitiu pra lugar nenhum, então ao restabelecer o sinal da internet vc deve transmitir a nota. Não existe portal nacional para consulta de NFCe, apenas para NFe.
    1 ponto
  9. Segue a unit com a alteração que fiz na procedure TBloco_J.WriteRegistroJ150(RegJ005: TRegistroJ005); ACBrECDBloco_J_Class.pas
    1 ponto
  10. Puxa, estou com pouco tempo para analisar isso no momento... meu maior receio dessa implementação é o fato dela ser muito específica para apenas um TEF... Eu ainda estou "devendo" implementações para Leitura de Dados no PinPad (que eu já havia prometido em outro tópico) Está na fila... prometo analisar quando tiver um tempo...
    1 ponto
  11. Sim! módulo de banco! assine com certificado digital sua aplicação! simples resolve na hora!
    1 ponto
  12. Muito obrigado pela atenção pessoal! O Problema era o schema, as maquinas dos desenvolvedores estavam atualizadas, porém os clientes não
    1 ponto
  13. Para ter o XML da NF-e assinado, protocolado e com os eventos.
    1 ponto
  14. Boa noite deve de informar esse campo ACBrSPEDPisCofins1.DT_INI:=; ACBrSPEDPisCofins1.DT_FIN:=;
    1 ponto
  15. Boa tarde a todos. Tente desta maneira, é assim que uso. for I := 0 to ActionManager1.ActionCount - 1 do if ActionManager1.Actions.Name = 'NomedaAction' then TAction(ActionManager1.Actions).Enabled := True ; espero ter ajudado. Abraços Miguel
    1 ponto
  16. E ainda espera obter ajuda ?? Faça você mesmo um projeto melhor... boa sorte...
    1 ponto
  17. Simples. if ( Notas.FieldByName('INSCRICAO_EST').AsString )) <> '' then begin Dest.indIEDest := inContribuinte; Dest.IE := OnlyNumber( Notas.FieldByName('INSCRICAO_EST').AsString ); if Not ValidarIE( Dest.IE, VAR_UF_DEST ) then begin ShowMessage('ERRO. A Inscrição estadual [ '+Dest.IE+' ] não é válida...'); Exit; End; end else begin Dest.indIEDest := inNaoContribuinte; Ide.indPres := pcPresencial; Ide.indFinal := cfConsumidorFinal; End; Notas deverá ser a sua tabela e, INSCRICAO_EST o seu campo de inscrição estadual.
    1 ponto
  18. Bom dia segue banco ncm live conforme solicitado. ncmlive.rar
    1 ponto
  19. Utilizo ao ACBr para emissão de NFe e NFCe, e em ambos os casos tudo tem funcionado perfeitamente com a CAPICOM. Também criei uma função com base na função NFeUtil.Assinar para assinar outro modelo de documento XML chamado de DAI (Declaração Amazonense de Importação), enquanto eu estava usando a versão anterior do ACBr eu conseguia assinar e validar estes arquivos de DAI no site da sefaz. Porém a poucos dias atualizei a versão do ACBR, devido a atualização para o padrão 3.10 do NFCe e e estes documentos de DAI passaram a ser rejeitos com a seguinte mensagem de retorno: Assinatura Inválida (Digest do Documento não Confere). O Interessante é quando utilize outro aplicativo para assinar o documento como XML Signer o digest value gerado é diferente do gerado por esta função que uso (detalhe estou usando o mesmo certificado digital para ambas aplicações). Alguém pode me dar uma dica do que está acontecendo? Abaixo a função que uso e em anexo o arquivo assinado: Desde já agradeço pelo suporte técnico. function AssinarDIe(XML : AnsiString; Certificado : ICertificate2; out XMLAssinado : AnsiString): Boolean; var I, J, PosIni, PosFim : Integer; URI : String ; Tipo : Integer; xmlHeaderAntes, xmlHeaderDepois : AnsiString ; xmldoc : IXMLDOMDocument3; xmldsig : IXMLDigitalSignature; dsigKey : IXMLDSigKey; signedKey : IXMLDSigKey; begin Assinatura:=TStringList.Create; Assinatura.Clear; if (Pos('<Signature',XML) <= 0) and (TipoAssinatura='Matriz') then //Assinar MatrizDIe begin I := pos('<InfMatrizDIe',XML) ; Tipo := 1; URI := 'MatrizDIe00000041483057' ; if Tipo = 1 then XML := copy(XML,1,pos('</MatrizDIe>',XML)-1); XML := XML + '<Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />'; XML := XML + '<Reference URI="#'+URI+'">'; XML := XML + '<Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />'; XML := XML + '<DigestValue></DigestValue></Reference></SignedInfo><SignatureValue></SignatureValue><KeyInfo></KeyInfo></Signature>'; if Tipo = 1 then XML := XML + '</MatrizDIe>'+'</enviMatrizDIe>'; end Else begin //Assinar DIe I := pos('<InfDIe',XML) ; Tipo := 2; URI := URIDIe ; end; // Lendo Header antes de assinar // xmlHeaderAntes := '' ; I := pos('?>',XML) ; if I > 0 then xmlHeaderAntes := copy(XML,1,I+1) ; xmldoc := CoDOMDocument50.Create; xmldoc.async := False; xmldoc.validateOnParse := False; xmldoc.preserveWhiteSpace := True; xmldsig := CoMXDigitalSignature50.Create; if (not xmldoc.loadXML(XML) ) then begin Log:=TStringList.Create; Log.Text:=xml; Log.SaveToFile('C:\LogDAI.XML'); raise EACBrNFeException.Create('Não foi possível carregar o arquivo (Foi Gerado um Log em C:\LogDAI.txt).'); end; xmldoc.setProperty('SelectionNamespaces', DSIGNS); xmldsig.signature := xmldoc.selectSingleNode('.//ds:Signature'); if (xmldsig.signature = nil) then raise EACBrNFeException.Create('É preciso carregar o template antes de assinar.'); if NumCertCarregado <> Certificado.SerialNumber then CertStoreMem := nil; if CertStoreMem = nil then begin CertStore := CoStore.Create; CertStore.Open(CAPICOM_CURRENT_USER_STORE, 'My', CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED); CertStoreMem := CoStore.Create; CertStoreMem.Open(CAPICOM_MEMORY_STORE, 'Memoria', CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED); Certs := CertStore.Certificates as ICertificates2; for i:= 1 to Certs.Count do begin Cert := IInterface(Certs.Item) as ICertificate2; if Cert.SerialNumber = Certificado.SerialNumber then begin CertStoreMem.Add(Cert); NumCertCarregado := Certificado.SerialNumber; end; end; end; OleCheck(IDispatch(Certificado.PrivateKey).QueryInterface(IPrivateKey,PrivateKey)); xmldsig.store := CertStoreMem; dsigKey := xmldsig.createKeyFromCSP(PrivateKey.ProviderType, PrivateKey.ProviderName, PrivateKey.ContainerName, 0); if (dsigKey = nil) then raise EACBrNFeException.Create('Erro ao criar a chave do CSP.'); signedKey := xmldsig.sign(dsigKey, $00000002); if (signedKey <> nil) then begin XMLAssinado := xmldoc.xml; PosIni := Pos('<SignatureValue>',XMLAssinado) + length('<SignatureValue>'); PosFim := Pos('</SignatureValue>',XMLAssinado)-1; PosIni := Pos('<SignatureValue>',XMLAssinado)+length('<SignatureValue>'); XMLAssinado := copy(XMLAssinado,1,PosIni-1) + StringReplace( copy(XMLAssinado,PosIni,length(XMLAssinado)), ' ', '', [rfReplaceAll] ) ; PosIni := Pos('<X509Certificate>',XMLAssinado)-1; PosFim := DFeUtil.PosLast('<X509Certificate>',XMLAssinado); XMLAssinado := copy(XMLAssinado,1,PosIni)+copy(XMLAssinado,PosFim,length(XMLAssinado)); end else raise EACBrNFeException.Create('Assinatura Falhou.'); if xmlHeaderAntes <> '' then begin I := pos('?>',XMLAssinado) ; if I > 0 then begin xmlHeaderDepois := copy(XMLAssinado,1,I+1) ; if xmlHeaderAntes <> xmlHeaderDepois then XMLAssinado := StuffString(XMLAssinado,1,length(xmlHeaderDepois),xmlHeaderAntes) ; end else XMLAssinado := xmlHeaderAntes + XMLAssinado ; end ; dsigKey := nil; signedKey := nil; xmldoc := nil; xmldsig := nil; Assinatura.Clear; Assinatura.Text:=XMLAssinado; Result := True; end; 1413914987.xml
    1 ponto
  20. Esse erro geralmente é causado por falta de conexão, cheque o seguinte: - Configurações de proxy; - Configurações de firewall; - Configurações de antivirus; - Instalação do certificado; - Instalação da CAPICOM do ACBr.
    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.

The popup will be closed in 10 segundos...