Ir para conteúdo
  • Cadastre-se

bnobre

Membros Pro
  • Total de ítens

    1.491
  • Registro em

  • Última visita

  • Days Won

    4

Tudo que bnobre postou

  1. Olá Marcelnl, tudo bom? Desculpe a demora, ficou perfeito a sua dica. Obrigado mesmo
  2. Muito obrigado meu amigo, ficou perfeito.
  3. Bem, não sei exatamente como funciona esse cálculo, mas reparei que o link que me mandou também dá o erro "Código do Hash do QR Code inválido". Vou expor os testes que realizei aqui para tentarmos entender o que pode ter ocorrido, pois o problema foi resolvido SEM EXPLICAÇÃO. Aqui é um HortiFruti com 4 estações... Cada uma emite NFCes independente, series 1, 2, 3 e 4, cada uma com uma cópia do certificado A1, com o ACBrNFe1.NotasFiscais[0].NFe.Emit.CNPJCPF recebendo o CNPJ com máscara e o idCSC e o CSC (o mesmo usado na filial) corretos. Implantei esse final de semana e desde o início as NFCes eram autorizadas, mas com o erro "Código do Hash do QR Code inválido" ao ler o link do QRCode. Então postei esse tópico tentando achar uma solução, enquanto esperava uma resposta fiz o seguinte, gerei um segundo CSC de produção e nas máquinas onde coloquei o mesmo, passou a parar de dar o problema. Agora vem a parte estranha, voltei a usar o primeiro CSC (o mesmo usado na filial) e que estava dando erro, e simplesmente começou a pegar, sem explicação nenhuma. Mas só voltou a pegar nas que eu primeiramente usei o segundo CSC, enquanto não usei o segundo CSC ele continuou dando erro ao usar o primeiro (igual da filial). Quanto ao campo ACBrNFe1.NotasFiscais[0].NFe.Dest.CNPJCPF, por coincidência programei sem máscara mesmo, mas o campo ACBrNFe1.NotasFiscais[0].NFe.Emit.CNPJCPF em todos os meus clientes uso com máscara, inclusive nesse em questão, e está funcionando perfeitamente. Coincidência ou não, o site da SEFAZ RJ estava instável esse final de semana (quando implantei) e hoje está em manutenção, mas creio nada ter haver, pois parece que esse cálculo usa apenas informações locais. De qualquer forma, agradeço a atenção de todos
  4. Quando diz chamada recursiva, creio que está falando sobre chamar o procedimento dentro do procedimento. Certo??? Se sim, o loop que eu falei é exatamente isso, chamar o procedimento dentro do procedimento. A procedure tenta dar o comando " ZConnection1.Connected := True; " e se não consegue, o componente gera uma exceção... Aí para que eu consiga dar novamente o comando " ZConnection1.Connected := True; " eu preciso chamar novamente a procedure, e em caso de erro o componente gera novamente a exceção chamando novamente a procedure e aí vai, até conseguir conectar. Poderiam me dar uma dica de código onde eu consiga esse mesmo efeito sem o problema do StackOverFlow?
  5. Pessoal, a fim de evitar esse erro que o EMBarbosa citou, teriam uma outra sugestão de como programar essa tentativa persistente de conexão ao MySQL que funcione similar ao que eu fiz com o loop???
  6. Legal, mas pelos testes que realizei aqui em alguns clientes com esse problema, só entrou no loop 1 vez, portanto acho que não chegará a dar esse erro. Mas caso ele ocorra o aplicativo gerá um alerta para o cliente ou ao menos irá travar? Tentei o comando que me disse, mas só abriu a tela em anexo, uso o Delphi 2010.
  7. Oi EMBarbosa... O que é um StackOverflow?
  8. Olá a todos, Consegui fazer o loop que eu queria, segue código abaixo: Agora estou testando para ver se elimino realmente o problema que me fez abrir o tópico, mando notícias.
  9. Só a nível de esclarecimento, já tentei verificar se o processo está ativo através da função em http://showdelphi.com.br/dica-como-verificar-se-um-processo-esta-rodando-delphi/ Mas mesmo assim, 1 a cada 10 vezes ele dá o erro dizendo que não pode se conectar ao MySQL. Creio que ele visualiza o MySQL em memória, mas o mesmo não carregou por completo, gerando o erro. O ideal seria realmente eu ficar tentado conectar o componente até ele conseguir, mas não sei como fazer isso através da exceção.
  10. Olá Daniel, Fiz a rotina conforme disse e parece que você estava certo. Mesmo aguardando o ping responder e conectando logo em seguida, o erro acontece, o que sugere ser o MySQL demorando a ficar ativo. Estou pensando em colocar alguma função para verificar se o MySQL está ativo e só então conectar nele, o que acha? Também pensei em outra solução que seria mais simples, só não sei se é possível. Quero fazer a seguinte estrutura abaixo: É possível eu criar isso com o try/except???
  11. Olá Daniel, tudo bom? Na verdade há tempos eu também achava que fosse o MySQL demorando assim como você, mas ontem eu presenciei em um cliente onde a demora era mais perceptível, com o ícone da rede "girando" como se buscasse um IP (apesar de fixo). É realmente devido a isso que ocorre o erro.
  12. Olá a todos, Estou tendo um problema que está se tornando chato. Tenho um aplicativo de ponto de venda que usa o MySQL como base de dados e eu coloco ele para inicializar com o windows. O problema é que mais ou menos, 1 a cada 10 máquinas ao inicializar o windows demora alguns segundos para carregar o ícone da rede, mesmo estando com o IP fixo. E enquanto a rede não carrega, não é possível se conectar ao MySQL (mesmo estando na própria máquina) e recebo um erro. Isso ocorre mesmo se usar 127.0.0.1 ou localhost. Preciso de alguma função que monitore a estabilização da rede para que eu conecte no MySQL somente quando estiver tudo ok. Alguém pode me ajudar nessa? Desde já agradeço a atenção de todos
  13. Olá a todos, Implantei o meu emissor de NFC-e em um cliente novo e ao tentar consultar qualquer nota via QRCode sempre recebo esse alerta no rodapé do site da SEFAZ Já conferi o ID Token e o CSC, estão corretos, aliás essa empresa só possui um token/csc gerado e no ambiente de produção. Para efeito de conhecimento, essa empresa possui uma filial onde apenas o CNPJ é diferente, sendo o ID Token e CSC idênticos ao da Matriz, e na filial não tenho esse problema. Vou anexar alguns XMLs com esse problema, além do CSC desse meu cliente para ver se alguém consegue me dar uma luz, pois estou com receio de isso dar problema lá na contabilidade. Desde já agradeço a atenção de todos 33161004856081000187650040000000019000000011-nfe.xml 33161004856081000187650040000000021000000021-nfe.xml 33161004856081000187650040000000031000000037-nfe.xml 33161004856081000187650040000000041000000042-nfe.xml 33161004856081000187650040000000051000000058-nfe.xml 33161004856081000187650040000000061000000063-nfe.xml Gerenciamento de CSC.pdf
  14. Olá a todos, Como já sabem, os componentes do RxLib foram incorporados ao Jedi há bastante tempo, ficando o RxLib descontinuado Uso o Delphi 2010 e ainda utilizo o TCurrencyEdit do RXLib em meus projetos. Com o intuito de minimizar problemas na migração de meus projetos para versões mais recentes do Delphi, estou querendo substituir o uso do TCurrencyEdit pelo TjvValidadeEdit, pois pelo que li seria o substituto da paleta Jedi. Só que o JvValidateEdit só não faz UMA coisa que considero muito importante, ele não trava a digitação em X casas decimais definidas por mim, como é feito no TCurrencyEdit. Por exemplo, se eu travar em 2 casas decimais e tentar no TCurrencyEdit digitar o valor "12,7777777" ele não deixa, travando a digitação em "12,77". O mesmo não ocorre no JvValidateEdit, ele permite digitar "12,7777777" e ao perder o foco, ele arredonda o valor para "12,78". Tentei várias possibilidades de configurações, li os docs do Jedi e pesquisei bastante na internet, mas não obtive êxito em deixar o comportamento do componente como eu quero. Alguém sabe se e como é possível deixar o componente assim? Ou teria outra sugestão de componente nativo do Delphi que trabalhe assim?
  15. Vlw meu amigo. Grande abraço
  16. Então Waldir, eu já tinha lido isso, mas para ser sincero esse termo "socket" é novo para mim. Pelo que eu pude ententer, trata-se de um outro Timeout só que especifico para esse "socket". Você nesse terceiro parâmetro da função que me passou costuma repetir o tempo especificado no segundo (que trata-se do timeout normal) ou coloca algum valor diferenciado?
  17. Olá Waldir, obrigado pela dica. Mas do que se trata o terceiro parâmetro?
  18. Olá Waldir, Testei em duas máquinas aqui no laboratório e funcionou de primeira, sem demoras, agora irei levar aos clientes. Muito obrigado mesmo, "quebrou uma árvore". Só me tira uma dúvida sobre os parâmetros... O primeiro é o Host, óbvio. O segundo provavelmente é o timeout, correto? Coloquei aqui 300, que suponho serem 300 milissegundos. O terceiro se trata do que? Qual valor devo colocar? Abraços e novamente obrigado
  19. Olá EMBarbosa, tudo bom? Eu já havia visto esse tópico, com o WMI ocorre a mesma lentidão as vezes, o que sugere que ele não obedece o timeout especificado. Com a API do Windows, não consegui fazer rodar, estou tentando com o código do link abaixo: http://www.delphipages.com/articles/ping_without_raw_sockets-9220.html Você já precisou realizar um teste parecido? Obteve exito com o timeout? Se sim, peço que poste seu código como exemplo. Desde já agradeço a atenção
  20. Olá Juliomar, tudo bom? Não entendi... Como assim eu posso montar?
  21. Olá a todos, Na versão que estou usando do ACBrNFeDANFeESCPOS não aparece o texto da propriedade FonteTributos no ato da impressão, que no meu caso especifiquei com o valor "IBPT". Minha versão está desatualizada, na versão mais atual do componente isso já está funcionando? Desde já agradeço a atenção
  22. Olá a todos, Possuo um sistema de emissão de NFC-e e quero que o mesmo funcione caso o servidor pare de funcionar, para isso gravo as vendas localmente e conforme o servidor esteja online eu dou carga nele. Até aí tudo bem, mas para saber se devo dar carga, preciso checar se o servidor está online na rede. Uso o Delphi 2010 e estou usando o seguinte código para a checagem: O problema é que nem sempre leva os 300 milisegundos especificados para ele desistir do ping e avisar sobre a desconexão do servidor. As vezes leva segundos. Alguém saberia como resolver essa lentidão e fazer o comando obedecer o timeout especificado? Desde já agradeço a atenção de todos
  23. O interessante do uso Fortes é que tem para Lazarus, facilita uma futura migração.
  24. Desculpa a demora Licerio, Vou te dar um conselho baseado em uma experiência que estou tendo. Estou pegando alguns mercados e implantando o meu sistema, e todos eles possuem algum programa que emite ECF e estão migrando agora para o NFCe. Os aplicativos para serem homologados em ECF antigamente, precisavam funcionar se a rede "caísse". Imagina o mercado lotado e dá algum problema no servidor e todas as estações param de vender, isso já aconteceu comigo na prática e mais de uma vez. Claro, é problema físico e não tem nada a ver com a gente, mas o cliente quer solução, ainda mais os que já eram acostumados com essa funcionalidade. No mercado o giro de pessoas é muito alto, e fica complicado fazer qualquer tipo de reparo em um servidor defeituoso. Estou trabalhando para desenvolver um módulo que funcione dessa maneira, específico para mercados. Estou comentando isso para que você veja um problema muito maior que de repente você ainda não observou. Caso tenha gostado da ideia, de repente é melhor você focar seu tempo em fazer um módulo que funcione com servidor/autônomo do que desenvolver algo para autorizar notas em um só local na rede que como citei pode parar de funcionar a qualquer momento. Vai por mim, o dono do mercado vai preferir gastas 200 pratas em um certificado A1 para instalar em todas as estações do que correr o risco da única máquina que emite o A3 parar de funcionar e com isso paralisar todo o mercado. Abraços
  25. Valeu Fabiano, vou testar aqui. Vi outra diferença aqui e quero comentar, de repente ajuda mais alguém aí com o Zeoslib na migração. Um dos meus projetos tinha algumas tabelas com campos que o Zeos sugeria como READONLY, creio que pelo fato de serem campos dinâmicos como os campos "tipo" e "serial" abaixo: No Delphi 7 com Zeoslib 6.6.2-RC, sempre atribui valores para esses campos e o ZQuery aceitava de boa, mesmo estando marcados como ReadOnly. Agora no Delphi 2010 com o Zeoslib 7.1.4-stable ele dá erro, dizendo que o campo não pode ser modificado. Na verdade esse erro é o certo, dado o campo ReadOnly como True, mas na versão antiga do Delphi/Zeoslib ele aceitava. Outra diferença que eu vi também foi em uma tabela que eu tenho um campo chamado "to", referente ao estado de Tocantins. Mesmo se tratando de uma palavra reservada na versão antiga do Delphi/Zeoslib ele aceitava, agora dá erro no ZUpdateSQL, tive que mudar para outro nome. A princípio é isso, observando novas necessidades informo aos amigos.
×
×
  • 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...