Ir para conteúdo
  • Cadastre-se

rafael_deitos

Membros
  • Total de ítens

    20
  • Registro em

  • Última visita

Posts postados por rafael_deitos

  1. Estou efetuando testes no demo do ACBRNFSe, na seguinte função do ACBrNFSeWebServices tenho o retorno: ERRO ONBEFOREPOST : 5 

     

       if not InternetSetOption(Data, INTERNET_OPTION_CLIENT_CERT_CONTEXT, PCertContext, Sizeof(CERT_CONTEXT)*5)
        then begin
         if Assigned(TACBrNFSe(FACBrNFSe).OnGerarLog)
          then TACBrNFSe( FACBrNFSe ).OnGerarLog('ERRO: Erro OnBeforePost: ' + IntToStr(GetLastError));
         raise Exception.Create( 'Erro OnBeforePost: ' + GetLastErrorText {IntToStr(GetLastError)} );
          end;
        end;
     
     
    Estou utilizando o Delphi 7 e uma maquina com Win7 64.
     
    Alguém tem alguma sugestão do que pode ser?
     
  2. Sim, o numero de série do certificado esta indo da forma correta... Estou fazendo testes no Demo do ACBRNFSe,

     

    verifiquei se havia algum carácter estranho no serial passado, o serial esta sem espaços em branco e com todas as letras maiúsculas:

     

    9EE97BE21273858C47852A96058722C6

     

    e a chave que estou passando:

     

    00000000UNICA00000000023420140605TNN00000000016855000000000000000001.07299999999000191

     

    O certificado esta devidamente instalado, porém este certificado foi gerado por mim, mas acredito que isso não faça diferença.

  3. Sim estou usando a sua dll... não tenho como instalar aqui o Visual Studio pra debuga e localiza o problema.

     

    Apenas na tag <Assinatura> veio "Erro ao assinar RPS"...

     

    Busquei nos fontes e localizei o seguinte código em CAssinaRPSSP com esta mensagem: 

     

     

     public string AssinarRPSSP(string serial, string original)

            {
                //X509Store store = new X509Store(StoreLocation.LocalMachine); 
                X509Store store = new X509Store();
                store.Open(OpenFlags.ReadOnly);
                string sn = serial, criptografada; //" put here your certificate serial number "; 
                criptografada = "";
                X509Certificate2Collection coll = store.Certificates.Find(X509FindType.FindBySerialNumber, serial, true);
                X509Certificate2 cert = null;
     
                Console.WriteLine(coll.Count);
     
                if (coll.Count > 0 && coll[0] != null)
                {
                    cert = coll[0];
                }
                else return "Erro ao assinar RPS";
     
                //recebe o certificado e a string a ser assinada 
                System.Text.ASCIIEncoding enc = new System.Text.ASCIIEncoding();
                RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
                //pega a chave privada do certificado digital 
                rsa = cert.PrivateKey as RSACryptoServiceProvider;
                //cria o array de bytes e realiza a conversao da string em array de bytes 
                byte[] sAssinaturaByte = enc.GetBytes(original);
     
                RSAPKCS1SignatureFormatter rsaf = new RSAPKCS1SignatureFormatter(rsa);
                SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider();
     
                //cria a variavel hash que armazena o resultado do sha1 
                byte[] hash;
                hash = sha1.ComputeHash(sAssinaturaByte);
     
                //definimos o metodo a ser utilizado na criptografia e assinamos 
                rsaf.SetHashAlgorithm("SHA1");
                sAssinaturaByte = rsaf.CreateSignature(hash);
     
                //por fim fazemos a conversao do array de bytes para string 
                criptografada = Convert.ToBase64String(sAssinaturaByte);
                return criptografada;
            }
  4. Arieldll, Estou tendo o seguinte retorno da dll : "Erro ao assinar RPS"

     

     

     

    store.Certificates.Find(X509FindType.FindBySerialNumber, serial, true) aparentemente não me retorna nada, testei com mais de um certificado!

     

    Não posso instalar o Visual Studio aqui na empresa então se tiver alguma ideia do que pode ser ajudaria.

  5. Jonatha,

     

    Ao tentar registrar a dll tenho resultado negativo, pode me auxiliar?

     

    RegAsm: error RA0000 : Não foi possível carregar arquivo ou assembly 'file://caminhoArquivo/RegAsm.exe' ou uma de suas dependências. Operação sem suporte. <Exceção de HRESULT: 0x80131515).

     

    Direito do mouse no RegAsm.exe + Propriedades e clique em Desbloquear. Faça o mesmo na dll.

  6. O que foi feito até o momento referente a SP, não poderia ser commitado nos fontes oficiais?

     

     

    Pois estou instalando aqui... se tudo der certo posso postar as Units ja integradas com a versão atual.

  7. Qual o xml da cce deve ser enviado ao cliente? Seria o ACBrNFe1.WebServices.CartaCorrecao.RetWS?

    Mais uma dúvida, qual é o comando para pegar o xml assinado? Estou conseguindo pegar apenas o de resposta (ACBrNFe1.WebServices.CartaCorrecao.RetWS)

  8. Bom dia.

    Essas propriedades são atribuídas ao Titulo na leitura do arquivo retorno, antes disso elas são vazias, exceto quando criamos o titulo na lista e atribuímos que é uma Remessa.

    Atualmente não existe uma função que lhe retorne todas as ocorrências existentes. Qual seria a vantagem de ela existir?

    Att.

    Bom... a utilidade de se ter uma função que retorne todas as ocorrências possíveis de cada banco é que eu poderia desenvolver um tratamento dentro do meu sistema...

    Faria da seguinte forma, avisem se não for claro:

    Crio uma tabela que armazene as ocorrências aqui no banco de dados do meu sistema

    faço a leitura de todas as ocorrências existentes de determinado banco

    dou a possibilidade do cliente definir o que cada ocorrência deve fazer dentro do meu sistema... Por exemplo: se a ocorrência for 00: baixar a conta, se a ocorrência for 01:re-emitir remessa

    entendeu?

    do contrario teria que fazer uma forma manual para conseguir todas as ocorrencias...

  9. estou procurando um método que retorne todas as ocorrências de um banco /* Códigos e descrições */?

    Gostaria de pegar todas.. mas para não fazer manualmente iria "capturar" as tratadas pelo componente e dizer como o mesmo deve se comportar com determinada ocorrencia... existe algum metodo ou forma de fazer isso?

  10. onyxsistemas o problema esta ocorrendo pois quando o layout de carnes é selecionado, é necessario preencher a variavel Titulo.TotalParcelas, com o numero total de parcelas da qual a determinada venda possui, para que apareça na impressão...

    EX:

    Titulo.TotalParcelas := 12

    Titulo.Parcela := x

    Impressão:

    1/12

    2/12

    3/12

    4/12

  11. onyxsistemas você esta utilizando o Fast para emitir?

    Se esta, nada acontece pois ainda não foi desenvolvido o layout de carnes em Fast... Estou validando um junto ao Banrisul, quando estiver tudo ok posto aqui...

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