Ir para conteúdo
  • Cadastre-se

gilspider

Membros
  • Total de ítens

    33
  • Registro em

  • Última visita

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

gilspider's Achievements

  1. Boa noite Italo, Atualizei os fontes e a leitura do xml funcionou perfeitamente, colocar o tratamento na função ParseDataHora , ficou bem melhor. Muito obrigado pela atenção, vocês são nota 10!
  2. Bom dia, Segue unit ACBrUtil.DateTime.pas ACBrUtil.DateTime.pas
  3. ACBr revision 25950 (27/06/2022 10:42:53) Retorno do Log na consulta do NFSe/Lote: Método Executado: ConsultarNFSe Parâmetros de Envio Num. Ini. NFSe: Num. Fin. NFSe: Data Inicial : 27/06/2022 Data Final : 27/06/2022 Parâmetros de Retorno Sucesso : True Erro(s): Código : X999 Mensagem: Erro de Conexão: '27/03:00' is not a valid integer value Correção: --------- NFS-e Numero....: 666 Cod. Verificacao: 746212305 Prestador.......: Tomador.........: --------------------------------------------------------------------------------- Trecho do XML de retorno da prefeitura de Fortaleza: <DataEmissaoRps>2022-06-27-03:00</DataEmissaoRps> <NaturezaOperacao>1</NaturezaOperacao> <OptanteSimplesNacional>2</OptanteSimplesNacional> <IncentivadorCultural>2</IncentivadorCultural> <Competencia>2022-06-27-03:00</Competencia> O problema esta na unidade ACBrUtil.DateTime, na função AjustarData. A função ParseDataHora da mesma unit, faz a chamada substituindo "-" por "/" xData := AjustarData(StringReplace(xData, '-', '/', [rfReplaceAll])); Trecho da função AjustarData function AjustarData(const DataStr: string): string; var Ano, Mes, Dia, i: Integer; xData: string; begin xData := DataStr; i := Pos('/', xData); if i = 0 then begin Result := xData; end else begin if i = 5 then begin xData := copy(xData, 1, 10); //alterado para utilizar os 10 primeiros digitos Ano := StrToInt(Copy(xData, 1, 4)); xData := Copy(xData, 6, Length(xData)); i := Pos('/', xData); Mes := StrToInt(Copy(xData, 1, i-1)); Dia := StrToInt(Copy(xData, i+1, Length(xData))); Result := FormatFloat('0000', Ano) + '/' + FormatFloat('00', Mes) + '/' + FormatFloat('00', Dia); end Como a posição da "/" = 5, o código pega o Ano = 2022, o mês = 06, porém o Dia ele retornava "27/03:00", retornando a exceção na primeira NFSe lida no arquivo. Ao acrescentar a linha: xData := copy(xData, 1, 10); //utilizar os 10 primeiros digitos A leitura voltou ao normal, na consulta por NFSe e Lote.
  4. ACBr revision 25950 (27/06/2022 10:42:53) Retorno do Log na consulta do NFSe/Lote:
  5. Bom dia, Ao emitir RPS nos provedores Recife e Fortaleza retorna o erro: <MensagemRetorno> <Codigo>E547</Codigo> <Mensagem>Alíquota incorreta</Mensagem> <Correcao>Informar a alíquota correta ou verificar Regime Especial de Tributação.</Correcao> </MensagemRetorno> Ambos os provedores exigem que a Alíquota seja enviada na forma decimal (dividida por 100) O componente atualiza o valor da alíquota com função AjustarAliquota(const Aliquota: Double; DivPor100: Boolean = False): Double;, onde o parâmetro booleano DivAliq100 informa se será dividido ou não por 100 (padrão FALSE) Esta função é chamada nas unidades ACBrNFSeXGravarXml_ABRASFv1 e ACBrNFSeXGravarXml_ABRASFv2, variando o valor de DivPor100 de acordo com o provedor utilizado. Com isso faz-se necessário incluir "DivAliq100 := true", no procedimento "Configurar", das unidades ISSFortaleza.GravarXml.pas e Recife.GravarXml.pas Após a inclusão da linha no procedimento Configurar, a emissão foi aprovada sem erros em ambos os provedores. Segue anexo unidades modificadas. Recife.GravarXml.pas ISSFortaleza.GravarXml.pas
  6. obrigado!
  7. ACBrNFSeXProviderABRASFv1.pas Esta é a unidade alterada, comentei o código original antes de alterar, a partir da linha 761
  8. Boa noite, ao realizar teste de consulta no ACBrNFSeX na prefeitura de Fortaleza retornava o erro abaixo: Modo de Envio : ConsultarNFSe Sucesso : False Erro(s): Código : X999 Mensagem: 1871 - Element '{http://www.ginfes.com.br/tipos_v03.xsd}DataInicial': This element is not expected. Expected is ( {http://www.ginfes.com.br/servico_consultar_nfse_envio_v03.xsd}DataInicial ). ------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------- Alterei a unidade: ACBrNFSeXProviderABRASFv1.pas na linha: 761, troquei o PrefixoTS por Prefixo como segue abaixo, e resolveu o problema, alguém mais teve o mesmo problema? ----------------------------------------------------------------------------------------------------- if (Response.InfConsultaNFSe.DataInicial > 0) and (Response.InfConsultaNFSe.DataFinal > 0) then XmlConsulta := XmlConsulta + '<' + Prefixo + 'PeriodoEmissao>' + //'<' + PrefixoTS + 'DataInicial>' + '<' + Prefixo + 'DataInicial>' + FormatDateTime('yyyy-mm-dd', Response.InfConsultaNFSe.DataInicial) + //'</' + PrefixoTS + 'DataInicial>' + '</' + Prefixo + 'DataInicial>' + //'<' + PrefixoTS + 'DataFinal>' + '<' + Prefixo + 'DataFinal>' + FormatDateTime('yyyy-mm-dd', Response.InfConsultaNFSe.DataFinal) + //'</' + PrefixoTS + 'DataFinal>' + '</' + Prefixo + 'DataFinal>' + '</' + Prefixo + 'PeriodoEmissao>'; -----------------------------------------------------------------------------------------------------
  9. Estava com este mesmo problema, usei sua unidade modificada e compilou 100% no XE2, muito obrigado Laercio.
  10. Este link pode te ajudar: http://docwiki.embarcadero.com/CodeExamples/Tokyo/en/UsingGUIDs_(Delphi)
  11. A chave de Acesso é o código de identificação do estabelecimento junto a SEFAZ CE, porém até o momento eles disponibilizaram uma única chave para todas as ativações do ambiente de produção : 25CFE38D-3B92-46C0-91CA-CFF751A82D3D A Chave de Requisição é para cada equipamento TEF ou POS que tenha no cliente, no cadastro dos equipamentos TEF/POS eu tenho o campo CHAVE_REQ, como eu uso o Firebird estou utilizando uma "trigger befere insert" que preenche o campo com o comando uuid_to_char(gen_uuid()), ele gera a chave no cadastro e a chave nunca se repete, ela irá funcionar como um ID que identifica o equipamento no estabelecimento. Mas fica aberto pra vc gerar sua própria GUID porém ela tem que ser única para identificar o equipamento na interface ENVIARPAGAMENTO. A Assinatura do AC vc pode ver o exemplo na pasta \ACBr-Trunk2\Projetos\ACBrSatSign\Delphi
  12. Bom dia, creio que vc já deve ter concluído seu cadastro, porém fica a resposta para registro: http://automaserv.com.br/admin_download/view/img/arquivos/70/manual_portalcfe_v04.pdf No manual acima orienta o desenvolvedor a se cadastrar no sistem VIPRO e aguardar o contato da SEFAZ-CE com os dados para acessar o Portal CFe. Porém eu fiz o cadastro e não recebi nenhum retorno, meu processo só andou, depois de enviar um e-mail com os dados da softhouse direto para: [email protected] No mesmo dia recebi um email com as informações sobre a homologação, fiz o agendamento, tiraram minhas dúvidas durante todo o processo. E após a homologação liberaram meu acesso ao portal pelo link: http://cfe.sefaz.ce.gov.br/mfe/portal#/login?type=SOFTWARE_HOUSE Neste portal você faz o vinculo do seu AC ao cliente, informando o CNPJ e o código de vinculação AC gerado com o seu certificado digital + CNPJ SofHouse + CNPJ Cliente. Após o vínculo é só instalar o driver MFE e o Integrador na máquina do cliente, preencher o cadastro do Integrador e pronto, sistema liberado para uso.
  13. Na verdade houve uma alteração no componente, e as propriedades que vc esta utilizando foram realocadas segundo imgem.
  14. Testei com o Edge e o Chrome e funcionou, o problema estava mesmo no Firefox (v65.0) obrigado!
×
×
  • 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...
The popup will be closed in 10 segundos...