Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[14.0][ADD][l10n_br_sped_base] SPED BASE MODULE #3100

Closed
wants to merge 15 commits into from

Conversation

rvalyi
Copy link
Member

@rvalyi rvalyi commented May 27, 2024

Finalmente eu pude dar uma boa limpa no modulo l10n_br_sped_base que eu tinha mandado em num PR de rascunho em 2023 (se alguem jà começou a usar em produção deve ser facil adaptar; a estrutura de dados mudou muito pouco).

  • Limpei bastante o codigo (dando uns rebases para não poluir o historico com muitos commits)
  • Botei um bom test coverage
  • Eu solucionei a questão da performance da serialização dos arquivos de SPED usando um browse com prefetch em vez do read initial registro por registro. Assim qdo se exporta n account.move com varios account.move.line, os SELECT acontecem por batch para todos os account.move e todos os account.move.line de uma so vez (o mapping acontece registro por registro, mas ai não tem como ser diferente e não é um gargalho).
  • Eu implementei uma opção split_sped_by_bloco que gera um arquivo de SPED por bloco se o bloco não tiver vazio.
  • Eu implementei o estado do l10n_br_sped.declaration de forma que vc pode puxar os registros do Odoo qdo tiver em rascunho e depois vc precisa validar para gerir os arquivos de SPED. Isso é inspirado do que fizemos no OCA/intrastat-extrastat para a Europa e que ta sendo usado por milhares ja faz 10 anos.

A seguir, vou subir os PRs dos modulos para cada arquivo de SPED que eu adaptei tb... (esses continuam com mapping bem partial porem; status alpha; para completar...)

OBS: mesmo se o nosso foco na Akretion já é a v16, é fato que algumas empresas vão querer fazer o SPED ou partes do SPED na v14. E na nossa avaliação vai ser tranquilo fazer os cherry-picks dos mappings entre as versões 14.0 e 16.0 então é vantagem ter os modulos de SPED ja na v14 e contar com as contribuições destas empresas pros mappings.

@rvalyi rvalyi force-pushed the 14.0-l10n_br_sped_base branch 4 times, most recently from 9708040 to a79d9e9 Compare May 27, 2024 04:01
rvalyi added 10 commits May 27, 2024 01:03
[ADD] extracted l10n_br_sped_ecd module

[ADD] extracted l10n_br_sped_efd_icms_ipi module

[ADD] extracted l10n_br_sped_efd_pis_cofins module

[ADD] extracted l10n_br_sped_ecf module

[FIX] back to simple SPED layout version support
saves a bunch of N+1 queries by using browse to prefetch
the register children.
@rvalyi rvalyi force-pushed the 14.0-l10n_br_sped_base branch from a79d9e9 to d93d79c Compare May 27, 2024 04:04
@rvalyi rvalyi force-pushed the 14.0-l10n_br_sped_base branch from d93d79c to 2729ffe Compare May 27, 2024 04:06
@rvalyi
Copy link
Member Author

rvalyi commented May 27, 2024

hum vou tentar dar um coverage no metodo _pull_records_from_odoo que ainda não tem teste aqui...

@rvalyi rvalyi marked this pull request as draft May 27, 2024 04:27
@mileo
Copy link
Member

mileo commented May 27, 2024

Fiz um rebase no que estavamos fazendo e abri um PR akretion#218 com uma correção que sobrou.

@rvalyi rvalyi changed the title [14.0][ADD][l10n_br_sped_base] [14.0][ADD][l10n_br_sped_base] SPED BASE MODULE May 28, 2024
Copy link

There hasn't been any activity on this pull request in the past 4 months, so it has been marked as stale and it will be closed automatically if no further activity occurs in the next 30 days.
If you want this PR to never become stale, please ask a PSC member to apply the "no stale" label.

@github-actions github-actions bot added the stale PR/Issue without recent activity, it'll be soon closed automatically. label Nov 10, 2024
@github-actions github-actions bot closed this Dec 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
14.0 new feature stale PR/Issue without recent activity, it'll be soon closed automatically. work in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants