Jump to content

F Almeida

Membros
  • Content Count

    71
  • Joined

  • Last visited

Community Reputation

8 Neutral

1 Follower

About F Almeida

  • Rank
    Membro

Profile Information

  • Sexo
    Masculino
  • Localização
    Santos, SP

Recent Profile Visitors

964 profile views
  1. Estou gerando o BlocoX tanto em produção quanto homologação sem problemas na Redução Z, porém ao gerar o XML de Estoque na base do cliente está com uma demora de cerca de 30 minutos na função GerarXML, tanto assinando quanto não assinando, tendo em vista isso, decidi optar por gerar o XML for fora e apenas assinar e informar o XML nos casos de estoque, mas não encontrei nenhuma propriedade ou função para informar o XML e assinar ele, existe essa possibilidade? No caso, estou gerando o XML pelo SQL Server, já trazendo no select do banco tudo em formato XML e apenas informaria o resultado da query para a propriedade do componente ou em função para assinar, mais ou menos assim: DM_BlocoX.QXMLEstoque.Close; DM_BlocoX.QXMLEstoque.ParamByName('inscricao_estadual').Value := DM_PDV.QParametrosINSCRICAO_ESTADUAL.Value; DM_BlocoX.QXMLEstoque.ParamByName('numero_credenciamento').Value := '123456789'; DM_BlocoX.QXMLEstoque.Open; ACBrBlocoX.Estoque.XMLOriginal := DM_BlocoX.QXMLEstoqueXML_ESTOQUE.Value; ACBrBlocoX.WebServices.EnviarBlocoX.XML := oBlocoX.Estoque.XMLOriginal; Alguém já trabalhou dessa forma?
  2. No caso do Delphi 7 o ACBr não está com a função de base64 pronta, para isso eu precisei utilizar a conversão feita pelo Indy e a DLL do 7-Zip e dai informar na propriedade do XMLZipado no ACBr, segue meu exemplo: uses IdCoderMIME; function Base64Encode(const ArquivoXML: String): String; var Encoder: TIdEncoderMIME; FileStream: TMemoryStream; begin Encoder := TIdEncoderMIME.Create(nil); FileStream := TMemoryStream.Create; FileStream.LoadFromFile(ArquivoXML); try Result := Encoder.Encode(FileStream); finally Encoder.Free; end; end; E alimentando a propriedade do ACBr, passando o caminho do Arquivo ZIP: oBlocoX.WebServices.EnviarBlocoX.XMLZipado := Base64Encode('estoque.zip'); No meu caso, eu gero o arquivo .XML pelo ACBr e zipo ele utilizando a DLL do 7-Zip, você irá precisar da dll 7zip.dll na pasta do seu executável e um arquivo .pas "sevenzip.pas", caso precisar posso fornecer por email ou um link de download, não sei quanto as políticas do fórum para anexar ela aqui, mas é um componente livre: var ArqZ: I7zOutArchive; ArqZ := CreateOutArchive(CLSID_CFormatZip); ArqZ.AddFile('estoque.xml', 'estoque.xml'); SetCompressionLevel(ArqZ, 5); ArqZ.SaveToFile('estoque.zip');
  3. Encontrei, o problema são os separadores decimais, o Web Service aceita apenas vírgula como separador decimal e ponto para separador milenar, tive de editar no Lazarus antes de montar o objeto do ACBrBlocoX e depois voltar ao padrão: if DecimalSeparator = '.' then begin DecimalSeparator := ','; ThousandSeparator:= '.'; end; Após isso, o Validador está apenas retornando IE inválida, porém neste caso creio que seja por estar informando a IE errada ou de alguma filial do cliente que não é a cadastrada no portal [email protected] mesmo.
  4. Pelo link realmente fui validando os casos que apareceram no validador, a princípio estava mandando algumas tags diferentes, como "Código" e pedindo o CódigoGTIN, notei que estava diferente dos esquemas, o motivo é que não estava colocando a VersaoER, após enviar a VersaoER := erv0205, o validador está apenas me retornando mensagens referentes aos patterns de valores, porém as mensagens estão estranhas: XML inválido: Erro 1001: Schema inválido: O elemento 'Quantidade' é inválido - O valor '69993.00' é inválido dependendo do tipo de dados 'Numero1a20Mais3PrecisaoType' - Falha na restrição Pattern.; O elemento 'QuantidadeTotalAquisicao' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais3PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorUnitario' é inválido - O valor '0.15' é inválido dependendo do tipo de dados 'Numero1a20Mais3PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorTotalAquisicao' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorTotalICMSDebitoFornecedor' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorBaseCalculoICMSST' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorTotalICMSST' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'Aliquota' é inválido - O valor '7.00' é inválido dependendo do tipo de dados 'Numero1a2Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'Quantidade' é inválido - O valor '79994.00' é inválido dependendo do tipo de dados 'Numero1a20Mais3PrecisaoType' - Falha na restrição Pattern.; O elemento 'QuantidadeTotalAquisicao' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais3PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorUnitario' é inválido - O valor '0.15' é inválido dependendo do tipo de dados 'Numero1a20Mais3PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorTotalAquisicao' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorTotalICMSDebitoFornecedor' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorBaseCalculoICMSST' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'ValorTotalICMSST' é inválido - O valor '0.00' é inválido dependendo do tipo de dados 'Numero1a20Mais2PrecisaoType' - Falha na restrição Pattern.; O elemento 'Aliquota' é inválido - O valor '7.00' é inválido dependendo do tipo de dados 'Numero1a2Mais2PrecisaoType' - Falha na restrição Pattern.; Os patterns parecem estarem corretos, nas casas decimais e quantidade de digitos, mesmo trocando no fonte do ACBr as mensagens persistem, alguma idéia?
  5. Encontrei, o problema é que estava logando com o certificado do cliente, não da software house, por isso os menus estavam diferentes, porém mesmo com o código, versão, nome empresarial que estava cadastrado ainda estou obtendo o mesmo retorno do XML, pelo que pesquisei existiu em algum momento um validador dos XML, ainda existe no site do [email protected]?
  6. Estou acessando o painel com o certificado digital porém não encontro as credenciais ou algo do tipo, apenas encontrei o "código de usuário" que fica informado no canto superior direito, que é o mesmo "código de usuário" informado no Termo de Compromisso digital, seria este o número do credenciamento?
  7. Estou realizando a homologação de envios do Bloco X, Estoque e Redução Z, já estou configurando e gerando os XML sem problemas, porém estou com problemas no envio para homologação de ambos, existe alguma tag específica para configurar? Segue como estou parametrizando e enviando: oBlocoX := TACBrBlocoX.Create(nil); with oBlocoX do begin Configuracoes.WebServices.Ambiente := taHomologacao; Configuracoes.Certificados.ArquivoPFX := 'ArquivoPFX.pfx'; Configuracoes.Certificados.Senha := '********'; Configuracoes.Certificados.NumeroSerie := '3'; with Configuracoes.Geral do begin SSLLib := libCustom; SSLCryptLib := cryOpenSSL; SSLHttpLib := httpOpenSSL; SSLXmlSignLib := xsLibXml2; SSL.SSLType := LT_TLSv1_2; end; Estabelecimento.Ie := ParametrosINSCRICAO_ESTADUAL.Value; Estabelecimento.Cnpj := ParametrosINSCRICAO_FEDERAL.Value; Estabelecimento.NomeEmpresarial := ParametrosRAZAO_SOCIAL.Value; Estabelecimento.Cnpj:='56806249000143'; Estabelecimento.NomeEmpresarial:='EMPRESA TESTE'; PafECF.Versao := '3.0.0.86'; PafECF.NumeroCredenciamento := '123456789'; PafECF.NomeComercial := 'TESTE'; PafECF.NomeEmpresarialDesenvolvedor := 'TESTE LTDA'; PafECF.CnpjDesenvolvedor := '87772218000142'; end; if vFuncao = 'ReducaoZ' then begin GeraReducaoZ(oBlocoX); end; if vFuncao = 'Estoque' then begin GeraEstoque(oBlocoX); end; oBlocoX.WebServices.EnviarBlocoX.XML := oBlocoX.Estoque.XMLAssinado; oBlocoX.WebServices.ValidarBlocoX.ValidarPafEcfEEcf := False; oBlocoX.WebServices.EnviarBlocoX.Executar; ShowMessage( 'Situação Proc. Cód.: ' + IntToStr(oBlocoX.Webservices.EnviarBlocoX.SituacaoProcCod) + #13#10 + 'Situação Proc. Str.: ' + oBlocoX.WebServices.EnviarBlocoX.SituacaoProcStr + #13#10 + 'Recibo: ' + oBlocoX.WebServices.EnviarBlocoX.Recibo + #13#10 + 'Tipo: ' + oBlocoX.WebServices.EnviarBlocoX.Tipo); O retorno que recebo: Em anexo o XML do Estoque gerado e assinado. estoque.xml
  8. Apenas respondendo em caso alguém passe pelo mesmo erro, o problema estava no .SO, no site da Sweda indo pela página de drivers o link estava para uma SO antiga e errada, pela página de produtos havia um link com a SO correta e atualizada. O nome da SO correta é "libSATDLL_Dual64b.so"
  9. Estou compilando o ACBrSAT para Lazarus utilizando o SAT SS-1000 da Sweda. Consegui sem problemas chegar até o ponto da Inicialização do SAT sem problemas, tanto pelo meu sistema quanto pelo exemplo do ACBr, porém a ConsultarStatusOperacional está me retornando um AccessViolation sempre na chamada da função na DLL (SO, no caso) xSAT_ConsultarStatusOperacional, testei tanto utilizando o satDinamico_cdecl quanto satDinamico_stdcall, utilizando a libSATDLL.so de 64bits e 32bits do site da SWEDA. Alguém já passou por problema parecido? Me parece que o erro está na chamada da .SO
  10. Boa Tarde, Ítalo Cheguei a imaginar que fosse algo do tipo, caso sejam restritos a ponto de liberar Web Service apenas para alguns, a própria empresa já possui um cadastro via web com o CNPJ que utiliza para emitir online, tentarei o contato novamente na prefeitura, já tentei anteriormente por telefone e email sem retorno. Atenciosamente, Felipe Almeida
  11. Bom dia, Ítalo Mesmo realizando apenas ACBrNFSe.Enviar continua a mesma mensagem de erro, o XML gerando da mesma forma também. Atenciosamente, F Almeida
  12. Boa Tarde, Estou testando a implementação da emissão de NFSe para o provedor Governa, usado na cidade de Araxá-MG, ao gerar o lote e enviar: ACBrNFSe.GerarLote(vNumLote); ACBrNFSe.Enviar(vNumLote,True); Estou recebendo a seguinte mensagem: Verificando mais a fundo, notei que o arquivo INI do provedor Governa.INI parece não ter preenchido os links, mesmo depois de atualizar, todos os links apontam para TempUri. [NameSpace] Producao=http://tempuri.org/ Homologacao=http://tempuri.org/ E mais abaixo do arquivo INI, parece estar comentado diferentes links para as duas cidades que utilizam o provedor: ; Araxá/MG RecepcaoLoteRPS_3104007=http://201.62.57.11:9090/WebService%NomeURL_P%/eSiat.asmx ; Iturama/MG RecepcaoLoteRPS_3134400=http://200.233.183.165/wsgoverna/eSiat.asmx Estes links estão corretos? Me parece que o arquivo INI em si não está completo, pelo que constei este provedor não requer assinatura em nenhum envio de XML também, procurei pelo site da empresa e encontrei o WSDL deles em: http://201.62.57.11:9090/WebServiceAraxa/ Aqui consigo abrir com o WSDLImporter e SOAP UI para verificar as funções, porém não tenho certeza de como preencheria no arquivo INI com os links. Resumindo, me parece que o INI está apontando para link antigo ou desatualizado, e sem sucesso de contato com o suporte, não faço idéia de qual é a raiz desta mensagem de aviso. Seguem em anexo os XML gerados Atenciosamente, F Almeida 941-rec.xml 941-env-lot.xml 941-lot-rps.xml 941001-rps.xml
  13. Bom dia, Paulo Tentei reinstalar do zero também, até agora nada, o jeito vai ser retornar um fonte antigo como disse, irei tentar isso aqui
  14. Boa Tarde a todos, Voltou a apresentar a mesma mensagem na transmissão de NFSe para a Prefeitura de São Paulo, tentei reinstalar pelo Trunk2 e atualizando por SVN antes, porém sem sucesso ainda Seguem os XMLs em anexo: Atenciosamente, F Almeida 10764-env-lot.xml 10764-rec.xml
  15. Italo, bom dia Testei uma emissão em Homologação com os mesmos datas que estava testando ontem e já consegui, a atualização dos fontes funcionou. Mudou algo em relação à assinatura com o certificado para SP? Pois sei que como não segue o padrão ABRASF o provedor de SP necessita de duas assinaturas diferentes, sendo esse o problema posso voltar alguns Ç e acentuação na discriminação também Grato, Felipe Almeida
×
×
  • Create New...