-
Notifications
You must be signed in to change notification settings - Fork 99
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
Améliore revenus fonciers #1216
Conversation
Bonjour, class revenus_fonciers_nets_abattement_microfoncier(Variable):
value_type = float
entity = FoyerFiscal
label = u"Revenus fonciers"
reference = "http://impotsurlerevenu.org/definitions/220-revenu-foncier.php"
definition_period = YEAR
def formula(foyer_fiscal, period, parameters):
'''
Revenus fonciers nets des déficits et après abattement sur microfoncier
Comprend (et est principalement constitué) les revenus locatifs des biens non meublés
Microfoncier: quand les revenus fonciers sont inférieur à microfoncier.max (15 000€ en 2018)
'''
f4ba = foyer_fiscal('f4ba', period) # Revenus fonciers imposable
f4bb = foyer_fiscal('f4bb', period) # Déficit imputable sur les revenus fonciers
f4bc = foyer_fiscal('f4bc', period) # Déficit imputable sur revenu global
f4be = foyer_fiscal('f4be', period) # Microfoncier
microfoncier = parameters(period).impot_revenu.rpns.micro.microfoncier
return f4ba - f4bb - f4bc + round_(f4be * (1 - microfoncier.taux)) Je ne sais pas ce qu'en pensent les autres utilisateurs, mais j'ai un petit peu de mal à naviguer entre les formules de manière efficace. Un peu plus de contexte m'aiderait pas mal. |
Remarque en plus, est-ce qu'il ne serait pas sein de mettre un warning ou un assert si |
@bfabre01 @adrienpacifico On préfèrera maintenant les attributs documentation de la variable aux docstrings si c'est possible et pertinent (i.e. lié à la variable et non à la formule), cf #1141 et openfisca/openfisca-core#717 |
CHANGELOG.md
Outdated
### 29.4.0 [#1196](https://github.com/openfisca/openfisca-france/pull/1196) | ||
## 29.5.0 [#1216](https://github.com/openfisca/openfisca-france/pull/1216) | ||
|
||
* Amélioration technique. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Evolution du système socio-fiscal non rétro-compatible
Oui "breaking change" c'est plus court mais c'est anglais ;)
Et numéro de version à 32.0 (mais en fait je pense qu'il vaut mieux attendre juste avant le merge pour s'occuper des setup.py et CHANGELOG, et je veux bien centraliser cette tâche; on perd trop de temps à gérer les rebase autrement)
Attention je crois que le renommage de Peut-être qu'on peut adoucir le coup en dépréciant |
Sur le nom |
''' | ||
f4ba = foyer_fiscal('f4ba', period) | ||
f4bb = foyer_fiscal('f4bb', period) | ||
f4bc = foyer_fiscal('f4bc', period) | ||
f4bd = foyer_fiscal('f4bd', period) # noqa F841 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On ne traite pas la case 4BD mais à mon sens c'est une erreur (et ça fait mentir le commentaire ajouté), ces déficits vont être déduits des revenus imposables, c'est ce qu'indique en tout cas la fiche de calcul.
Par ailleurs un plafond de 15000€ est applicable sur le microfoncier, toujours d'après la fiche de calcul.
Je pense que le nom "revenus_fonciers_nets_abattement_microfoncier" est trop spécifique pour cette formule qui combine le micro (4BE) et le réel (4BA-4BD), "revenus_ou_deficits_fonciers" collerait bien au calcul réalisé, ou "revenus_fonciers_nets" si c'est assez clair.
Les "revenus locatifs" au sens où les demande Mes Aides servent notamment à déterminer l'éligibilité au RSA, et à ce titre il n'y est pas distingué entre les biens loués nus et loués meublés, alors que cette distinction est importante pour la déclaration fiscale. Il me semble qu'il faudrait conserver à "revenus locatifs" cette fonction mais lui donner une formule combinant les revenus fonciers fiscaux et les locations meublées non professionnelles (cases 5ND et consorts). De cette façon, les calculs du RSA dans Mes Aides continueraient à s'appuyer sur la saisie globale de tous les revenus issus de la location de biens, et les calculs du RSA prenant pour base des données fiscales resteraient conformes à la fois aux calculs fiscaux et aux prescriptions de la CNAF. |
@bfabre01 Comment avançons-nous sur cette PR ? |
J'ai poussé un commit supprimant REVENUES_CATEGORIES et REV_TYP dans |
Je découvre un doublon: Ce doublon nous amène à compter deux fois ces revenus dans Contrairement à Le calcul correct est me semble-t-il le suivant, je m'appuie sur la fiche de calculs:
Ce qui donne sous la forme d'un select:
J'ai corrigé |
Pour corriger le doublon j'ai supprimé |
Bon je vois que ça casse des tests… je vais avoir besoin d'une deuxième paire d'yeux sur le truc. |
@Morendil : pardon pour mon temps de réponse. Je vais reprendre tout ça car en effet, l'inclusion des bien professionnels complique la chose. Demain, ou début de semaine prochaine. |
@bfabre01 Le double compte dont je parlais plus haut peut représenter une erreur importante dans les calculs basés sur des données fiscales il me semble, je serais curieux de savoir ce qu'il en est… |
9c6c6c9
to
8d618a9
Compare
… par revenu_categoriel_foncier
44beb67
to
78dc91c
Compare
@Morendil : pardon pour ces erreurs. Ok, super. J'ai juste enlevé un test redondant. Sinon, c'est tout bon de mon côté. Si tous les tests passent, je pense qu'on peut merger. |
@bfabre01 Est-ce que le message du CHANGELOG est à jour de toutes les modifications depuis ? |
C'est fait ! Merci pour la remarque. |
mesures.py
prelevements_obligatoires\impot_revenu\ir
prelevements_obligatoires\isf
prestations\aides_logement
prestations\prestations_familiales\base_ressource
prestations\minima_sociaux\ass
prestations\minima_sociaux\ppa
prestations\minima_sociaux\rsa
revenus\capital\foncier
fon
. A la place, on utiliserevenu_categoriel_foncier
.f4ba
revenus_locatifs
via les cases de la déclaration fiscaleVise à résoudre #861 .