Ir para conteúdo
  • Cadastre-se

EMBarbosa

Consultores
  • Total de ítens

    9.251
  • Registro em

  • Última visita

  • Days Won

    114

Posts postados por EMBarbosa

  1. Em 02/08/2022 at 15:47, Cesar Balbinott disse:

    Implementei o preenchimento da Tara para balanças Filizola, são 4 dígitos que iniciam na posição 166.

    Foi testado em uma balança Filizola Platina.

     

    ACBrCargaBal.pas 73.76 kB · 3 downloads

    Muito obrigado pela contribuição.
    Fiz a implementação baseada nela.
    Subi as alterações para o SVN na Revisão  28487.
    Pelo que vi está tudo certo.
    Queira por favor atualizar, testar e reportar qualquer problema.

    Mais uma vez obrigado.

    • Curtir 1
  2. Em 09/02/2023 at 10:35, Marcelo Pontes Melim disse:

    Ao validar o evento S-1005 (cadastro do estabelecimento) na versão simplificada 1.1, embora o FAP tenha sido informado no componente, a alíquota não aprarecia no XML gerando erro no evento enviado.

    pcesGerador.pas 79.26 kB · 2 downloads

    Muito Obrigado.

    Subi as alterações para o SVN na Revisão  28486.
    Pelo que vi está tudo certo.
    Queira por favor atualizar, testar e reportar qualquer problema no tópico linkado:

    Estou fechando esse para evitar duplicidade de informações.

  3. 8 minutos atrás, nildglan disse:

    Pessoal quem aqui no grupo tem um sincronizador de dados 100% funcional que sincroniza local para nuvem? que seja 100% sem nenhum tipo de falha, que queria me mostrar ou me passar um demo pra gente negociar?

    Boa tarde.

    Não temos nada no ACBr que faça isso.

    Mas você pode tentar a comunidade. Tente no subfórum banco de dados :https://www.projetoacbr.com.br/forum/forum/60-banco-de-dados/

    Alguém pode sugerir uma opção open source. Mas é importante você citar qual banco de dados e backend você está trabalhando.

    E talvez também queira tentar a área de classificados.

    Existem muitas opções no mercado, mas variam muito em quais bancos de dados suportam.

  4. Em 18/01/2023 at 12:12, luanemile disse:

    Bom dia no delphi tem alguma função para contar permutações possíveis de um numero ou palavra?
    Tenho essa função mais não está funcionando corretamente,
    Só funciona se os caracteres não se repetirem
    Exemplo :
    Qtda caracteres|combinação com 3 char| combinação com 4 char
    123456=                              120                                       360
    112345=                               72                                        192
    112234=                               42                                         102
    112233=                               24                                          54
    111234=                               34                                          72
    111223=                               19                                          38
    111222=                                 8                                          14

    function CountPermutations02(str: string; r: Integer): Int64;

      function Factorial(n: Integer): Int64;
      var
        I: Integer;
      begin
        Result := 1;
        for I := 2 to n do
          Result := Result * I;
      end;

      function Combination(n, r: Integer): Int64;
      begin
        Result := Factorial(n) div (Factorial(r) * Factorial(n - r));
      end;
    var
      I: Integer;
      count: array of Integer;
      n: Int64;
    begin
      SetLength(count, 256);
      for I := 1 to Length(str) do
        Inc(count[Ord(str[I])]);
      n := 1;
      for I := 0 to 255 do
        if count[I] <> 0 then
          n := n * Factorial(count[I]);
      Result := Combination(Length(str), r) * Factorial(r) div n;
    end;

    Acredito que não tenha nada pronto. Mas isso me parece combinações e permutações simples.

    Não deve ser muito difícil encontrar na internet ou desenvolver.

    O problema é que parece muito com um exercício de dever de casa... :(

    Pode dar mais informações sobre o contexto?

  5. Em 02/02/2023 at 13:33, VFADev disse:

    Pelo exemplo que o Diego postou, o que parece é que se o xml for lido a partir de um arquivo, o parâmetro vale. Já se for lido a partir de uma variável de memória não.

    Se você passa o XML pra lib, não importa se ele é lido em arquivo ou em string, o comportamento é o mesmo.

    Foi sugerido para você tentar passar o caminho ao invés do conteúdo. porque quando a lib lê de um arquivo, ela é responsável por fazer a leitura binária do arquivo. Isso pode mitigar qualquer conversão incorreta do encoding.

    Essa conversão incorreta é o que está gerando o erro reportado no início:

    Em 25/01/2023 at 09:49, VFADev disse:

    Erro: Falha ao interpretar o XML "xmlParseDoc" --> 9 - Input is not proper UTF-8, indicate encoding !
    Bytes: 0xE9 0x67 0x72 0x61

    Essa sequência de bytes "0xE9 0x67 0x72 0x61" não é UTF-8 "bem formado".

    • Curtir 2
  6. 20 horas atrás, VFADev disse:

    Diego,

    Eu imaginava que ao carregar um xml, independente se for via arquivo físico ou a partir de uma variável, os acentos seriam excluídos, se o parâmetro estivesse ativo.

    Entendemos, e isso pode ter sido a confusão inicial.

    Mas só pra deixar claro os motivos pra esse comportamento: se você passa um XML, a lib (e o componente) entende que o xml passado está pronto e não precisa gerar ele novamente. Isso é importante para casos de pessoas que querem que o seu XML tenha alguma particularidade diferente do que é o padrão das soluções do ACBr.

    • Curtir 2
  7. 4 minutos atrás, Andergoncalves disse:

    Boa Tarde! Ficou legal, sei que nosso amigo @Italo Giurizzato Junior está terminando de fazer os teste da versão 2.1 do Reinf

    3 minutos atrás, Andergoncalves disse:

    Seria interessante fazermos depois este ajuste no EFD-reinf também.

    Oi Andergoncalves.

       Com certeza.

       Esse código além de ser mais fácil de ler e manter, evita problemas de enumerados implementados sem uma string correspondente.

       Então, a ideia é, na medida do possível, fazer isso para todos os componentes que tenham situações parecidas.

       Nesse sentido, toda ajuda é bem vinda. E agradecemos aqueles que quiserem e puderem contribuir como você e o @Marcelo Pontes Melim tem feito.

    E com respeito ao Reinf, esperamos ter novidades nos próximos dias. :)

    • Curtir 1
  8. Em 25/01/2023 at 12:33, Marcelo Pontes Melim disse:

    O evento S-5013 precisou de ajustes para importar corretamente na versão simplificada 1.1 

    pcesS5013.pas 28.43 kB · 2 downloads

    Oi @Marcelo Pontes Melim,

    Queria avisar que eu fiz um commit relacionado a esse código na revisão 28381.

    Acontece que havia um método na unit pcesConversaoeSocial que faz a conversão usada naquela unit.

    Só que o método tinha uma incompatibilidade por conta da letra 'v' .

    Daí eu fiz uma alteração no método e uma varrida no componente pro uso dessas strings. Além disso encontrei outros lugares onde a mudança poderia ser aplicada.

    Do jeito que estava, a gente sempre precisava ficar indo nos arquivos e mudando. Agora, basta mudar na pcesConversaoeSocial e pronto.

    Por favor, depois de atualizar, reporte qualquer problema.

    • Curtir 4
  9. Em 12/01/2023 at 15:44, galegoga disse:

    Segue em anexo os arquivos modificados.

    Abaixo, resumo das modificações.

    Arquivo pcnReinfR5011.pas:

      // Adicionado classes:
      TRAquisCollection = class;
      TRAquisCollectionItem = class;  
    

    Arquivo pcnReinfRetConsulta.pas:

      // Adicionado classes:  
      TRAquisCollection = class;
      TRAquisCollectionItem = class;  
      
      // Adicionado campos
      TInfoTotalContrib = class(TObject)
      public
        property RAquis: TRAquisCollection read FRAquis;
      end;
      
      TRTomCollectionItem = class(TObject)
      public
        property cno: String read Fcno; 
      end;

     

    pcnReinfR5011.pas 31.84 kB · 2 downloads pcnReinfRetConsulta.pas 36.7 kB · 2 downloads

    Muito obrigado pela contribuição.
    Fiz a implementação baseada nela.
    Subi as alterações para o SVN na Revisão  28366.
    Pelo que vi está tudo certo.
    Queira por favor atualizar, testar e reportar qualquer problema.

    Mais uma vez obrigado.

  10. 21 horas atrás, Alysson Rengel disse:

    940717

    Em 23/01/2023 at 14:04, oliveira_arara disse:

    Ok, obrigado

     

    Eu não consigo nem abrir para analisar (com extensões) esses arquivos no VS Code já que tem mais de 20 MB. O Notepad++ abre com uma certa dificuldade.

    É possível que precisemos de algum tempo a mais para poder analisar isso.

    Qual a versão do Delphi de vocês?

  11. 3 minutos atrás, Alysson Rengel disse:

    Bom dia @EMBarbosa já fiz isso e mesmo assim persiste, ocorre de não ter tido movimentação de saída, mas como teve de entrada sou obrigado a informar.

    A minha resposta foi para o Fernando. O que eu te pedi você ainda não respondeu:

    Em 23/01/2023 at 17:31, EMBarbosa disse:

    Você não me respondeu:

    Em 23/01/2023 at 17:20, EMBarbosa disse:

    Como assim em ambos? depois que uma exception é levantada, o processamento não cessa?

    A questão é que precisamos saber se o erro é gerado pela FastStringReplace ou não.

     

    • Curtir 1
  12. 19 minutos atrás, VFADev disse:

    Bom dia,

    Uso Harbour, estou usando a opção para carregar o ini a partir da memória e estou alimentando a lib direto por xml. O log vai em anexo.

    ACBrLibeSocial-20230125.log 7.07 kB · 0 downloads

    Nesse log não tem a chamada para os métodos que geram o erro reportado.

    Por favor, gere um log desde o início da operação até o momento em que o erro é reportado.

    Se possível anexe os arquivos utilizados.

  13. 44 minutos atrás, VFADev disse:

    Boa Tarde Pessoal, 

    Apesar de já ter incluído no código o comando eSocial_ConfigGravarValor(::hDll,"eSocial","RetirarAcentos","1"), os acentos continuam sendo incluídos nos xmls enviados, gerando a seguinte mensagem de erro:

    Erro: Falha ao interpretar o XML "xmlParseDoc" --> 9 - Input is not proper UTF-8, indicate encoding !
    Bytes: 0xE9 0x67 0x72 0x61
     

     

    Bom dia.

    Por favor, nos dê mais informações.

    Qual a sua linguagem de programação? Consegue reproduzir o problema com a aplicação de exemplo?

    Como você está alimentando a lib? Por meio de arquivos INI ou xml?

    Anexe o log gerado desde o início da operação por favor.

    Anexe o arquivo INI utilizado pela Lib.

    • Curtir 1
  14. 7 minutos atrás, Alysson Rengel disse:

    Boa tarde, @EMBarbosa em ambos os métodos, quando ele passa em algum copy ou alguma função que trabalha com a string do XML consome uns 500 MB de memoria cada vez quando chega em 1.5 GB estoura a exceção.

    Como assim em ambos? depois que uma exception é levantada, o processamento não cessa?

    A questão é que precisamos saber se o erro é gerado pela FastStringReplace ou não.

    9 minutos atrás, Alysson Rengel disse:

    Se for útil posso estar subindo o XML aqui antes de tentar assinar para os amigos analisarem.

    Como é um arquivo confidencial e como já recebemos um outro arquivo, no momento não precisa enviar. Se precisarmos vamos pedir mais tarde.

  15. Em 11/01/2023 at 17:14, Alysson Rengel disse:

    estou gerando um XML com aprox 40 mil registros e no momento de fazer a assinatura do mesmo passa pela função FastStringReplace da unit StrUtilsEx e na linha 135 ocorre a exceção de out of memory.

    Em 20/01/2023 at 08:59, Alysson Rengel disse:

    conforme imagem em anexo estou recebendo out of memory no copy  dentro da função ajustarXMLAssinado, o XML tem 36507021 linhas, quando salvo fica com tamanho de 35.600 MB pois é a movimentação de estoque do ano todo do cliente.

    Alysson, afinal, o seu problema é lavantado no copy ou na FastStringReplace?

     

    5 horas atrás, oliveira_arara disse:

    Estou passando pelo mesmo problema, conseguiu resolver?

    Boa tarde. Você chegou a debugar para ver onde exatamente é levantada a mensagem de erro?

×
×
  • 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.