presentation module hr et la gestion de la paie marocaine
TRANSCRIPT
Gestion des ressources humaines Réalisé par :
* Sanaa Slimane * Hassan Wahsiss
01/06/2015
Questions de la présentation précédente
01/05/2023 3
OCA (Odoo Community Association) :
◦ Soutenir le développement collaboratif des caractéristiques d’Odoo.
◦ Pour ajouter/modifier un module dans la branche OCA :
Réalisation de l’ajout ou la modification dans une branche de modification, Proposition d’intégration sur la branche OCA, S’il y a une approbation de la part d’ au moins de 2 personnes et que
personne n’a formulé d’objection valable, Fusionnement de la branche de développement dans la branche OCA
Migration des modules
01/05/2023 4
Les types des modules :
◦ Les modules officiels de l'éditeur : disponibles dans la branche Launchpad lp:openobject-addons
◦ Les modules OCA : disponibles dans les branches Launchpad gérés par OCA
◦ Les autres modules communautaires : qui ne sont pas maintenus par OCA
Migration des modules
01/05/2023 5
Migration des modules standards : (moins d’une semaine)
◦ Avoir un contrat de l’Entreprise Odoo https://migration.odoo.comOu ◦ Utiliser Openupgrade
Migration des modules spécifiques : (plus d’un mois)
◦ Modifier quelques instructions du code source,
◦ Adapter à la structure de la vue de la nouvelle version.
Migration des modules
01/05/2023 6
ORM (Object-Relational Mapping) :
◦ Technique de programmation informatique qui permet d’avoir une couche d’abstraction par rapport à la BD,
◦ Il crée l'illusion d'une base de données orientée objet à partir d'une base de données relationnelle
◦ Il gère les droits d'accès, les traductions et évite d'avoir à écrire le code SQL dans lequel il faut refaire toutes les relations entre les tables avec des JOIN.
Intégration d’Odoo avec les BD
01/05/2023 7
L'ORM d'OpenERP ne fonctionne qu'avec PostgreSQL et beaucoup de requêtes SQL dans les modules utilisent le dialecte PostgreSQL.
Même si l'éditeur avait ajouté à une époque dans une branche de test le support de MySQL (dans le cadre d'un partenariat avec Sun Microsystem) mais cette branche n'a jamais été fusionnée avec la branche officielle
Intégration d’Odoo avec les BD
01/05/2023 8
Gestion des RH dans Odoo
Gestion de la paie marocaine
Inconvénients de l’existant et le besoin
Exemple d’un module de la gestion de paie marocaine
Idée sur la méthode de résolution
Plan :
Gestion des RH dans Odoo
01/05/2023 10
Gestion des RH dans Odoo
Gestion des
RH
Gestion administrative des employés
Recrutement
Formations
Notes de frais
Evaluations
Organigramme
Demandes administratives
Suivi des prestations
Intégration Paie
Tableaux de bord
01/05/2023 11
Gestion de feuilles de présence :
Le module de gestion de feuilles de présence, hr_timsheet, sous Odoo permet de saisir et de vérifier le temps consacré par les employés sur un projet ou une activité particulière.
Ce module est entièrement personnalisé, il donne plusieurs aperçus (par jour, par semaine, …)
Gestion des RH dans Odoo
01/05/2023 12
Gestion des RH dans OdooRessources humaines > Gestion du temps > Ma feuille de présence actuelle
01/05/2023 13
Gestion de congé:
Pour gérer les congés pris par les employés, on utilise le module hr_holidays
Gestion des RH dans Odoo
01/05/2023 14
Gestion des RH dans OdooRessources humaines > Congés > demande de congé
01/05/2023 15
Gestion de congé:
• Les demandes de congés peuvent être enregistrées par les employés et validées par leur responsable.
• Une fois la demande du congé est validée, elle apparait automatiquement dans l’agenda de l’employé. D’une autre coté, les responsables peuvent déterminer, au préalable, les différents types de congés (congés payés, maladie, …) et gérer les allocations par type.
• Un employé peut demander aux responsables de lui attribuer plus de jours de congés en faisant une nouvelle demande d’attribution.
Gestion des RH dans Odoo
01/05/2023 16
Gestion des RH dans OdooRessources humaines> congés > demande d’attribution
01/05/2023 17
Ressources humaines > Configuration > Types de congés
Gestion des RH dans Odoo
01/05/2023 18
Gestion de recrutement:
Le recrutement est une opération concordance entre un poste et un candidat : c’est-à-dire assurer la meilleure adéquation entre les compétences et les besoins de la société.
Pour créer un poste pour le recrutement, on va au menu Ressources humaines > recrutement > job position
Gestion des RH dans Odoo
01/05/2023 19
Gestion des RH dans Odoo
Interface de création de poste
01/05/2023 20
Pour créer une candidature, on va au menu suivant: Ressources humaines> recrutement > candidature
Gestion des RH dans Odoo
01/05/2023 21
Tableau de bord ( vue kanban ) pour gérer les offres d’emploi
Gestion des RH dans Odoo
01/05/2023 22
Tableau de bord pour gérer les candidatures
Gestion des RH dans Odoo
01/05/2023 23
Gestion des dépenses:
Odoo permet de gérer les dépenses quotidiennes des employés. Que se soient les frais de déplacement ou tous autres frais, il permet d'accéder aux notes de frais des employés et il donne le droit de compléter et de valider ou de refuser ces notes. Après validation, on peut crée une facture pour l'employé.
Gestion des RH dans Odoo
01/05/2023 24
Pour ajouter un type de dépense: Ressources humaines> configuration> type de dépense
Gestion des RH dans Odoo
01/05/2023 25
Ressources humaines> notes de frais> notes de frais
Gestion des RH dans Odoo
01/05/2023 26
Gestion des RH dans Odoo
01/05/2023 27
Gestion de la paie :
Le module de la paie hr_payroll comprend un moteur de paie générique, qui permet de calculer des bulletins des salaires. Vous pouvez gérer la paie de votre entreprise à l’aide de ce module.
Odoo propose les fonctionnalités suivantes pour un processus très efficace :
Règles salariales: sont utilisées pour calculer les données liées au calcul du salaire telles que les déductions, les primes …
Structure de salaire: permet de choisir l’ensemble des règles salariales qui vont entrer en jeu pour calculer les bulletins du salaire.
Gestion des RH dans Odoo
01/05/2023 28
Gestion des catégories de règles pour le salaire:
C’est un moyen pour regrouper les règles salariales selon des classes, par exemple : on peut créer une catégorie des primes, des déductions, des indemnités, … etc.
Gestion des RH dans Odoo
01/05/2023 29
Ressources humaines > Configuration > Paye > Catégories de règles pour le salaire
Gestion des RH dans Odoo
01/05/2023 30
Gestion des règles salariales:
Les règles de salaires définissent l’ensemble de données qui permettent le calcul de bulletins de paie.
Gestion des RH dans Odoo
01/05/2023 31
Gestion des RH dans OdooRessources humaines > Configuration > Paye > Règles salariales
01/05/2023 32
Gestion des RH dans Odoo Gestion des structures des salaires:
Ressources humaines > Configuration > Paye > Structure des salaires
01/05/2023 33
Gestion des contrats:
On doit définir un contrat pour chaque employé, ce contrat sera utilisé lors de la génération des bulletins de salaire.
Gestion des RH dans Odoo
01/05/2023 34
Gestion des RH dans OdooRessources humaines> Ressources humaines> contrat
01/05/2023 35
Gestion des RH dans Odoo Gestion des bulletins de l’employé:Ressources humaines > Paye > bulletin de l’employé
Inconvénients de l’existant et le besoin
01/05/2023 37
Malgré la présence d’un module hr_payroll destiné à gérer la paie au sein de l’entreprise, il s’avère que ce module tout seul ne peut pas répondre aux besoins des sociétés dans le monde entier, car chaque pays, voire chaque entreprise, a sa manière de gérer la paie.
Cela est dû à la différence:
Des lois et des législations entre les pays du monde entier Des rapports de paie et des déclarations De la manière dont il faut comptabiliser les salaires
Inconvénients de l’existant
01/05/2023 38
le vrai rôle du module hr_payroll c’est juste de créer la base sur laquelle chacun peut construire le modèle de paie qu’il lui convient. C’est pour cette raison qu’on trouve des pays qui ont déjà crée des modules de paie convenables à leurs lois de législations.
Inconvénients de l’existant
01/05/2023 39
Le besoin majeur est de créer un module pour gérer la paie pour le contexte marocain. Pour cela il faut:
Établir une étude détaillée, afin de comprendre la logique du métier de la paie
Créer toutes les règles salariales qui vont en pair avec la loi et les législations marocaines
Ajouter les différents champs et données qui manquent pour s’adapter au contexte marocain
Gérer les différents rapports et déclarations liés à la paie Permettre la comptabilisation de la paie
Besoin
Gestion de la paie marocaine
01/05/2023 41
Gestion de la paie marocaine
Totale des gains (salaire brut global)
Salaire de base
Heures supplémentaire
sPrimes
d’ancienneté
Indemnités
Avantages (nature+argent
)Allocations familiales
Total des retenues
Cotisations salariales
Impôt général sur le retenu
Avances et acomptes
Cessions de salaire
Oppositions
Autres retenues
Salaire net à payer
01/05/2023 42
Gestion de la paie marocaine Les éléments constitutifs du salaire :
Salaire de base :Salaire de base = Nombre d’heures normale * Taux horaire
normal Les heures supplémentaires :
Taux horaire supplémentaire = Taux horaire normal * (1 + Taux horaire de majoration)
Jours de travail habituels
Repos hebdomadaires et jours fériés
De 6:00 à 21:00 25% 50%De 21:00 à 6:00 50% 100%
01/05/2023 43
Gestion de la paie marocaine
Primes d’ancienneté :
Les indemnités :L’indemnité de résidence, indemnité de licenciement...etc.
Taux d’ancienneté ( % du salaire )
2 ans de travail 5%De 2 ans à 5 ans 10%De 5 ans à 12 ans 15%De 12 ans à 20 ans 20%Après 25 ans de travail 25%
01/05/2023 44
Gestion de la paie marocaine Les allocations familiales :
200 DH par mois pour chacun des trois premiers enfants 36 DH par mois pour chacun des trois suivants
Les avantages : En Argent : loyer du logement personnel, frais médicaux,
frais des séjours ...etc. En nature : (dépenses de domesticité, logement, dotations
en produits fabriqués par l'employeur...etc.
01/05/2023 45
Gestion de la paie marocaine
Les cotisations sociales salariales :
Les cotisations salariales de la CNSS :Cotisation salariale à la CNSS = 4,29 % * Salaire brut <= 6000 DH
Assurance maladie obligatoire (AMO) :Cotisation salariale d’AMO = 2% * Salaire brut
Les cotisations salariales à la CIMR :Cotisation salariale à la CIMR = entre (3% et 6%) * Salaire brut
imposable
01/05/2023 46
Gestion de la paie marocaine Les charges patronales :
Les cotisations patronales de la CNSS :
Cotisations pour la couverture des allocations familiales = 7,5 % * Salaire brut
Cotisations pour la couverture des prestations sociales = 8,6 % * Salaire brut <= 6000
Participation au financement de la formation professionnelle = 1,6 % * Masse salariale brut
01/05/2023 47
Gestion de la paie marocaine Les charges patronales :
Les cotisations patronales de l’AMO :
Assurance Maladie Obligatoire (AMO) = 2 % * Salaire brutCotisation de solidarité (AMO) = 1,5 % * Salaire brut
Les cotisations patronales à la CIMR :
Cotisation patronale de CIMR = 1,3 * Taux de cotisation salariale de CIMR * salaire brut imposable
Les cotisations patronales à d’autres organismes
01/05/2023 48
Gestion de la paie marocaine L’impôt général sur le revenu :
Détermination du salaire brut (SB)
salaire de base, primes, indemnités et avantages...etc.
Détermination du salaire imposable (SBI) SBI = SB – Exonérations
Détermination du salaire net imposable (SNI) SNI = SBI - Déductions
Calcul de l’IR brut IR (brut) = (SNI * Taux) – (Somme à déduire)
Calcul de l’IR net IR (net) = IR (brut) – Déductions pour charges familiales
01/05/2023 49
Gestion de la paie marocaine Calcul de l’IR brut :
IR (brut) = (SNI * Taux) – (Somme à déduire)
Tranche de revenu mensuel (DHS)
Taux Somme à déduire
De 0 à 2500 0% 0,00De 2005 à 4166,67 10% 250,00De 4166,67 à 5000 20% 666,67De 5000 à 6666,67 30% 1166,67De 6666,67 à 15000 34% 1433,33Au-delà de 15000 38% 2033,33
Exemple de la gestion de la paie marocaine
01/05/2023 51
Exemple d’un module de gestion de la paie marocaine
01/05/2023 52
Exemple d’un module de gestion de la paie marocaine
01/05/2023 53
Exemple d’un module de gestion de la paie marocaine
01/05/2023 54
Exemple d’un module de gestion de la paie marocaine
01/05/2023 55
Exemple d’un module de gestion de la paie marocaine
01/05/2023 56
Exemple d’un module de gestion de la paie marocaine
01/05/2023 57
Idée sur la méthode de résolution
On devrait développer un module qui va étendre les fonctionnalités du module de ressources humaines, sans toucher au module standard, ceci doit être fait par héritage parce que les vues existantes devraient être modifiées à travers des vues héritées, jamais directement.
01/05/2023 58
Idée sur la méthode de résolution
Création d’un nouveau module (Odoo\openerp\addons)
• Hérite d’un autre module
Ajouter des fichiers nécessaires• Fichiers .py et .xml
Mise à jour des modules dans l’interface Odoo
Installer le nouveau module
01/05/2023 59
Idée sur la méthode de résolution Fichiers obligatoires :
◦ __init__.py : Initialisation du package Python
Charger le nouveau module
import nouveau_module
01/05/2023 60
Idée sur la méthode de résolution Fichiers obligatoires :
◦ __openerp__.py : La fiche descriptive du module• name : le nom de votre module ;• version : la version du module ;• category : la catégorie dans laquelle vous classez votre module ;• sequence : le un nombre qui permet de définir l’ordre de votre module dans la liste des modules. • author : l'auteur du module ;• description : la description complète du module ;• depends : les dépendances votre module ;• data : les fichiers à charger ;• installable : si votre module est installable ou non ;• auto_install : laissez à False, nous l'installerons à la main.
01/05/2023 61
Idée sur la méthode de résolution Fichiers obligatoires :
◦ Nouveau_module.py : Les classes Python, les objets du module
from openerp.osv import fields, osv
class hr_employee_ma(osv.osv):_inherit = 'hr.employee‘_columns = {
'CIN': fields.char('CIN'),}
01/05/2023 62
Idée sur la méthode de résolution Fichiers obligatoires :
◦ Nouveau_module_view.xml : Les vues (Formulaires, listes, graph,…), menus et actions
<record id="hr_employee_form__test_payroll_for" model="ir.ui.view"><field name="name">hr.employee.inherit.form</field><field name="model">hr.employee</field><field name="inherit_id" ref="hr.view_employee_form"/><field name="priority">30</field><field name="arch" type="xml"><data>
<xpath expr="//field[@name='country_id']" position="before"><field name="CIN" eval="False"/>
</xpath></data></field>
</record>
Merci de votre attention