Ir para conteúdo
  • Cadastre-se

Painel de líderes

Conteúdo popular

Showing content with the highest reputation on 18-09-2018 em Posts

  1. Questão: "NT 2018.002 - idCSRT do responsavel técnico pelo aplicativo emissor. Onde adquirir esse codigo?" Resposta SEFAZ/MG em 18/09/2018:
    3 pontos
  2. 3 pontos
  3. Bom dia Marcelo, O caminho é: 1. Instalar na sua maquina o certificado do emitente da NFS-e; 2. Configurar o programa exemplo com os dados do emitente; 3. Iniciar os testes. Não esqueça de altear o programa exemplo, mais precisamente a procedure que alimenta o componente com os dados do serviço, devemos alterar se necessário a alíquota e o código do Item (ItemListaServico), talvez mais algumas informações. Mas isso você vai descobrindo a medida que for realizando os testes. Depois de conseguir enviar o RPS e obter como resposta a NFS-e, Cancelar, Consultar, tudo através do programa exemplo, ai sim você parte para escrever a sua própria aplicação tomando como base o programa exemplo.
    3 pontos
  4. Bom dia.. a primeira coisa, que tu vai fazer, é o que a juliana falou, entre no site do acbrMonitor.html e depois entre no link do Gnre. https://acbr.sourceforge.io/ACBrMonitor/GNREGerarGuia.html A primeira coisa, é gerar o Ini.. com os dados. Comece a fazer isso, e va me passando ai como esta fazendo.. No que eu puder ir ajudando, so me falar.. o importante é comecar.. Vai me avisando ai.. Amarildo
    3 pontos
  5. Analisei os fontes, e a implementação parece correta... mas decidi não incorporar aos fontes do SVN, pelos seguintes motivos: - O método é exclusivo para a WinCrypt (e Capicom)... não funcionaria no OpenSSL ... Ok, isso também ocorre com o método "SelecionarCertificado", mas esse último método foi herdado do Trunk1 - O método é específico para CNPJ, e a ACBrDFeSSL também suporta Certificados com CPF - A rotina pode ser facilmente implementada na própria aplicação (usando o método: "LerCertificadosStore", e um Loop, e conforme demonstrado abaixo) Enfim... deixo aqui, trecho do código, onde o Loop é implementado, na sugestão proposta, para o caso de alguém tiver interesse de implementar o método na própria aplicação function TForm1.LocalizarNumeroSerieCertificado(ACNPJ: String): String; var I: Integer; ACNPJLocalizar, ACBPJCertificado: String; begin Result := ''; ACNPJLocalizar := OnlyNumber(ACNPJ); if (ACNPJLocalizar = '') then raise EACBrDFeException.Create('CNPJ não informado'); if (Length(ACNPJLocalizar) <> 14) then raise EACBrDFeException.Create('Informar CNPJ com 14 digitos'); ACBrNFe1.SSL.LerCertificadosStore; for I := 0 to ACBrNFe1.SSL.ListaCertificados.Count-1 do begin ACBPJCertificado := OnlyNumber(ACBrNFe1.SSL.ListaCertificados[I].CNPJ); if (ListaCertificados[I].DataVenc >= Date) then if (Copy(ACBPJCertificado, 1, 8) = Copy(ACNPJLocalizar, 1, 8)) then Result := ACBrNFe1.SSL.ListaCertificados[I].NumeroSerie; end; end;
    3 pontos
  6. Olá, Verifique: 1 - Se não houve a instalação de alguma nova impressora. 2 - Nas preferências da impressora, se não houve alteração do papel padrão. 3 - Se não houve instalação de algum programa que auxilia na criação de etiquetas.
    3 pontos
  7. Usem a impressão em EscPos... é mais rápida, gasta menos papel, é nunca terá esse problema.. Veja esse post com a configuração da impressão do extrato do SAT em Fortes
    2 pontos
  8. Opa.. Funciona assim..: tu vai ter um cadastro de Rps, onde sera colocados os dados do movimento da nota de servico. essa rps, tu vai ter um numero sequencial interno.. quando voce enviar a rps, voce recebera de volta os dados, como numero da nota de servico, protoco, etc.. e essa informacoes, tu adiciona na tua rps. Eu prefiro o Certificado em arquivo.
    2 pontos
  9. Bom dia.. Outra coisa..importante.. verifique com o webservice de porto alegre, se precisa pedir a homologacao para seu cliente. Algumas prefeituras, pedem que mande email, pedindo homologação e eles enviam alguns dados.. mas depente da prefeitura.. Outra coisa importante, é ter o certificado do seu cliente, em arquivo, pois ai , voce pode fazer os testes de homologação sem precisar estar na maquina do cliente.
    2 pontos
  10. Pessoal, o problema parou. Deve ter sido algo na receita. Resolvido.
    2 pontos
  11. O campo vOutro possui apenas duas casas decimais.
    2 pontos
  12. Bom dia. Você já estudou o manual do ACBrMonitorPlus? https://acbr.sourceforge.io/ACBrMonitor/ACBrMonitor.html Se ainda assim desejar suporte pago, acesse a lista de FreeLancers https://www.projetoacbr.com.br/forum/companies/category/2-consultores/ Att.
    2 pontos
  13. Olá... Notificou o problema ao SEFAZ ? Se SIM, obteve alguma resposta deles ?
    2 pontos
  14. Notei que a sugestão visa tornar Publica a propriedade ColCheque , que é exclusiva, da classe TACBrCHQImpressoraComum ... Isso pode confundir um pouco o usuário, que pensará que essa propriedade está disponível para todos os modelos... Observe Você pode acessar essa Propriedade com segurança, usando TypeCast... Exemplo: if ACBrCHQ1.CHQ is TACBrCHQImpressoraComum then TACBrCHQImpressoraComum( ACBrCHQ1.CHQ ).ColCheque := 10;
    2 pontos
  15. Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico.
    2 pontos
  16. Boa tarde Ângelo, Esse provedor não segue o layout da ABRASF. Caso você queira colaborar com o projeto fique a vontade em implementar. Dica: tome como base o provedor Governa ou Equiplano, por exemplo.
    2 pontos
  17. Hugo, Favor entrar em contato com a SEFAZ, pois com certeza ela esta aplicando a regra N22b sem antes checar se o Tipo CTe é Complementar ou não.
    1 ponto
  18. na classe TInfEvento = class falta a palavra "private" na linha 79 da unit pcnCCeNFe Espero que ajude
    1 ponto
  19. 6.3 - Mostre respeito pelo modo de escrever. Escreva de modo claro, gramaticalmente e semanticamente correto. Não escreva TUDO EM MAIÚSCULAS. Isso é lido como se estivesse gritando e é considerado rude. Favor leia as regras do fórum. Outra coisa, aqui estamos tratando de NFS-e e não MDF-e.
    1 ponto
  20. Boa tarde pessoal. Um novo caso aconteceu e tive que fazer uma atualização pcesS2230.pas para carregar o infoAfastamento.iniAfastamento.infoAtestado.Add Pode ocorrer do número de dias de afastamento ser indefinido (0), no caso do funcionário estar afastado pelo INSS e o motivo {codMotAfast} não ser [01]. Então o laço não terá o codCid e nem qtdDiasAfast, mas terá sempre nome do emitente. Mudei o laço para sFim := INIRec.ReadString('emitente' + IntToStrZero(I, 1), 'nmEmit', 'FIM'), assim sempre irá preencher. E também no afastamento por acidente de transito (TpAcidTransito) A conversão está SStrTotpTpAcidTransito(TGenericosString1_3) mudei para o TGenericosString1_4, para não gerar o tpacidTansito. tpTpAcidTransito = (tpatAtropelamento, tpatColisao, tpatOutros, tpatNao); Segue em anexo, Obrigado. pcesConversaoeSocial.pas
    1 ponto
  21. Boa tarde. Acredito que esta é uma dúvida para ser tratada diretamente com o contador do seu cliente. Att.
    1 ponto
  22. Boa tarde, aqui a gente gera/assina evento por evento. A gente chama a função GerarXML para cada evento que estamos gerando... Exemplo: evtInfoEmpregador.GerarXML; (S-1000) evtTabEstab.GerarXML; (S-1005) EvtTabRubrica.GerarXML; (S-1010) EvtAdmissao.GerarXML; (S-2200) Essa função retorna um boolean que indica se foi gerado/assinado corretamente ou não. Além disso, a gente coloca o GerarXML em um try/except, pois quando há problema de validação de schema, o componente dispara uma exceção, e dessa forma conseguimos pegar a exceção e saber exatamente de qual evento ela veio. E na hora de enviar chamamos apenas o método: ACBreSocial.Enviar(Grupo);
    1 ponto
  23. 1 ponto
  24. A leitura das tags do XML é case-sensitive, então se no teu XML está AutXML em vez de autXML provavelmente será ignorado pela rotina de carregamento.
    1 ponto
  25. O certo é vc seguir as especificações do SAT. 3 casas decimais para o valor unitário e 4 casas para o campo quantidade. O Resultado da multiplicação desses valores deve ser truncado.
    1 ponto
  26. Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico.
    1 ponto
  27. Bom dia. Contribuição incluída na fila de análise. Att.
    1 ponto
  28. Beleza então Daniel. Muito obrigado! Abraço!
    1 ponto
  29. Bom dia. Contribuições adicionadas a fila de análise. Att.
    1 ponto
  30. Bom dia.. Nesse caso, sugerio, pedir para o Contador, entrar em contato com o fiscal do Sefaz, e ver o que aconteceu.. mas se tu conseguiu inutilizar, é por que realmente a nota nao foi.. ou é bug do sefaz mesmo..
    1 ponto
  31. Bom dia, Eduardo Lins. Existe uma versão mais atualizada para usuários SAC. Para contribuir com o projeto, realizar o downloads, acesso a fórum privativo, conteúdo exclusivo de Vídeo Aulas, resposta no fórum em até 1 dia útil, ACBrMonitorPLUS compilado semanalmente, assine o ACBrSAC, vai estar ajudando o projeto e não é algo obrigatório ou mensal. https://www.projetoacbr.com.br/forum/sac/sobre/
    1 ponto
  32. Bom dia Mateus, Favor atualizar os fontes e faça novos testes.
    1 ponto
  33. Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico.
    1 ponto
  34. Bom dia... Consegui resolver esse problema passando xmlns="http://www.abrasf.org.br/nfse.xsd" nas tags <InfDeclaracaoPrestacaoServico>, <Rps> e <LoteRps>
    1 ponto
  35. Bom dia. Como está a propriedade LeCedenteRetorno? Se estiver false, vc deve informar o CNPJ referente a conta nas propriedades do componente. Att.
    1 ponto
  36. 1 ponto
  37. Utilize o Debug do programa de exemplo para analisar o comportamento do retorno da balança nas duas situações. E também verifique no manual da balança se existe alguma configuração que permite ela enviar o peso para a porta serial. Att, Fabiano Cunha
    1 ponto
  38. Desculpe-me pela demora na resposta da analise de sua contribuição... Notei que os arquivos estão em um formato anterior ao último refactoring que fizemos... ou seja... não é possível incorporá-los aos fontes do SVN... Veja um exemplo, das declaração das novas classes: TACBrBALToledo2180 = class(TACBrBALClass) public constructor Create(AOwner: TComponent); procedure LeSerial( MillisecTimeOut : Integer = 500) ; override; function InterpretarRepostaPeso(aResposta: AnsiString): Double; override; end;
    1 ponto
  39. Isso aí não tem o escopo que você pretende não: "Sleep(1000)" - manda o programa tirar um soneca de 1000 clics, não sou bom nessa conta mas acho que dá 1 segundo. " Open "C:\ACBrMonitorPLUS\Projetos\ACBrMonitorPLUS\Lazarus\ENT.TXT" For Output As vNRFreeFilevOut + 1" - Abre o um espaço na memória chamado vNRFreeFilevOut + 1, nome não recomendável por sinal, para salvar no arquivo cujo path foi informado. "Print vNRFreeFilevOut + 1, "ACBr.lerini"" - Escreve no espaço aberto os dizeres Acbr.lerini Close vNRFreeFilevOut + 1 - Fecha o espaço aberto na memória e salva tudo em C:\ACBrMonitorPLUS\Projetos\ACBrMonitorPLUS\Lazarus\ENT.TXT Tem muito tempo que não mexo com vb mas você deve procurar pela net aí uma rotina pra ler/editar arquivos do tipo INI.
    1 ponto
  40. Bom, apaguei todo o conteúdo da pasta lib e executei o batch script apagarAcbr.bat antes de fazer a reinstalação e funcionou. Parou de pedir a libxml2.dll. Grato galera, muito obrigado!
    1 ponto
  41. Pessoal, para poder resolver para o meu cliente eu inutilizei a nota pois como disse no inicio ela não constava na Sefaz e nem na Receita. Agora só queria entender e saber o porque de não constar quando retornou como Denegada e sem protocolo. Se alguém tiver passado pelo mesmo problema e puder ajudar, agradeço muito. Agradeço a ajuda e atenção do Amarildo e do Felipe.
    1 ponto
  42. Te agradeço pela dica Amarildo, mas utilizei as linhas de comando que Italo enviou e já deu certo. Muito Obrigado Italo, essas linhas trouxeram exatamente o retorno da forma que eu buscava, inclusive o arquivo xml e nome do arquivo. Muito obrigado pela informação. Só pra completar, quando esse retorno vem do encerramento, da consulta e do envio, passa pra mim uma linha de sintaxe de cada exemplo.
    1 ponto
  43. Boa tarde.. Tu tambem , pode ir no diretorios, onde sao gerados, os retornos de xml, no caso do acbrmonitorplus é Arqs\.... e la tem o xml, completo com todos os dados.. pode pegar esse xml,completo, e jogar dentro do campo no banco de dados..
    1 ponto
  44. Quais configurações está utilizando no ACBrMonitor? quais as Margens configuradas? Anexe o arquivo ACBrMonitor.ini...
    1 ponto
  45. Bom dia Adilson, Para obter os dados de retorno de envio de um evento é da seguinte forma: sProtocolo := ACBrMDFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[ 0 ].RetInfEvento.nProt; sStat := ACBrMDFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[ 0 ].RetInfEvento.cStat; sMotivo := ACBrMDFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[ 0 ].RetInfEvento.xMotivo; dhEvento := ACBrMDFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[ 0 ].RetInfEvento.dhRegEvento;
    1 ponto
  46. Bom dia.. Na minha opiniao é o sefaz que tera de rever e arrumar.. blz..
    1 ponto
  47. Estou com o mesmo problema, na 3.10 estava funcionando perfeitamente da seguinte maneira:
    1 ponto
  48. O serial do POS vc cria um cadastro no seu sistema porque em produção será fixo, o estabelecimento terá que ter cadastrado todos os POS para poder selecionar em qual será realizada a transação. Somente em homologação que precisa ser aleatório. Inclusive na homologação tive que mostrar a janela onde cadastra os POS Espero ter ajudado a voce e outros colegas que visualizarem este post, pq no inicio também tive dificuldade de entender, as informações a respeito do MFE estão muito truncadas, mas acaba no final sendo mais simples do que se imagina, ainda mais com o componente ACBr , fica tranquilo.
    1 ponto
  49. Bom dia a todos, Vocês chegaram a notar que existe um arquivo chamado DistribuicaoDFe.txt dentro da pasta: ...\Exemplos\ACBrDFe\ACBrNFe ? Vocês leram a NT que mencionei em postagens anteriores? Você entenderam que ao executar pela primeira vez o DistribuicaoDFe o que se obtêm são os resumos das notas (semelhante ao ConsultarNFeDest)? E que ao executar o DistribuicaoDFe pela segunda (ou terceira) vez o que se obtêm são os XML completos das notas manifestadas (semelhante ao Download)? Exemplo pratico: Suponha que foram emitidas 70 notas contra o seu CNPJ. UltNSU = 0 DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); // onde cUF e CNPJ são do destinatário da mercadoria Teremos como resposta 50 resumos de notas UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); Teremos como resposta os 20 resumos de notas restantes, uma vez que foram emitidas 70 notas contra o seu CNPJ, lembra? UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; Note que toda vez que executamos o DitribuicaoDFe devemos ler o valor de UltNSU pois sempre vamos usar essa informação na próxima vez que ele for executado. Como eu sei que não tem mais resumos de notas, simples: if ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137 then sTemMais := 'N' else sTemMais := 'S'; Se o Status for 137 significa que não tem mais documentos a serem lidos, logo devemos esperar por 1 hora para executar novamente o DistribuicaoDFe. Bom, agora você deve realizar a manifestação das 70 notas cujos resumos foram retornados pelo DistribuicaoDFe. Manifestado todas eles devemos executar: DistribuicaoDFe( cUF, CNPJ, UltNSU, '' ); // lembre-se o valor de UltNSU se refere a última execução do DistribuicaoDFe, pois este sempre retorna o um novo valor para UltNSU, veja a linha abaixo. UltSU = ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU; As duas linhas acima deve-se serem executadas até que o Status seja 137. Depois de manifestar as 70 notas (segundo o nosso exemplo) nessas ultimas execuções do DistribuicaoDFe podemos obter os XMLs completos dessas notas, bem como novos resumos de mais notas, resumos de eventos e até o XML completo de Eventos dessas notas manifestadas. Os XML completos das notas, serão salvos em disco desde que a propriedade: Configuracoes.Arquivos.Salvar tenha o valor True e esses XML serão salvos na pasta pré definida em PathDownload. Bom agora é com vocês, arregace as mangas e bom trabalho.
    1 ponto
×
×
  • 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...