Jump to content

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png click.png click.png

Valdir Dill

Membros Pro
  • Posts

    791
  • Joined

  • Last visited

  • Days Won

    2

Community Answers

  1. Valdir Dill's post in Erro ao Cancelament NFSe - ISSCuritiba was marked as the answer   
    Boa noite,
    Estava fazendo na nossa aplicação. Ao comparar com o demo achei o problema. Estava informando o motCancelamento. ISSCuritiba não aceita essa informação. Por isso estava dando erro.
    Tudo certo agora. Consegui cancelar em produção.
    Obrigado.
  2. Valdir Dill's post in Delphi Não Compila em Android com ACBrTEFDClass was marked as the answer   
    Boa tarde,
    Só para registrar um feedback. Não consegui um solução completa, mas deixo registrado como contornei a situação.
    Fiz a reinstalação do Acbr, marcando a opção (opção deixar somente a LibXX) que o @Juliomar Marchettisugeriu, mas não surtiu efeito. Marquei inclusive a opção "apagar arquivos antigos".
    Na compilação direta no F9 não funciona de jeito nenhum. Deixei processando por 14 minutos e não saiu do lugar. Como mencionei na abertura do tópico, ele vai progredindo e compilando várias units, mas quando chega na AcbrTEFPayGoWebComum.pas não vai para frente. Não trava, apenas fica "processaaaaaando.....".
    A solução que achei foi: primeiro faz um build (shift+F9). Ele demooooora também na AcbrTEFPayGoWebComum.pas, mas em 8 minutos termina. Após isso compilo (F9) e vai rapidão.
    Lembrando que se não vincular a ACBrTEFDClass na uses da minha aplicação, aí o F9 (até sem build) compila em menos de 30 segundos.
    Obs.: também não é problema de máquina (i5 + 8GB).
    Obrigado!
     
  3. Valdir Dill's post in 1/2 Off - Form com RLReport Demorando para Carregar was marked as the answer   
    Sim, FR CE atualizadíssimo.
    Boa tarde,
    Acho que achei a causa do problema. Ao que tudo indica, é alguma coisa na minha impressora padrão (uma HP Laser 1022), alguma coisa no driver eu acho. 
    O problema ocorre quando passa na rotina DC := CreateHandleFunc(PChar(Driver), PChar(Device), PChar(Port), FDevMode) da vcl.Printes.pas.
    Excluí essa impressora do Windows e aí não ocorreu mais o problema.
    Obrigado.
  4. Valdir Dill's post in Santander - SacadoAvalista.Pessoa was marked as the answer   
    Boa tarde,
    Solução encontrada: Sacado.SacadoAvalista.Pessoa := pOutras;
    Isso gera valor 9 na coluna 154 e o arquivo foi aceito pelo banco. Testes feito com banco Santander.
  5. Valdir Dill's post in SPED Fiscal - Registro 1300 - Posto de Combustíveis was marked as the answer   
    Bom dia @Juliomar Marchetti,
    Acho que consegui me encontrar, rs...
    Não estava me achando porque estava tentando criar o registro 1300 no bloco 0. O correto é no bloco 1, certo? Por isso pensei que talvez não houvesse suporte ao registro 1300, mas consegui dar o tranco aqui, rs e agora vai.
    Obrigado.
  6. Valdir Dill's post in Retorno Sicredi - Captura Tarifas was marked as the answer   
    Agradeço a sugestão, mas não tenho como adotá-la porque preciso das informações antes de gravar no BD. Além disso, nos outros bancos a informações no arquivo de retorno vêm numa linha só. Aí, de toda forma precisaria de rotinas diferentes.
    A solução que encontrei foi essa. Deixo aqui para talvez ajudar alguém no futuro:
    for I := 0 to ACBrBoleto1.ListadeBoletos.Count - 1 do
      begin
        if (ACBrBoleto1.ListadeBoletos.Objects.OcorrenciaOriginal.Tipo in [toRetornoLiquidado, toRetornoLiquidadoSemRegistro, toRetornoDebitoTarifas]) then
       begin
        if ACBrBoleto1.ListadeBoletos.Objects.OcorrenciaOriginal.Tipo <> toRetornoDebitoTarifas then
         begin
           VNumBoleto := ACBrBoleto1.ListadeBoletos.Objects.NossoNumero;
           VValorRec := ACBrBoleto1.ListadeBoletos.Objects.ValorRecebido;
         end;  
        if VBaixa.FTipoRet = cobSicred then //o sicred o retorno vem em duas linhas. 
          begin
           for M := 0 to ACBrBoleto1.ListadeBoletos.Count - 1 do
            begin
             if (ACBrBoleto1.ListadeBoletos.Objects[M].OcorrenciaOriginal.Tipo = toRetornoDebitoTarifas) and
              (ACBrBoleto1.ListadeBoletos.Objects[M].NossoNumero = ACBrBoleto1.ListadeBoletos.Objects.NossoNumero) then
              VTotTarifas :=  ACBrBoleto1.ListadeBoletos.Objects[M].ValorDespesaCobranca;
            end;
           end
          else VTotTarifas := ACBrBoleto1.ListadeBoletos.Objects[M].ValorDespesaCobranca;
         end;
       end;  
      end;  
    Obrigado.
  7. Valdir Dill's post in MDFe - Chave e Código Barras Desalinhados was marked as the answer   
    Boa tarde,

    Corrigido na 18034.
    Obrigado.
  8. Valdir Dill's post in REJEIÇÃO 282 certificado transmissor sem cnpj was marked as the answer   
    Boa tarde,
    Ao que tudo indica está tudo normal novamente no envio de NFe produtor rural SEFAZ-PA.
    Depois de 3 dias a SEFAZ-PA insistindo que o problema era no sistema emissor da nota, milagrosamente o problema se resolveu sem nenhuma alteração nossa sistema, hehe!
    Tópico resolvido!
    Obrigado.
  9. Valdir Dill's post in 1/2 Off - Padrão da Hora Windows was marked as the answer   
    O VFormats.ShortDateFormat que postei inicialmente está errado. O correto é VFormats.ShortTimeFormat.  
    Bom dia,
    Consegui uma solução. O problema ocorria porque GetLocaleFormatSettings(LOCALE_USER_DEFAULT, VFormats) traz sempre  todo o texto em minúsculo. Aí não tem como avaliar se está configurado para 12 horas (hh:mm) ou para 24 horas (HH:MM).
    A solução é ler diretamente no registro. Deixo a função para quem sabe ajudar outros.
    class function TFuncPubl.GetHoraCurtaFormat : String;
    Var
     VReg : Tregistry;
    begin
     //não pode usar o GetLocaleFormatSettings( aqui pqe essa função retorna sempre tudo em minúsculo. Aí sempre daria erro.
     result := 'HH:MM'; //para se der erro retornar o correto do GFIL.
     VReg := TRegistry.Create;
     try
      VReg.RootKey := HKEY_CURRENT_USER;
      VReg.OpenKey('Control Panel\International', false);
      result := VReg.ReadString('sShortTime');
     finally
      FreeAndNil(VReg);
     end;
    end;
     
    Tópico resolvido.
    Obrigado.
  10. Valdir Dill's post in Rejeição NFe - Duplicidade com Diferença na Chave was marked as the answer   
    Bom dia,
    Criei a função abaixo que resolve o meu problema. Pelo menos enquanto algum servidor não criar um texto de retorno novo para esse erro, hehe! Compartilho a função para que talvez possa ajudar alguém na mesma situação.
    function EhErroDuplicidadeNota(VErro : String; Var VChaveDuplicComDifChave : String) : boolean;
    begin
     {formas que essa rejeição retorna:
     1 - "Erro: Nota(s) não confirmadas: XXX->539-Rejeicao: Duplicidade de NF-e, com diferenca na Chave de Acesso
         [chNFe: 15181108905700000137550010000015931143828485][nRec:154000407154332]". XXX é o nr da nota.
     2 - "Rejeicao: Duplicidade de NF-e, com diferenca na Chave de Acesso [chNFe:15180926228562000180650010000102311165735226]";
     3 - "Duplicidade de NF-e, com diferenca na Chave de Acesso. [41180513971229000115650010000000791477402492] [nRec:918000000409987]".}
     result := true;
     VErro := upperCase(TFuncPubl.TiraAcentos(VErro));
     if pos('DUPLICIDADE DE NF-E', VErro) = 0 then exit(false); //se não é duplicidade
     if pos('COM DIFERENCA NA CHAVE DE ACESSO', VErro) = 0 then exit(true); //vai voltar como true pqe é duplicidade. Só não é com difereça de chave.
     VChaveDuplicComDifChave := emptyStr;
     if pos('[NREC:', VErro) > 0 then //retornos 1 ou 3
      begin
       if pos('[CHNFE: ', VErro) > 0 then VChaveDuplicComDifChave := copy(VErro, pos('[CHNFE: ', VErro) + length('[CHNFE: '), 44)
       else VChaveDuplicComDifChave := copy(VErro, pos('[', VErro) + length('['), 44);
      end
     else
      VChaveDuplicComDifChave := copy(VErro, pos('[CHNFE:', VErro) + length('[CHNFE:'), 44); //retorno 2
     if VChaveDuplicComDifChave = emptyStr then exit(true); //vai voltar como true pqe é duplicidade. Só não conseguiu capturar a chave.
     if (VChaveDuplicComDifChave <> emptyStr) and (not ValidaChaveDocEletr(VChaveDuplicComDifChave)) then VChaveDuplicComDifChave := emptyStr; //se retorno não for exatamente como nas 3 opções acima, o copy não retornaria algo, mas seria uma chave não válida.
    end;
    Abraços.
     
  11. Valdir Dill's post in MDFe Exigindo IE do Proprietário Veículo was marked as the answer   
    Boa tarde,
    Acho que era problema de schemas desatualizados. Copiei os schemas do svn e resolveu.
    Obrigado.
  12. Valdir Dill's post in Erro System 1753 was marked as the answer   
    RESOLVIDO. O problema de fato era no SO. Uma "limpeza" com Cclean resolveu.   Obrigado!  
  13. Valdir Dill's post in AcbrBal x EmuladorBalanca was marked as the answer   
    Resolvido.
    Eu estava desde ontem fuçando e não encontrava nenhuma dica. For só abrir este post que apareceu a solução, rs...
    Precisa criar duas portas virtuais e cada programa usará uma delas.
    O post abaixo tem mais detalhes.
     
     Obrigado!
  14. Valdir Dill's post in Sessão " ", não encontrada no arquivo ACBrNFeServicos was marked as the answer   
    Boa tarde,
    Estou anexando o AcbrNFeServicos.ini da forma com que tem que ficar para não dar esse erro.
    Se o responsável puder analisar e subir para o repositório...Aí resolve para todos que estão com esse problema com impressão da NFCe no PI.
     
    Obrigado!
     
    ACBrNFeServicos.ini
  15. Valdir Dill's post in Busca CEP was marked as the answer   
    Obrigado, consegui resolver...
    Olha a função que criei. Funciona tanto no Win como Android. Compartilho para ajudar outros, se precisarem.
    class procedure TFuncoes.BuscaCEPKIngHost(VCEP : String; Const VResult : TCEP);
    Const
     VChave = 'XXXXXX';
     VUrl = 'http://webservice.kinghost.net/web_cep.php?auth=';
    Var
     VStream : TStringStream;
     VRetorno : String;
     VIdHttp : TIdHTTP;
     VURLFinal : String;
    begin
     VResult.FQtdeEnder := 0;
     VCEP := SomenteNumeros(VCEP);
     if length(VCEP) <> 8 then exit; //se não é um CEP válido nem analisa.
     VStream := TStringStream.Create('', TEncoding.ANSI{tem q ter esse ANSI para não dar erro no Android});
     VIdHttp := TIdHTTP.Create(nil);
     try
      VURLFinal := VUrl + VChave + '&formato=xml&cep=' + VCEP;
      VIdHttp.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 9.0)';
      VIdHttp.Get(VURLFinal, VStream);
      VRetorno := VStream.DataString;
      VResult.FQtdeEnder := StrToIntDef(LerTagXML(VRetorno, 'resultado'), 0);
      if VResult.FQtdeEnder > 0 then
       begin //obs LerTagXML é uma função do acbrUtil
        VResult.FTipoLogr := LerTagXML(VRetorno, 'tipo_logradouro');
        VResult.FLogr := LerTagXML(VRetorno, 'logradouro');
        VResult.FCompl := LerTagXML(VRetorno, 'complemento');
        VResult.FBairro := LerTagXML(VRetorno, 'bairro');
        VResult.FCidade := LerTagXML(VRetorno, 'cidade');
        VResult.FUF := LerTagXML(VRetorno, 'uf');
       end;
     finally
      VStream.DisposeOf; VIdHttp.DisposeOf;
     end;
    end;
    Obrigado!!
  16. Valdir Dill's post in Erro Ao Instalar Acbr Xe7 was marked as the answer   
    Encontrei a solução. Deixo aqui para quem enfrentar o mesmo problema.   Como eu imaginava, simples de resolver. Basta selecionar o pacote onde dá o erro, no meu caso, o PCN2, acionar o menu "Project -> Options" e, no campo "unit scope names" do grupo "Delphi Compiler", acrescentar VCL.
  17. Valdir Dill's post in Danfe De Nfce Sem Nenhum Dado was marked as the answer   
    Descobri a solução. Não consegui achar a causa, mas o mais importante eu consegui.
    É algo muito esquisito que aconteceu. Deixo aqui a solução para que, se for o caso, ajude outros colegas que porventura passem pela mesma situação.
    Como eu ká havia imaginado e levantada a lebre em um dos post deste tópico, acredito que tenha havido alguma alteração em alguma rotina do ACBR e isso tenha gerado algum conflito com algum outro componente de meu sistema e gerando esse erro cujo print postei no início deste tópico.
     
    Meus componente Acbr estão (ou estavam) todos em dataModule. Eu apenas mudei o TACBrNFeDANFEFR do dataModule e o coloquei no form onde a nota é impressa. Somente isso, nem uma vírgula a mais e nem a menos.
     
    Gracias! 
  18. Valdir Dill's post in Acbrnfedanfeescpos1 X Ativar was marked as the answer   
    Certo, entendi. 
    Obrigado.
  19. Valdir Dill's post in Danfe - Informações Complementares was marked as the answer   
    Valeu Rômulo. Obrigadão.
  20. Valdir Dill's post in Erro Ao Imprimir O Segundo Danfe De Nfce was marked as the answer   
    Eureka!!!!!!!
     
    Consegui descobrir. No meu dataModule eu tinha colocado um componente acbrEAD. Foi só excluir o componente (que eu não utilizava mesmo) que o problema não ocorreu mais.
    Doidera, rs...mas era só isso mesmo.
     
    Obrigado pela ajuda!
  21. Valdir Dill's post in Formato Para Tag Alíquota Do Iss was marked as the answer   
    Obrigado!
  22. Valdir Dill's post in Danfse - Erro Com Acbrnfsedanfsefr E Danfse.fr3 was marked as the answer   
    Obrigado pelas dicas Juliomar.
    Fiz de tudo, inclusive em relação a midas que você sugeriu, mas não resolveu.
    Olha que estranho: eu tinha os componentes ACBrNFSeDANFSeFR1 e DANFSE.fr3 em um dataModule. Só mudei eles para o form onde a impressão é chamada e resolveu.
    Não sei o que pode estar gerando esse conflito, mas resolveu, que é o mais importantes, rs.
     
    Obrigado pela ajuda!
  23. Valdir Dill's post in Tributos - Lei Da Transparência was marked as the answer   
    Beleza Rodrigo, resolvido.
    No meu caso (issCuritiba), como esse servidor não aceita dados em "Outras Informações", coloquei na própria discriminação do serviço acrescentando o texto contendo o valor dos tributos.
     
    Obrigado pela ajuda!
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.