Ir para conteúdo
  • Cadastre-se

Diogo Loff

Membros
  • Total de ítens

    47
  • Registro em

  • Última visita

Tudo que Diogo Loff postou

  1. Ola! No componente ACBrNFSeX, quando importado um XML de um RPS do provedor Betha, esta ocorrendo erro no campo de DataVencimento. O tipo esta incorreto. Atualmente no fonte esta: DataVencimento := ObterConteudo(ANodes[i].Childrens.FindAnyNs('DataVencimento'), tcDat); O correto é: DataVencimento := ObterConteudo(ANodes[i].Childrens.FindAnyNs('DataVencimento'), tcDatVcto); Fonte Betha.LerXml.pas Linha 98. Segue anexo fonte alterado. Betha.LerXml.pas
  2. Bom já testei deu certo valeu!
  3. Valeu mestre, a noite vou testar e reporto.
  4. Sim, entendo, justamente qe ultimamente tenho colocado mas questões aqui e o ACBr tem ajustado. Realmente não quero mais ter que mexer no componente. Mas ocorre que anos atras tivemos um problema sério em uma das primeiras versões do Trunk2, onde as NFes no momento de validar em Lote se tinha uma no meio que dava erro, acabava replicando a chave de acesso da primeira que dava certo e gerou um transtorno gigantesco, nossa empresa trabalha com industria e muitos são multinacionais, empresas que trabalham com Petrobras, Vale e outras, empresas que emitem muita NF. Então por segurança e receio nosso estavamos sempre adequando principalmente a NFe e NFSe, porem isto tem ficado complicado demais em manter as alterações em aparalelo, principalmente da NFSe. Mas em fim se puderem verificar este item agradeço. Para fins de informação, hoje na empresa usamos a NFe, CTe, SPED EFD, Consulta de CNPJ e Impressão de Etiquetas, esta ultima esta totalmente customizada desde antes do trunk2, este tenho que tirar um tempo e avaliar bem o que tem no componente se esta funcional em todas as linguages e se faltar alguma coisa enviar um compilado de tudo que adequei para ver se vocês aceitam. E fora a etiqueta no momento só tenho customizado a partes dos Danfe da NFSe que inclusive abri já um outro topico sugerindo adequações. Valeu ai obrigado.
  5. Não saberia precisar, mas faz bastante tempo, eu me obriguei atualizar agora inicio do ano devido a NFse. Muita vezes atualizava partes dos fontes e adaptava outras aqui para manter compatibilidade, mas já fazia acho uns 2 anos que não atualizava ele total. Estava usando muita coisa customizada nos fontes aqui também, coisa que quero eliminar total, quero passar usar o ACBr 100% oficial sem customizações. Tem um ultimo item ainda que não consegui usar o de vocês atalizado que é a impressão de etiquetas térmicas, o fonte é todo modificado aqui a mais de 10 anos já, sempre passo um trabalho com troca dos fontes e adaptar o AcbrDevice, mas quero ver se até final do ano mando as sugestões para vocês, pois o meu aqui esta rodando com PPLA, PPLB, ZPL, ZPLII, EPL2 com todos os comandos disponiveis.
  6. Ao meu ver é um erro, pois, antes fazia agora não mais. Também todas as outras funções da NFe como gerar nfe e eventos, estão trazendo path completo, pelo que vi só a opção de donwload que não o faz mais. Vou anexar aqui os fontes, ao meu ver minha sugestão resolve, porem fica fora do padrão dos outros objetos como NF e Eventos. Também não entendi porque o objeto abaixo é destruido e depois recriado novamente sem o path. Então creio que vocês deveriam avaliar para se manter o padrão conforme das demais funções. Segue os fontes. Obrigado! ACBrNFeWebServices.pas
  7. Diogo Loff

    Download de NFe por Chave

    Olá! No meu sistema na parte de entrada de notas fiscais, se o usuário colocar a chave da NFe eu faço o Download da mesma. Ocorre que 09/01/24 fiz uma atualização dos componentes e agora no nome do arquivo não vem mais o path e esta ocorrendo erros no sistema, pois bem. Antes após fazer o comando: ACBrNFe1.DistribuicaoDFePorChaveNFe(StrToInt(Copy(lsChave, 1, 2)), nfeEmitCNPJ, lsChave); Eu pegava o path assim lsArquivo := ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[0].NomeArq Aqui vinha o path completo, com o definido na propriedade de download + o mês ano, pasta down + e o nome do arquivo final. Então o que esta acontecendo... agora esta ficando em branco, eu estive vendo no fonte do ACBrNFeWebServices linha 3778 e esta sendo dado Free na variavel FretDistDFeInt que é a mesma que retornar em retDistDFeInt. Pois bem para resolver o problema eu fiz uma alteração antes onde adiciona os arquivos numa lista para colocar o path, linha 3760. if NaoEstaVazio(NomeArq) then FlistaArqs.Add( aPath + FNomeArq ); Ai no sistema agora estou usando assim lsArquivo := ACBrNFe1.WebServices.DistribuicaoDFe.ListaArqs[0]; Bom resolveu meu problema, mas tive que mexer no componente, então não achei outra forma de resolver. Se puderem me orientar ou verificar o caso, agradeço.
  8. Certo, bom como disse são sugestões. Sim o item 1 da quebra pode ser em virtude do item 2 onde nós utilizamos os dois blocos. Como sitei pelo menos meus clientes querem as informações mais padronizadas, tabuladas, mais semelhante a uma NFe, mas tudo bem, vou manter ainda minhas adequações aqui em separado como sempre fiz. Sobre o item 3 quais são os campos equivalentes? pois não localizei, aqui resolvendo já evito algumas linhas de customização.
  9. Ola! Estou testando as novas possibilidades de consulta CNPJ pelas APIs que foram disponibilizadas no ACBrConsultaCNPJ e senti falta de exceção quando vem um erro do servidor. Como por exemplo o ReceitaWS com mais de 3 consultas por minuto já da erro, porem no componente não esta acontecendo nada. Fica sugestão a alteração que fiz. Implementei na ReceitaWS e na BrasilAPI. Em ambas adicionei um else se não deu certo, para lançar uma exceção do campo "message". if (Trim(LJsonObject.Values['message'].AsString) <> '') then raise EACBrConsultaCNPJWSException.Create(LJsonObject.Values['message'].AsString); Obrigado. ACBrConsultaCNPJ.WS.BrasilAPI.pas ACBrConsultaCNPJ.WS.ReceitaWS.pas
  10. Oi Italo, na realidade ali a ordem não interfere, o idendificador pode vir depois não tem problema. A questão mesmo é que o identificador precisa ser diferente se não acaba misturando numeração com a oficial do cliente. Como coloquei ali eu adicionei um "h" no identificador para distinguir o teste, pois eles não aceitam a série diferente, em fim vai entender. O IPM é precario em documentação, diria um dos mais, e tem questões que depois de muito tempo bater cabeça com o suporte deles você acaba resolvendo. Mas em fim isto já ta rodando a bastante tempo, e não tenho tido problemas, aqui esta o print de como fica no envio o RPS e depois como Retorna deles. Se por acaso você envia em testes com o mesmo identificador do produção, começa misturar notas com do cliente, um exemplo. Digamos que eu na minha base de testes esteja com numeração inferior a do cliente, quando eu gero meu teste e o identificador é o mesmo de produção, acaba dando problema de RPS já informado e se consulta vem a nota que o cliente emitiu lá em produção anteriormente. Agora ao contrário, se por acaso você esta com númeração acima do cliente e faz o teste ai o pepino é maior, porque quando o cliente atinge o mesmo número ele não consegue mais seguir, trava a sequencia, e só ligando para prefeitura e IPM para resolver. Agora se no teste você também gera com um indentificador diferente ai este problema fica resolvido. Segue anexo os prints de como fica.
  11. Boa tarde, Sempre que atualizo os fontes do ACBr, tenho que realizar algumas customizações no fonte da impressão de Danfse do ACBrNFSex para fastreports. Fica se sugestão se puderem realizar estas melhorias. Antes de mais nada vamos ao que levaram agente ter que customizar os Danfse. 1 - A quebra de pagina não funciona de uma forma bem certa, pode ser nós que talvez nunca soubermos a forma correta de utilizar como pode ser defeito. 2 - Cliente desejam ver as parcelas ali impressas, mesmo que o provedor não tenha a parte financeira no XML o cliente quer que apareça isto na impressão. 3 - Tem dois campos de datas que tive que criar a parte para atender algumas prefeituras, que diziam que tinha que ter. Ficaria muito grato se pudessem estudar as questões apresentadas, já tem ao menos uns 2 anos que tenho tido sempre que customizar isto. Item 1: Com relação a quebra, nós customizamos os arquivos de impressão, para que cada bloco siga o seu antecessor, nos originais disponibilizados isto não esta bem correto ao nosso entendimento, e tem bloco quebrando de forma manual via codificação, e acreditamos que da forma como ajustamos resolvemos o problema da quebra de pagina, uma vez que principalmente no corpo dos itens os demais campos abaixo seguem a quebra. Segue anexo os modelos de impressão, inclusive estes 3 modelos estamos usando em diversos municipios já a uns 2 anos e não tem necessitado mais adequações. DANFSEX_ATUAL modelo1 - Padrao.fr3 (Este é o modelo simples com chave da prefeitura pequena) DANFSEX_ATUAL modelo2 - Chave Grande (Este é o modelo simples com chave da prefeitura grande) DANFSEX_ATUAL modelo3 - QrCode (Este é o modelo com QrCode) Item 2: Com relação as parcelas os clientes querem ver no corpo, e também sempre querem os itens tabulados (não só descrição do serviço), isto é uma coisa que sempre gerou reclamação ao menos nos meus clientes e uma solução foi comentar a seguinte linha no procedimento TACBrNFSeXDANFSeFR.frxReportBeforePrint(Sender: TfrxReportComponent). frxReport.FindObject('Memo13').Visible := (not ((cdsItensServico.RecordCount > 0) and (frxReport.FindObject('Page2') <> nil)) or (frxReport.FindObject('Page2') = nil)); Se pudessem criar uma propriedade que pudesse setar sempre visivel este memo eu agradeceria, pois ocorre que pela implementação do ACBr este bloco fica invisivel se você colocar os itens da nota em formato de grade. O mesmo só fica visivel se só informado os itens de forma descritiva. Como nós utilizamos aqui??? Sempre a impressão dos itens é alimentado em forma de grade, mesmo que no XML da prefeitura seja só a descrição dos serviços, então sempre sai tabulado em grade. E porque precisamos ainda do "Memo13", é para ali mostrar outras informações que não constam muitas vezes na prefeitura, como por exemplo as parcelas, este é um caso muito utilizado. Em anexo estou colocando 3 modelos impressos para vocês entenderem o que estou falando. Ver os modelos de DANFSe anexados. Item 3: Tive necessidade para um provedor especifico criar duas propriedades novas para mostrar correto no DANFe. No procedimento TACBrNFSeXDANFSeFR.CriarDataSetsFrx adicionado; cdsIdentificacao.FieldDefs.Add('DataServico', ftString, 20); // para distinguir a data do servico da data da nfe para provedor que tenha isto cdsIdentificacao.FieldDefs.Add('DataEmissaoRps', ftString, 19); // para distinguir a data do RPS da data da nfe frxIdentificacao.FieldAliases.Add('DataServico=DataServico'); // Relação dos campos com o report frxIdentificacao.FieldAliases.Add('DataEmissaoRps=DataEmissaoRps'); // Relação dos campos com o report No procedimento TACBrNFSeXDANFSeFR.CarregaIdentificacao(ANFSe: TNFSe) adicionado LCDS.FieldByName('DataServico').AsString := FormatDateTime('dd/mm/yyyy', ANFSe.Competencia); // Alimentado o campo DataServico if (Provedor in [ proSigCorp ]) then LCDS.FieldByName('DataEmissaoRps').AsString := FormatDateBr(ANFSe.DataEmissaoRps); // Alimentado o campo DataEmissaoRps Segue anexo os fontes. DANFSEX_ATUAL modelo1 - Padrao.fr3 DANFSEX_ATUAL modelo2 - Chave Grande.fr3 DANFSEX_ATUAL modelo3 - QrCode.fr3 ACBrNFSeXDANFSeFR.pas DANFSEX_ATUAL_chavesimples2.pdf DANFSEX_ATUAL_chavegande2.pdf NFS-E teste PRODUCAO 2.pdf
  12. Segue: IPM.LerXml.pas IPM.GravarXml.pas
  13. Cidade de Campo Largo, precisa de uma atualização no arquivo ACBrNFSeXServicos.ini. No original não tem ambiente de homologação, mas o mesmo esta disponivel, e no municipio não pode gerar o grupo rps, e esta faltando o "Params=NaoGerarGrupoRps:" Segue o correto: Nome=Campo Largo UF=PR Provedor=IPM Versao=1.01 Params=NaoGerarGrupoRps: ProRecepcionar=https://ws-campolargo.atende.net:7443/atende.php?pg=rest&service=WNERestServiceNFSe HomRecepcionar=https://treinamento.atende.net/?pg=rest&service=WNERestServiceNFSe&cidade=treina_campolargo Também aqui ocorre o problema da competencia que coloquei em outro topico. Já o problema do identificador não ocorre, pois não gera conforme indicado acima.
  14. Boa tarde, já tem mais de um ano que a Prefeitura de Morro da Fumaça / SC, trocou o sistema da Betha pelo IPM. Sempre que realizo a atualização do acbr tenho que atualizar o arquivo ACBrNFSeXServicos.ini. Segue as informações corretas da cidade. Nome=Morro da Fumaca UF=SC Provedor=IPM Versao=1.01 ProRecepcionar=https://morrodafumaca.atende.net/?pg=rest&service=WNERestServiceNFSe HomRecepcionar=https://morrodafumaca.atende.net/?pg=rest&service=WNERestServiceNFSe Além disto sempre tem duas correções que são necessárias fazer no componente. Componente atualizado 09/01/2024 e ainda permance a situação. Correção 1: IPM.GravarXML.pas function TNFSeW_IPM.GerarXml: Boolean; Apartir da linha 132, precisa de um identificador diferente para quando esta em homologação, como sabemos o IPM não tem homologação em alguns municípios, e é obrigatório usar o ambiente de produção, ocorre que a além da tag nfse_teste que deve ser informada, é ideal que a tag do identidicador seja diferente do produção, porque? Vou dar o exemplo do Morro da Fumaça, eles não permitem usar uma série diferente da de produção, então se você realiza testes com o identificador igual ao de produção, a numeração da nota de teste com a nota de produção começa conflitar, e o cliente perde a sequencia da NF. Como sugestão aqui eu fixei quando esta em testes para que o identificado seja "'nfseh_' + NFSe.IdentificacaoRps.Numero + '.' + NFSe.IdentificacaoRps.Serie", e isto tem me permitido realizar os testes sem bagunçar os dados do cliente lá na prefeitura. Aqui esta o bloco alterado: if (VersaoNFSe in [ve100, ve101]) and (Ambiente = taHomologacao) then begin if not FpNaoGerarGrupoRps then NFSeNode.AppendChild(AddNode(tcStr, '#2', 'identificador', 1, 80, 0, 'nfseh_' + NFSe.IdentificacaoRps.Numero + '.' + NFSe.IdentificacaoRps.Serie, '')); NFSeNode.AppendChild(AddNode(tcStr, '#3', 'nfse_teste', 1, 1, 1, '1', '')); end else begin if not FpNaoGerarGrupoRps then NFSeNode.AppendChild(AddNode(tcStr, '#2', 'identificador', 1, 80, 0, 'nfse_' + NFSe.IdentificacaoRps.Numero + '.' + NFSe.IdentificacaoRps.Serie, '')); end; Correção 2: IPM.LerXml.pas procedure TNFSeR_IPM.LerNota(const ANode: TACBrXmlNode); Não esta alimentando a competencia que vem automático pela prefeitura. Adicionar no corpo do procedimento: Competencia := StrToDateDef(ObterConteudo(AuxNode.Childrens.FindAnyNs('data_fato'), tcStr), 0); Agradeço se puderem implementar estas questões, pois a cada atualização que realizo do Acbr acabo tendo que sempre conferir estes itens e ajustar.
  15. Não é a MFD que quero, e sim só ler os dados da redução Z no momento que ela é feita e gravar no banco. Sobre os privilégios já fiz de tudo, este emulador inclusive gerei uma VM em XP e ele só roda no XP, mas não resolve meu problema pois as licenças de Delphi estão todas no Windows 10. Meu resolveu meu problema, gostei do emulador, funciona lisinho. Mas não foi facil achar, vários links na web quebrados, mas consegui.
  16. Diogo Loff

    Emulador de ECF

    Ola! Vamos ao problema, eu tinha uma impressora Daruma de testes, porem a mesma não funciona mais e não tem mais manutenção. Preciso fazer alguns testes aqui e não gostaria de comprar outro ECF pois em breve aqui em SC já não será mais utilizado. Eu até tentei comprar um ECF novo da Bematech no revendedor aqui mas ele disse que não pode vender para desenvolvimento, achei meio estranho. Achei dois emuladores: Bematech MP-4200 THFI II - Executa todas as funções sem problemas, porem toda vez que abre o emulador ele zera todos os contadores. Tem alguma solução para resolver isto? E isto é um problema pois não consigo fazer testes plenos do Bloco X, pois preciso emitir redução Z, testar no dia seguinte entre outros. Epson Simulador T81FBIII - Diferente do anterior, este mantem os dados na memória, porem não consigo emitir os arquivos da redução Z, ler as informações para gravar no banco de dados e gerar os arquivos, ele sempre da erro de comunicação quando chega nesta etapa. Alguma forma de resolver isto? Em fim se alguém puder me ajudar agradeço, em resumo já coloquei em modo de compatibilidade, em administrador, em fim e nada resolve, mais um pouco vou mandar rezar uma missa....
  17. Diogo Loff

    Erro Salvar XMLs NFe

    Ola! Estou tendo um problema quanto a geração de XMLs de NF-e, ocorre que estão salvando todas as NF-e independente de processadas ou não. Até algumas semanas atrás estava usando uma versão do ACBR de Novembro/2018, nesta versão do componente o salvamento esta correto, salvando somente as processadas. Já após a atualização do componente não funcionou mais. Até debuguei o código e pelo que vi sempre pega por padrão a propriedade do Arquivos.PathNFe quando do comando ACBrNFe1.NotasFiscais.GravarXML; Algumas informações: Arquivos.SalvarApenasNFeProcessadas = True Arquivos.SepararPorMes = True PathSalvar = 'C:\Programa\XMLNFe\temp\' PathNFe = 'C:\Programa\XMLNFe\' Na versão anterior, todos os arquivos gerados eles salvam no caminho do PathSalvar, somente após validar que salvam no PathNFe.
  18. A questão das requisições externas não estou preocupado. O problema mesmo é o requisito do arquivo que precisa ser transmitido. E o problema esta relacionado principalmente a isto "2. A forma de compactação e transmissão será definida pelo FISCO da unidade federada para qual será transmitido o arquivo especificado no item anterior." Estas informações onde encontro? Já procurei por tudo.
  19. Ola, já sou credenciado em SC para emissão de documentos fiscais desde 2003, e ocorre que antigamente antes do SAT não precisava de IE, em 2009 quando comecei a desenvolver sistemas para ECF, tive que fazer o cadastro no SAT, e neste para conseguir o cadastro tive que ter inscrição estadual, não sei como são as regras hoje. Mas minha empresa tem os CNAES: Principal: 62.03-1-00 - Desenvolvimento e licenciamento de programas de computador não-customizáveis Secundarios: 62.01-5-01 - Desenvolvimento de programas de computador sob encomenda 62.02-3-00 - Desenvolvimento e licenciamento de programas de computador customizáveis 62.04-0-00 - Consultoria em tecnologia da informação 62.09-1-00 - Suporte técnico, manutenção e outros serviços em tecnologia da informação 70.20-4-00 - Atividades de consultoria em gestão empresarial, exceto consultoria técnica específica Observação, tenho IE, mas não sou autorizado por exemplo a emitir NF-e, somente posso emitir NFS-e. Hoje não sei como estão as regras, o ideal seria você entrar em contato com a Sefaz da sua região ou da capital.
  20. Você vai ter dois arquivos com mesmo nome, pois o arquivo é individual por ECF, e dentro do arquivo é indicado o ECF. Talvez sua preocupação sejam com relação a ter dois arquivos com mesmo nome onde um pode sobrescrever o outro, se for isto, tenho dois raciocínios abaixo: 1 - Ao menos por todas as homologações que fiz e com o que tenho entendido da homologadora e também da própria ER, com relação aos arquivos independente de Bloco X ou não, eles devem ficar local na mesma maquina onde esta o ECF, então teoricamente você não teria dois arquivos com mesmo nome, pois se são dois ECF, também se presume serem dois caixas. 2 - No caso especifico dos arquivos do Bloco X, você precisa também armazenar eles em banco de dados, para poder verificar a questão dos MD5, re-fazer o arquivo se por acaso o mesmo for excluído da pasta, etc. Ao menos a homologadora sempre exigiu isto, nesta tabela por exemplo eu controlo um chave inteiro sequencia, e os arquivos estão armazenados no banco de dados em blob. Também mesmo existindo o recibo salvo em pasta específica eu também salvo no banco de dados em blob, no mesmo registro sequencial que deu a origem, assim teoricamente o problema que você falou sobre sobrescrever os arquivos não existiria, pensando em uma mesma maquina, já que esta tudo no banco de dados, mas claro fisicamente você teria um problema, pois precisam existir os arquivos na pasta e neste caso um iria matar o outro, porem esta preocupação não existe se você trabalhar considerando como premissa o item 1. Posso estar equivocado, mas é assim que resolvo no meu sistema e tem dado certo, nunca tive problema nenhum.
  21. Ola! Alguem tem informações referente ao ambiente, dados técnicos e como as certificadoras estão tradando o Requisito LXI da ER 02.06? BLOCO XII REQUISITOS ESPECÍFICOS DO PAF-ECF PARA GERAÇÃO E TRANSMISSÃO AUTOMÁTICA DE INFORMAÇÕES E ARQUIVOS PARA O ESTADO DE TOCANTINS
×
×
  • 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.