Ir para conteúdo
  • Cadastre-se

Massao Aihara

Membros
  • Total de ítens

    372
  • Registro em

  • Última visita

  • Days Won

    2

Massao Aihara last won the day on 5 Agosto 2016

Massao Aihara had the most liked content!

Últimos Visitantes

2.116 visualizações

Massao Aihara's Achievements

Community Regular

Community Regular (8/14)

  • Dedicated Rare
  • First Post
  • Collaborator Rare
  • Conversation Starter
  • Week One Done

Recent Badges

30

Reputação

4

Community Answers

  1. Boa noite pessoal. Precisei fazer uns ajustes no Provedor RLZ 1.0. RLZ.LerXML.pas -> TNFSeR_RLZ.LerXmlNfse() : Ajustei para ler o Código de Verificação e a Situação da nota também. CodigoVerificacao := ObterConteudo(ANode.Childrens.FindAnyNs('codigoverificacao'), tcStr); if (ObterConteudo(ANode.Childrens.FindAnyNs('situacao'), tcStr) = 'Emitida') then SituacaoNfse := snNormal; RLZ.Provider.pas -> TACBrNFSeProviderRLZ.TratarRetornoEmitir(): Nesse acredito que tenha que ser feito uma correção: // Antes: ANota := TACBrNFSeX(FAOwner).NotasFiscais.FindByNFSe(NumNfse); // Depois: ANota := TACBrNFSeX(FAOwner).NotasFiscais.Items[0]; Por que ele não vai achar Nota carregada por número de NFS-e nunca. Pois a prefeitura acabou de gerar e retornar esse número. E como ele bloqueia o envio de mais de um rps por vez. Eu modifiquei para sempre pegar a única nota que esta carregada no componente. Segue os arquivos alterados em anexo. RLZ.LerXml.pas RLZ.Provider.pas
  2. Bom dia pessoal. Precisei fazer um pequeno ajuste no SmarAPD.Provider. No retorno da consulta por lote, estava buscando a NFS-e/RPS carregada no componente pelo numero da NFS-e retornado do provedor. E essa informação eu não tenho ainda, logo ele não atualizava minha informação local. Alterei para buscar pelo numero da RPS retornada. Fonte: SmarAPD.Provider Função: TratarRetornoConsultaLoteRps Antes: if AuxNode <> nil then begin NumNFSe := ObterConteudoTag(AuxNode.Childrens.FindAnyNs('NumeroNota'), tcStr); Response.NumeroNota := NumNFSe; // NAO ENCONTRAVA ANota := TACBrNFSeX(FAOwner).NotasFiscais.FindByNFSe(NumNFSe); ANota := CarregarXmlNfse(ANota, ANode.OuterXml); SalvarXmlNfse(ANota); end; Alterei para: if AuxNode <> nil then begin NumNFSe := ObterConteudoTag(AuxNode.Childrens.FindAnyNs('NumeroNota'), tcStr); Response.NumeroNota := NumNFSe; NumRPS := ObterConteudoTag(AuxNode.Childrens.FindAnyNs('NumeroRps'), tcStr); ANota := TACBrNFSeX(FAOwner).NotasFiscais.FindByRps(NumRPS); ANota := CarregarXmlNfse(ANota, ANode.OuterXml); SalvarXmlNfse(ANota); end; Segue em anexo o fonte alterado. SmarAPD.Provider.pas
  3. @cueiogordo para qual url realizou? para essa: https://abrasf.issnetonline.com.br/webserviceabrasf/duquedecaxias/servicos.asmx?WSDL ?
  4. Sim erro de sql obvio, era so eles checarem o parametro antes de passar para o db. Pior que quando o cliente não estava habilitado a usar o webservices a mensagem vinha correta. Pedindo para habilitar e tudo mais. Depois do cliente ter feito a requisição de uso do webservices, começou esse erro. Mas eu não consigo falar com eles, quando entro pelo chat online tem uma fila enorme. Ontem eu levei 4 hras para ser atendido, para eles me falarem que não iam me atender por causa da alta de manda de suporte. Me pediram para enviar um email e estou aguardando ainda.
  5. Boa tarde. Segue em anexo alterações que fiz para emitir nota no município de Luziânia GO, provedor Prodata. No arquivo ACBrNFSeXServicos.ini alterado: [5212501] Nome=Luziania UF=GO Provedor=Prodata Versao=2.01 ProRecepcionar=http://gestaoluziania.com.br/prodataws/services/NfseWSService HomRecepcionar= No arquivo do provedor Prodata.GravarXml.pas foi necessário alterar a propriedade FormatoItemListaServico := filsComFormatacaoSemZeroEsquerda; Sem essa alteração ele não reconhece o item de serviço como valido (antes o item ficava com o formato: 00.00). @Italo Giurizzato Junior nesse caso me gerou uma duvida: Como eu alterei a formatação do item de serviço direto nesta unit do provedor, vai afetar todas as cidades que utilizam esse provedor (5 cidades incluindo a esta). Eu não tenho um cliente nas outras 4 cidades para poder testar, mas como a versão é a mesma para todas, imagino que essa alteração seja relevante para esses outros municípios. Ou essa alteração eu deveria ter feito direto no meu carregamento do componente (na minha aplicação)? As operações que eu tive autorização do cliente para testar com o seu certificado: Consulta de NFS-e por RPS Consulta de Lote de RPS Envio de rps em lote Ambas funcionaram com as alterações acima.
  6. Pois é, o meu esta idêntico (a estrutura), e mesmo assim ele retorna um erro de sql interno deles.
  7. @Vagner Amorim vc poderia anexar um xml de envio que deu certo para vc?
  8. Bom dia @Italo Giurizzato Junior Testando as alterações do @Vagner Amorim e de fato a prefeitura passou a responder. Mas eles tem muita coisa errado do lado deles. Veja o retorno deles ao enviar um lote com um rps: <?xml version="1.0" encoding="UTF-8"?> <EnviarLoteRpsResposta xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"> <CodigoErro>E0</CodigoErro> <MensagemErro>An exception occurred while executing 'SELECT DISTINCT serie_rps FROM notas n INNER JOIN usuarios_contribuintes uc ON n.id_contribuinte = uc.id INNER JOIN usuarios u ON u.id = uc.id_usuario WHERE n.serie_rps != '' AND u.id = ; ': SQLSTATE[42601]: Syntax error: 7 ERROR: syntax error at or near ";" LINE 3: ...N u.id = uc.id_usuario WHERE n.serie_rps != '' AND u.id = ; ^</MensagemErro> <ListaMensagemRetorno/> </EnviarLoteRpsResposta> Mas as alterações sugeridas pelo Vagner parecem estar corretas para esse provedor.
  9. Ok, obrigado. Eu testei as consultas e o envio da nota. Esta funcionando normalmente.
  10. Boa tarde pessoal. Segue o arquivo ACBrNFSeXServicos.ini para trocar o provedor Águas Lindas de Goiás - GO para o Ginfes. ACBrNFSeXServicos.ini
  11. Boa tarde pessoal. Estou com um problema com o provedor Etherium, com o campo de data de Emissão. No fontes do acbr o formato do campo esta marcado como: FpFormatoDataEmissao := tcDatUSA; Oque esta correto, já que o xml retornado no método emitir vem assim: <DataEmissao>2022-11-17</DataEmissao> MAS no método consultarNFSePorRPS o campo no XML vem desta maneira: <DataEmissao>17/11/2022</DataEmissao> Gerando erro ao tratar o retorno da consulta TACBrNFSeProviderABRASFv2.TratarRetornoConsultaNFSeporRps 925 Data := ObterConteudoTag(AuxNode.Childrens.FindAnyNs('DataEmissao'), FpFormatoDataEmissao); E mesmo que eu altere o formato de data na configuração do provedor ocorre outro erro ao chamar o meto LerDataEmissao onde o formato esta fixo: Fonte: ACBrNFSeXLerXml_ABRASFv2.pas function TNFSeR_ABRASFv2.LerDataEmissao(const ANode: TACBrXmlNode): TDateTime; begin Result := ObterConteudo(ANode.Childrens.FindAnyNs('DataEmissao'), tcDatHor); end; @Italo Giurizzato Junior Estou com duvida em como proceder nessa caso. Altero para configurar o formato de data por método em vez de ser geral? Abro um chamado na prefeitura/provedor para eles corrigirem isso? E no caso do metodo LerDataEmissao? Adiciono o formato como parâmetro igual nos outros?
  12. Entendi Italo. Existe um post especifico para anexar? Ou crio um novo sempre (com o nome do provedor que testei)?
  13. Muito obrigado Italo, eu não estou usando em produção ainda. Mas assim que trocar a versão dos meu clientes vamos utilizar nessas cidades: +------+----------------------+ |estado|cidade | +------+----------------------+ |GO |Anápolis | |PR |Apucarana | |AL |Arapiraca | |MG |Belo Horizonte | |SC |Blumenau | |DF |Brasília | |SP |Campinas | |SP |Catanduva | |SC |Chapecó | |MG |Contagem | |MT |Cuiabá | |PR |Curitiba | |RJ |Duque de Caxias | |SC |Florianópolis | |CE |Fortaleza | |PR |Foz do Iguaçu | |SP |Franca | |GO |Goiânia | |SP |Guarulhos | |SC |Itajaí | |PB |João Pessoa | |BA |Luís Eduardo Magalhães| |CE |Maracanaú | |RJ |Niterói | |SP |Paraíso | |PR |Paranaguá | |RS |Porto Alegre | |PE |Recife | |MG |Ribeirão das Neves | |SP |Ribeirão Preto | |RJ |Rio de Janeiro | |BA |Salvador | |MG |Santa Luzia | |SP |Santo André | |RJ |São Gonçalo | |SP |São José do Rio Preto | |SP |São Paulo | |ES |Serra | |MG |Sete Lagoas | |MG |Uberaba | |ES |Vila Velha | +------+----------------------+ Opa, Brasília é nota de serviço, mas vai continuar usando o ACBRNFe (la eles fazem nota de serviço pelo ambiente da NF-e).
  14. Boa noite Italo, Entendo que TACBrNFSeX.Configuracoes.Arquivos.PathSchemas resolve de maneira geral. Inclusive é como uso hoje, com o componente ACBrNFSe. Mas após ver como o foi feito a separação dos arquivos por provedor, versão, cidade e ambiente, eu resolvi adotar a mesma estrutura, tanto no storage que deixo os arquivos zipados, quando na maquina local que ira processar essas notas. E usando a opção do componente montar o path sozinho: TACBrNFSeX.Configuracoes.Geral.MontarPathSchema (que é public) ele chama o método GetSchemaPath internamente. Então para eu deixar a pasta da maquina de acordo com o que o componente vai esperar encontrar com essa opção ligada, eu teria que implementar essa função novamente dentro do meu código. Para eu ter certeza que os arquivos e as pastas estão criadas da maneira que o componente espera, antes de tentar usá-los. Então tento esse método como public, logo após informa o município (quando ele termina de configurar o componente) já vai ser possível conferir se as pastas, subpasta e arquivos existem na maquina. Dessa forma eu consigo usar a opção TACBrNFSeX.Configuracoes.Geral.MontarPathSchema, sem ter que implementar mais nada, uma vez que o componente vai responder tudo. O meu maior motivo para adotar esse modelo é as trocas de provedores e os casos em que a mesma maquina emite nota para mais de um município. Tento o componente atualizado com a opção de montarPathSchema ligada e mais o método getSchemaPath como public, vou sempre ter certeza de estar usando a pasta correta com os arquivos corretos de maneira fácil, dependendo somente do próprio componente ACBrNFSeX para conseguir fazer todas essa conferencia. Se um dia algo mudar ou mais provedores trocarem para o modelo de versão/cidade ou versão/ambiente, não vou precisar reimplementar essas mudanças, o componente sempre vai conseguir responder tudo. Att.
×
×
  • 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...