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][RFC] l10n_br_base: refactor vat field value #2718

Merged

Conversation

marcelsavegnago
Copy link
Member

No description provided.

@OCA-git-bot
Copy link
Contributor

Hi @rvalyi, @renatonlima,
some modules you are maintaining are being modified, check this out!

return
if partner.commercial_partner_id.cnpj_cpf:
partner.vat = partner.commercial_partner_id.cnpj_cpf

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

eu acho que tem que assignar o partner.vat de todos os partners para não ter erros de CacheMiss. Tb, como seria num caso internacional onde a empresa vai usar esse campo vat mesmo?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A principio ainda não trabalhei no caso de uso internacional e sim em uma forma de viabilizar o uso deste campo no método create_company

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lendo o outro PR pelo o que entendi isso está afetando o cadastro de um novo res.partner pelo Portal l10n_br_portal, seria esse o único motivo para preencher o VAT nos casos do Brasil? Se existe essa necessidade talvez o melhor seja usar um onchange ao invés do compute para não afetar os casos internacionais, sobre o Portal parece que o melhor seria ter um campo CNPJ na visão para o usuário informa-lo e assim separar o CNPJ_CPF do contato do CNPJ da empresa ou isso não seria possível?

Copy link
Member Author

@marcelsavegnago marcelsavegnago Sep 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Se tiver um campo CPF separado talvez resolveria. E no caso de pessoa fisica sem parent_id ou company_name o vat e cnpj_cpf seria o CPF.

E sim, a mudança é por conta de cadastros oriundos do portal.

Copy link
Member Author

@marcelsavegnago marcelsavegnago Oct 2, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

eu acho que tem que assignar o partner.vat de todos os partners para não ter erros de CacheMiss. Tb, como seria num caso internacional onde a empresa vai usar esse campo vat mesmo?

@rvalyi tentei garantir que o campo receba um valor em todos os casos massss não tenho certeza se da forma que fiz foi a melhor forma.

@marcelsavegnago marcelsavegnago force-pushed the 14.0-rfc-l10n_br_base-refactor-vat-and-others branch 6 times, most recently from c8a26ff to c77fa43 Compare October 2, 2023 21:19
@marcelsavegnago marcelsavegnago force-pushed the 14.0-rfc-l10n_br_base-refactor-vat-and-others branch from c77fa43 to 83a82df Compare October 2, 2023 21:22
@marcelsavegnago marcelsavegnago requested a review from rvalyi October 2, 2023 21:35
@marcelsavegnago
Copy link
Member Author

marcelsavegnago commented Oct 2, 2023

Pessoal, esta é a proposta adicionando um compute ao campo VAT. Tentei deixar de uma forma que o campo VAT possa ser utilizado no caso de contatos e empresas de fora do brasil.

@mbcosta Pelo onchange não consegui o resultado esperado. Já a proposta de um novo campo CNPJ para ser utilizado no formulário do portal eu entendo que pode ser uma opção também.

Enfim, de uma forma ou de outra hoje o campo VAT com um related com o CNPJ_CPF não me parece uma boa opção pensando em um ambiente multi-localização e portanto acredito acredito que já temos um problema.

Também entendo que visando uma maior compatibilidade não devemos deixar de preencher o campo VAT com o CNPJ ou CPF.

@marcelsavegnago marcelsavegnago marked this pull request as ready for review October 2, 2023 21:43
@antoniospneto antoniospneto mentioned this pull request Oct 4, 2023
@mbcosta
Copy link
Contributor

mbcosta commented Oct 11, 2023

@marcelsavegnago acredito que seria importante entender melhor o problema que acontece quando o VAT não está preenchido, qual erro acontece ou o que falha nesses casos? Porque sobre isso:

"Também entendo que visando uma maior compatibilidade não devemos deixar de preencher o campo VAT com o CNPJ ou CPF."

Na minha opinião o melhor é que o campo fique vazio nos casos que a empresa não tem VAT como no caso de empresas brasileiras, porque isso pode acabar confundindo tanto desenvolvedores brasileiros quanto estrangeiros ou mesmo os usuários sobre uma falsa equivalência entre o VAT e o CNPJ/CPF, já que na realidade o VAT é algo especifico de empresas com endereço na Europa( até onde sei ) e nenhuma empresa com endereço no Brasil tem um VAT, assim como as empresas europeias não tem um CNPJ, porque isso pode afetar por exemplo uma Pesquisa, Filtro e Agrupamento usando o campo VAT tanto na tela quanto um SQL que vai acabar mostrando empresas brasileiras que na realidade não tem o VAT, um falso positivo, ou também pode acontecer se em alguma visão usar o campo em um domínio ou parâmetro exemplo Invisível vai falhar.

