Ir para conteúdo
  • Cadastre-se

elton.barbosa

Consultores
  • Total de ítens

    9.956
  • Registro em

  • Última visita

  • Days Won

    127

Tudo que elton.barbosa postou

  1. Sim. No momento só ela tem dado problema nas UFs.
  2. A validação pela Sefaz RS também passou normal. Mais uma vez acho que o problema é local. Veja também esse tópico: Se em todo o caso você continuar achando que o problema não é local, acho melhor você entrar em contato com a sefaz da BA.
  3. Provavelmente o seu método CriaConexao está sendo chamado mais de uma vez, antes de ser chamado o método DestroiConexao.
  4. Olá maicon, Eu acredito que é um erro no seu arquivo schema local. Note que o campo vICMSSTRet é obrigatório em todas as menções dele na NT 2018.005. Sim. A princípio ele foi o único campo que gerou problema nessa rejeição específica (938).
  5. Há uns 6 anos atrás achei isso: tão verdade...
  6. Se tiver sugestões de onde o evento pode ser realizado em campinas você pode criar um tópico dando as sugestões. Certeza que vão ser levadas em conta.
  7. Pode ser que o estado não esteja preparado para a versão 2.0 do GNRe. Você pode verificar isso no seguinte site: Pode-se consultar alguma (in)compatibilidade no seguinte site: http://www.gnre.pe.gov.br/gnre/portal/consultarTabelas.jsp Queiram por favor verificar também o seguinte tópico sobre o assunto que indica que alguns campos adicionais podem não estar disponíveis em algumas UFs:
  8. Tenho algumas sugestões para você: Opção 1 - Verificar com o contador se o seu cliente pode fazer os lançamentos com enfoque no declarante. Quer dizer, ele lançaria não exatamente o que vem escrito na nota, mas como ele considera o produto. Nesse caso em vez de lançar 120 m3 de madeira ele vai lançar 120 caibros 5X2, 60 caibros 5,5X2, etc... Opção 2 - Verificar como o seu cliente fazia anteriormente pra controlar o estoque. A partir daí, você pode tentar seguir o mesmo esquema automatizando de acordo com seu programa. Opção 3 - Criar um sistema de conversão de produtos de entrada. Nesse caso, seu sistema teria um cadastro de produtos que são gerados a cada m3 de madeira. O cadastro seria alimentado pelo cliente e, a partir da entrada, seu programa faria a conversão. Mas só funcionaria mesmo se os fornecedores dele mandam sempre a mesma quantidade de material para a mesma quantidade de m3 de madeira. Opção 4 - Criar um sistema de produção. Esse seria uma área separada do seu programa e funcionaria como o Italo descreveu acima.
  9. A parte de comentar era responder as perguntas acima mesmo. Não precisa comentar o código.
  10. Na verdade pode existir fórmula, mas vai depender das medidas e do método de transformação. Poderia explicar com mais detalhes como é a peça de madeira que ele compra e como ele a transforma pra venda?
  11. Moderação: Fechando esse tópico que é de 2014. @Dempsey e @Agnaldo Prates Há tópicos mais recentes falando sobre esse assunto. Queiram por favor acompanhar o seguinte:
  12. Use o mesmo tópico apenas se estiver falando sobre a mesma coisa que o primeiro tópico menciona. Quando o assunto não for o mesmo, por favor, sempre crie um novo tópico. Por exemplo, se no primeiro tópico estiver falando sobre o nome do arquivo gerado pelo ACBrNFe e o que você quer criar for sobre a geração de imposto no ACBrNFe, crie um novo tópico. Ambos são sobre NFe, mas são assuntos diferentes. Mas nesse caso, me parece que todas as alterações estão seguindo a mesma ideia e você só está encontrando lugares diferentes a alterar. E mais, nenhuma delas foi enviada ao SVN. Então é melhor continuar usando o mesmo tópico.
  13. Apenas para acrescentar: Isso acontece porque a grande demanda obrigatória do TEF foi próximo desses anos. Havia a exigência do TEF no PAF-ECF, muitos "players" novos no mercado e grande atividade no projeto ACBr nessa área. A maior parte das informações continuam atuais. Mas algumas coisas ou exigências foram simplificadas. Geralmente, dá pra perceber isso no roteiro de certificação que eles te passam. Geralmente é remoto. Não conheço nenhuma que hoje em dia exija a certificação presencial. Não existe emulador de tef do ACBr. Mas ao entrar em contado com as certificadoras elas vão te disponibilizar tanto as dlls como um sistema que emula o TEF para que você possa implementar.
  14. Algumas sugestões. Verifique: se as contas e dados de login realmente existem; se os e-mails estão configurados corretamente (por exemplo, no google é exigido uma configuração para permitir o acesso por aplicativos menos seguros); se as dlls estão atualizadas (exemplo, dlls da openssl); se existe algum problema externo. (Exemplo: modem?)
  15. Eu sugiro você usar um profiler ou medir o tempo de execução de cada linha para conseguir verificar onde exatamente dentro dessa rotina acontece a lentidão nessas máquinas.
  16. Acontece nas melhores famílias. O código que você está interessado está no arquivo ACBrEFDBloco_H_Class.pas, na procedure TBloco_H.WriteRegistroH005(RegH001: TRegistroH001), especialmente essa parte abaixo: if (FBloco_0.Registro0000.COD_VER >= vlVersao104) then begin if DT_FIN >= EncodeDate(2012,07,01) then begin case MOT_INV of miFinalPeriodo: strMotInv := '01'; miMudancaTributacao: strMotInv := '02'; miBaixaCadastral: strMotInv := '03'; miRegimePagamento: strMotInv := '04'; miDeterminacaoFiscos: strMotInv := '05'; else strMotInv := '01'; end;
  17. Moderação: Tópico dividido.
  18. Sim. Porque é uma função para o tipo Motivo de inventário. Sim. Foi isso mesmo que você mesmo escreveu no seu primeiro post que queria, veja: Aqui você está confundindo índice com valor. O valor do tipo enumerado não é necessariamente o seu índice. É justamente por isso que temos essas funções. Claro! MOT_INV é do tipo TACBrMotInv. Não é string. Mas também não é inteiro. Se você quer converter o valor para atribuir ao campo MOT_INV você deve usar a outra função StrToMotInv. Isso, na verdade é mais uma prova que você está equivocado, porque conforme você mesmo disse no primeiro post, e conforme consta no Guia prático da EFD, página 191:
  19. Olá Mateus, A alteração não é necessária. Você não deve converter o tipo enumerado diretamente para inteiro ou vice-versa. Se fizer isso, vai ter problemas com outros tipos. Use as funções declaradas nessa mesma unit como: function StrToMotInv(const AValue: string): TACBrMotInv; function MotInvToStr(AValue: TACBrMotInv): string;
  20. E quando terceiros prestam serviço de manutenção? Quem é o responsável técnico? Dúvidas assim podem surgir quando fixamos na mente mais a ideia de um "representante da classe de programação" perante a lei do que na ideia de um responsável pelo sistema. Talvez isso aconteça porque o termo usado é "responsável técnico". Logo nos vem a mente um engenheiro responsável pela obra e tal... Mas veja bem, a ideia do responsável técnico, é ter uma "pessoa" para quem a Sefaz vai mandar um e-mail quando quiser falar sobre o software emissor do DF-e. Como dito antes, suponha que o software emissor tentou retransmitir a mesma NF-e com erros no XML, por 70.000 vezes... ou seja, mesmo recebendo o erro de rejeição por XML inválido, a aplicação ficou em algum Loop, tentando retransmitir o mesmo XML que já sabia era rejeitado, isso por 70 mil vezes. Nesse caso, quem a SEFAZ deveria contatar? Pensar nesses termos, nos ajuda a entender o motivo das tags Responsável Técnico e assim saber como preencher. Vamos a dois exemplos, com base nas perguntas desse link: Imagine uma microempresa, distribuidora de produtos de limpeza, que para emitir a notas fiscais, paga a um programador fazer as alterações nos fontes de um sistema emissor. Esse programador é pessoa física. Como fica esta situação? Não se engane. A resposta depende mais do tipo do vínculo entre eles e menos de o programador ser uma pessoa física. A questão que deve ser respondida é: Quem é o responsável pelo software? Quem a SEFAZ deve contatar caso queira falar sobre o sistema? Isso vai depender de cada caso e talvez de cada UF. Responder algumas perguntas podem ajudar a resolver a questão: Atualmente, o sistema é da ME distribuidora de produtos de limpeza? O programador é chamado como um terceirizado ou mesmo como funcionário temporário da empresa, não tendo de fato vínculo com o sistema? Por exemplo, ele pode ser substituído por outro programador? (Note, não importa aqui o conhecimento interno do sistema...) Se a resposta a essas perguntas for sim então, a menos que algo diferente esteja em contrato, o responsável técnico é a empresa distribuidora de produtos de limpeza.  Ela contrata outra pessoa para dar manutenção mas, ainda assim, ela é responsável, porque o sistema é dela. No PAF-ECF, chamávamos isso de "sistema próprio". Quer dizer próprio da empresa. Não é um sistema que ela aluga. Caso alguma resposta para as perguntas for não, então, provavelmente, o responsável técnico é o programador. Será necessário verificar com a UF como ele deve ser informado já que ele não tem CNPJ. No caso da empresa ter uma pessoa que saiba programação e faça estas alterações mas não é programador registrado e sim diretor ou gerente ADM, como fica? Nesse caso, sem dúvida, o responsável técnico é a própria empresa. Ela tem um sistema próprio, desenvolvido internamente para emitir os DF-e. Não importa se quem faz as alterações é um programador ou o contínuo da empresa. O importante é quem é responsável perante a SEFAZ e, nesse caso, é claro que a SEFAZ não vai querer saber quem deu manutenção no sistema. Quando ela precisar falar com um responsável, ela vai querer contatar diretamente a empresa. Afinal de contas, se a empresa não quisesse isso ela teria contratado um sistema de alguém ao invés de permitir um funcionário (ou sobrinho do dono) criar o sistema.
  21. Você está respondendo a um tópico de aproximadamente um ano atrás. É provável que agora o problema seja outro. Por exemplo, talvez eles tenham implementado um limite de pesquisas por período.
  22. A propósito, o XML não foi feito para isso (incluir arquivos binários). Ele não é eficiente para isso. Você vai gastar mais tempo e recursos. Seria melhor verificar com o servidor uma alternativa.
  23. Acho que você não pode simplesmente atribuir ao NodeValue (que é um OleVariant) uma string que é na verdade um arquivo binário. É provável que vão existir caracteres de controle não compatíveis e resultará em um xml malformado. Talvez por isso seja necessário converter para base64. Visto que está usando Delphi 7 espero que esse link te ajude: https://stackoverflow.com/q/32306960/460775
  24. Como você está convertendo o tipo binário? Está usando base64 por exemplo?
  25. Não vou ter tempo pra ver, mas achei muito interessante seu componente. Pelo erro, ou o arquivo dfm já possui o campo, ou o seu componente está criando os campos novamente. Então bastaria você tratar isso. Estritamente falando, os campos não existem "nela". Eles estão relacionados com ela. Então a ideia seria validar se eles já existem no form ou DM. Bom, se não tiver jeito de fazer isso automaticamente, isso explica o motivo de não ser feito nos componentes do Delphi. Mas caso contrário, se você tem o Delphi, você tem o código da VCL e assim pode verificar como é que um TDataSet implementa essa facilidade quando selecionamos "Add all Fields".
×
×
  • 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...