Boa Tarde!
Estou querendo implementar a NFSe para Holambra/SP e após descobrir o provedor eu alterei os arquivos Cidades.ini e Fiorilli.ini conforme arquivos anexados nesta pergunta. (busquem pelo código do município 3519055)
Minha pergunta é se somente esta alteração é suficiente?
Não consegui testar no ambiente homologação, após incluir os dados requeridos pelo provedor conforme abaixo:
//este não é o codigo completo, eu apenas quis mostrar como está sendo feito para homologação no provedor Fiorilli segundo as exigências do provedor
ACbrNFSe1.Configuracoes.Geral.Emitente.CNPJ := '01001001000113';
ACbrNFSe1.Configuracoes.Geral.Emitente.InscMun := '100010';
ACbrNFSe1.Configuracoes.Geral.Emitente.RazSocial := 'PRESTADOR TESTE';
ACbrNFSe1.Configuracoes.WebServices.Ambiente := taHomologacao;
ACbrNFSe1.Configuracoes.Geral.UserWeb := '01001001000113';
ACbrNFSe1.Configuracoes.Geral.SenhaWeb := '123456';
ACbrNFSe1.NotasFiscais.Add;
ACbrNFSe1.NotasFiscais.Items[0].RegimeEspecialTributacao := retNenhum;
ACbrNFSe1.NotasFiscais.Items[0].Producao := snNao;
ACbrNFSe1.NotasFiscais.Items[0].OptanteSimplesNacional := snNao;
ACbrNFSe1.NotasFiscais.Items[0].Servico.Valores.Aliquota := 2.00;
ACbrNFSe1.NotasFiscais.Items[0].Servico.ItemListaServico := '0105';
ACbrNFSe1.NotasFiscais.Items[0].PrestadorServico.Endereco.CodigoMunicipio := '3504800';
Ao chamar o método Enviar(), recebo a seguinte mensagem de erro:
"Arquivo enviado com erro na assinatura.
Acerte a assinatura do arquivo."
Já tentei alterar a lib para assinatura, mas não acho que seja esse o problema. Um fato curioso é que só obtenho esse retorno se antes não chamar o método NotasFiscas.GerarLote(). Chamando o método, ocorre o seguinte erro, já debuguei e ocorre no momento da assinatura:
"Erro não especificado."
A linha onde ocorre o erro usando a SLLLib = libWinCrypt:
unit ACBrDFeXsMsXml;
function TDFeSSLXmlSignMsXml.Assinar(const ConteudoXML, docElement,
infElement: String; SignatureNode: String; SelectionNamespaces: String;
IdSignature: String): String;
var
//...
begin
//..
// Assinando com MSXML e CryptoLib //
signedKey := xmldsig.sign(dsigKey, CERTIFICATES); //O erro ocorre nesta linha: linha 184
if (signedKey = nil) then
raise EACBrDFeException.Create('Assinatura Falhou.');
//..
end;
No ambiente de produção parece estar funcionando, mas como estou usando um CNPJ diferente do Emitente, retorna o erro:
"O CNPJ do Documento é diferente do CNPJ do Certificado Digital"
Então não verifiquei se foi consumido o Webservice ou se isso é um tratamento interno do componente.
Enfim, repetindo a pergunta: Basta eu alterar os arquivos .ini conforme eu fiz nos anexos?
EDIT: Esqueci de informar o ambiente, Windows Server 2012 R2 Standard e Delphi 2010. Atualizamos os fontes do ACBr hoje antes de testar novamente, está na revisão 13709.
Se precisarem de mais alguma informação, por favor comentem.
Grato pela atenção,
João Marcos
Cidades.ini
Fiorilli.ini