Mas entendo que exista algo hoje que impede essa solução, mas como o ideal é ter a compatibilidade com os casos internacionais, tanto uma Empresa Brasileira/res.company que tem Clientes/Fornecedores/res.partner na Europa quanto um empresa de fora do Brasil que tem Clientes/Fornecerdores no Brasil e acabe usando os módulos da localização, acredito que é importante ter no código um TODO e o ROADMAP apontando o problema que está forçando essa solução até para se for um problema do core podermos avaliar um PR lá( considerando que eles aceitam apenas PRs na master ) ou um modulo da OCA para resolver a questão.

@rvalyi
Copy link
Member

rvalyi commented Oct 20, 2023

@marcelsavegnago acredito que seria importante entender melhor o problema que acontece quando o VAT não está preenchido, qual erro acontece ou o que falha nesses casos? Porque sobre isso:

"Também entendo que visando uma maior compatibilidade não devemos deixar de preencher o campo VAT com o CNPJ ou CPF."

Na minha opinião o melhor é que o campo fique vazio nos casos que a empresa não tem VAT como no caso de empresas brasileiras, porque isso pode acabar confundindo tanto desenvolvedores brasileiros quanto estrangeiros ou mesmo os usuários sobre uma falsa equivalência entre o VAT e o CNPJ/CPF, já que na realidade o VAT é algo especifico de empresas com endereço na Europa( até onde sei ) e nenhuma empresa com endereço no Brasil tem um VAT, assim como as empresas europeias não tem um CNPJ, porque isso pode afetar por exemplo uma Pesquisa, Filtro e Agrupamento usando o campo VAT tanto na tela quanto um SQL que vai acabar mostrando empresas brasileiras que na realidade não tem o VAT, um falso positivo, ou também pode acontecer se em alguma visão usar o campo em um domínio ou parâmetro exemplo Invisível vai falhar.

Então, na versão 16.0 a Odoo SA esta indo para botar o CNPJ dentro do campo vat mesmo: https://github.com/odoo/odoo/pull/139222/files#diff-1ef5fe83935572c9b9b9e6eec69a44551023f3b92fe38bed4f765a24e16694b4R727
Ainda não teve merge, mas eles fazendo isso eu diria que a gente pode assumir de jogar o CNPJ no vat mesmo, até na v14.0 sendo que poderia precisar de algum ajuste numa caso internacional na v14.
cc @marcelsavegnago @renatonlima

@rvalyi
Copy link
Member

rvalyi commented Oct 30, 2023

fizeram o merge na v17 odoo/odoo@e53081f

@antoniospneto
Copy link
Contributor

antoniospneto commented Nov 24, 2023

@mbcosta

A terminologia "VAT" realmente pode gerar confusão, pois parece que se trata do imposto sobre valor agregado, comum na europa, mas no Odoo, ela se refere ao número de identificação fiscal, que no Brasil corresponde ao "CNPJ/CPF". Por isso concordo com o @marcelsavegnago que o campo "VAT" deve ser claramente associado ao "CNPJ/CPF".

Historicamente, no Odoo, o "VAT" (Value Added Tax) foi confundido com "TIN" (Tax Identification Number) e "Tax ID".

Veja aqui no código nativo a propria Odoo S.A trata o "VAT" como sendo "Tax ID" no rótulo:
https://github.com/odoo/odoo/blob/2578c309b970f0f6a8b0bf5ba8711b0562e23940/odoo/addons/base/models/res_company.py#L86C5-L86C5

Penso que a Odoo S.A deveria padronizar o uso de "TAX_ID" ou "TIN" para eliminar qualquer confusão futura..

@antoniospneto
Copy link
Contributor

Outro fato interessante sobre o VAT é que, na definição do país, existe um campo para definir como será o rótulo do VAT naquele país. Veja:
image

Copy link
Member

@rvalyi rvalyi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@rvalyi
Copy link
Member

rvalyi commented Dec 1, 2023

/ocabot merge minor

@OCA-git-bot
Copy link
Contributor

What a great day to merge this nice PR. Let's do it!
Prepared branch 14.0-ocabot-merge-pr-2718-by-rvalyi-bump-minor, awaiting test results.

@OCA-git-bot OCA-git-bot merged commit 2659af7 into OCA:14.0 Dec 1, 2023
6 checks passed
@OCA-git-bot
Copy link
Contributor

Congratulations, your PR was merged at 5c33fb3. Thanks a lot for contributing to OCA. ❤️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants