IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Deski Discussion :

Calcul du nombre de jours d'absence par mois


Sujet :

Deski

  1. #1
    Membre actif
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Avril 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 200
    Points : 217
    Points
    217
    Par défaut Calcul du nombre de jours d'absence par mois
    Bonjour à tous

    Je travaille sous BO 6.5 sur un univers absence. Actuellement, je réalise tous en début de chaque mois une requête qui me calcule le nombre de jours d'absence suivant le type d'arrêt de travail (maladie, longue maladie, accident du travail) par agent. Vu que les arrêts de travail arrive régulièrement en retard, ma requête n'est donc plus juste à la fin du mois.
    Aussi, il faudrait que je réactualise mes tableaux de bord mensuel en faisant cette fois une requête sur l'année avec précision pour chaque agent et pour chaque type d'arrêt, du nombre de jours d'absences par mois.

    Je dispose des objets suivants :
    matricule (dimension)
    nom et prénom (dimensions)
    arrêt de travail (information)
    date début arrêt de travail et date fin arrêt de travail (dimensions)
    date début arrêt sur période (dimension)
    date fin arrêt sur période (dimension)
    durée arrêt sur période (indicateur) dont la formule est : =<Durée de l'arrêt sur période> Dans (<Identifiant de l'agent>, <Nom usuel de l'agent>, <Prénom de l'agent>, <Arrêt de travail (libellé)>, <Date de début d'arrêt>, <Date de fin d'arrêt>, <Date de début d'arrêt sur période>, <Date de fin d'arrêt sur période>)

    Je précise que je n'ai pas accès au designer et que je n'ai pas d'objet calendrier.

    Lorsque je lance ma requête, il me demande la période de calcul, soit ici du 01/01/2012 au 31/12/2012.
    les objets date début arrêt sur période et date fin arrêt sur période permettent en fait de calculer le nombre de jours d'absence par rapport à la date réelle de l'arrêt et la date de fin et suivant la période de calcul choisie.
    Je pourrais créer une feuille Excel avec un calendrier et faire ensuite une sorte de fusion mais je ne sais pas trop comment faire et ensuite quelle formule de calcul mettre en place pour avoir le nombre de jours par mois.

    Aujourd'hui pour régler mon problème, je dois réaliser 12 fois la requête, donc une pour chaque mois afin d'avoir les infos pour réactualiser mes tableaux de bord. Donc c'est assez long et fastidieux.
    Avez vous une solution pour régler mon problème ou c'est une usine à gaz.
    J'espère avoir été suffisamment clair pour éclairer tout le monde.
    En espérant une solution.
    Je vous en remercie par avance.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 364
    Points : 551
    Points
    551
    Par défaut
    Bonjour Gwena2b,

    Si ma mémoire est bonne nous avons déjà échangé sur un sujet voisin.

    Je crois me souvenir que tu travailles dans un hôpital (excuse moi si je suis indiscret). Si c'est le cas, comment calcule-t-on les jours d'absence quand les jours de repos ne sont pas les jours ouvrés et que chacun n'a pas les mêmes. Ta question n'est pas simple mais pourra être insoluble si on n'a pas de règle claires concernant les jours de repos.

    Dans l'attente de te lire.

    Cordialement,

  3. #3
    Membre actif
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Avril 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 200
    Points : 217
    Points
    217
    Par défaut
    Salut Dira

    Quelle mémoire. Effectivement; nous avions déja échangée sur un sujet lié à l'absentéisme. Et non je ne travaille pas pour un hôpital mais pour un conseil général.
    Je réalise tous les mois une requête sur l'absentéisme des agents afin d'avoir par direction le nombre de jours de maladie pour chaque type d'arrêt (maladie ordinaire, longue maladie, accident du travail) et je fais mes tableaux de bord avec les résultats (1 par mois). Cependant certains agents mettent du temps pour nous envoyer leurs arrêts, donc mes tableaux ne sont jamais vraiment à jour. Aussi, je voudrais en fin d'année faire une requete générale qui me permette d'avoir pour chaque mois les jours de maladie, au lieu de relancer ma requete 12 fois en changeant a chaque fois la période de calcul.
    Les jours de maladie sont calculés en calendaires et en fonction des objets cités dans mon premier post. BO fait la différence entre la date de début et la date de fin de l'arrêt pour trouver le nombre de jours et fonction bien sur de la période de calcul (si la date de fin de l'arrêt se situe après la date de fin de la période de calcul, BO prendra la date de fin de la période de calcul pour calculer le nombre de jours)
    Bon si c'est une usine a gaz , laisse tomber mais merci quand même.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 364
    Points : 551
    Points
    551
    Par défaut
    Bonjour,

    Si les agents sont tous soumis au même régime Week end et jours fériés. Alors on devrait pouvoir y arriver.

    J'ai eu une demande similaire par ailleurs (sur une XI3) donc la question m'intéresse. Il faut juste que je dégage un jour ou 2 pour me pencher sur le sujet mais ce sera certainement une usine à gaz.

    A bientôt,

  5. #5
    Membre actif
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Avril 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 200
    Points : 217
    Points
    217
    Par défaut
    Salut dira

    Si c'est une usine à gaz, laisse tomber. Je pensais qu'avec une formule de calcul spécifique , on pouvait régler le problème.
    Je prendrais un peu plus de temps et lancerais la requete plusieurs fois.
    Merci en tout cas de ton intérêt.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    Bonjour,
    Pratiquant les mêmes stats, avec visiblement les mêmes contraintes, j'ai résolu ce problème en créant 12 variables.
    Je fais la requête sur l'année complète, mais je renseigne 12 colonnes (de janvier à décembre).
    Pour renseigner ces colonnes, j'ai créé une variables par mois, dans chaque variable, pour chaque absence, je ne retiens que le nombre de jours d'absences du mois considéré.
    Ainsi le total de mes 12 variables est égale au total annuel.
    Voilà pour ma méthode.

  7. #7
    Membre actif
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Avril 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 200
    Points : 217
    Points
    217
    Par défaut
    Salut Monjarno

    Intéressant !
    Peux tu me donner un exemple de tes variables. As tu créer une formule spécifique ?
    Exemple : j'ai un arrêt qui debute le 1er janvier 2012 et qui finit le 15 mars 2012.
    Comment sont créées tes variables janvier février et mars en lançant ta requête du 1er janvier au 31 mars 2012 par exemple.
    Merci pour tes précisions

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    Bonjour gwena2b,

    Voici un exemple brut de ma variable de février

    =Si (JoursEntre(Si[Date début absence]< EnDate(("01/02/"+[Année]);"dd/MM/yyyy") Alors EnDate(("01/02/"+[Année]);"dd/MM/yyyy") Sinon [Date début absence];Si[Date fin absence]> EnDate(("28/02/"+[Année]);"dd/MM/yyyy") Alors EnDate(("28/02/"+[Année]);"dd/MM/yyyy") Sinon[Date fin absence])+1)> 0 Alors (JoursEntre(Si[Date début absence]< EnDate(("01/02/"+[Année]);"dd/MM/yyyy") Alors EnDate(("01/02/"+[Année]);"dd/MM/yyyy") Sinon [Date début absence];Si[Date fin absence]> EnDate(("28/02/"+[Année]);"dd/MM/yyyy") Alors EnDate(("28/02/"+[Année]);"dd/MM/yyyy") Sinon[Date fin absence])+1) Sinon 0


    et maintenant une lecture plus lisible

    Pour calculer le nombre de jours d'absences à retenir pour le mois
    - je teste si l'arrêt débute avant le début du mois, si c'est le cas alors je prends le premier jour du mois, sinon je conserve la date du début de l'arrêt
    - je teste si l'arrêt termine après le dernier jour du mois, si c'est le cas alors je retiens le dernier jour du mois, sinon je conserve la date de fin de l'arrêt
    - ensuite je teste que la différence entre ces deux dates est bien supérieure à 0 (logique !!!, mais sans ce test la formule calcule des valeurs négatives pour des arrêts impactants d'autres mois que le mois concerné), si la différence entre la date retenue pour le début de l'arrêt et la date retenue pour la fin de l'arrêt est positive je fais la différence entre ces 2 dates.

    Dans ton exemple, j'obtiens 31 jours pour ma variable de janvier, 28 jours pour février et 15 pour mars.

    J'utilise une variable [Année] au format texte que je modifie chaque année, juste pour éviter de corriger les 12 formules.

    Je lance systématiquement la requête du 1er janvier au 31 décembre, ça me permet d'avoir un réajustement lorsque la maladie ordinaire est requalifiée en CLM par exemple ou de mettre à jour les chiffres lorsque les arrêts arrivent tardivement. Seul "inconvénient" les mois à venir font déjà apparaître des jours d'absences pour les CLM et cLD, ce qui étonne au premier abord.

    Voilà

  9. #9
    Membre actif
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Avril 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 200
    Points : 217
    Points
    217
    Par défaut
    Salut Monjarno

    Au top ton idée.
    Je vais mettre ça en place dés que j'ai le temps et te tiens au courant si j'ai besoin d'infos supplémentaires ou si cela coince quelque part.
    En tout cas chapeau !
    Merci beaucoup de ta collaboration.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VxiR2] Calcul du nombre de jours par mois entre deux date
    Par trabelsi dans le forum Designer
    Réponses: 4
    Dernier message: 02/10/2017, 15h17
  2. Calcul du nombre de jours consecutifs d'absence
    Par alain54 dans le forum Excel
    Réponses: 7
    Dernier message: 24/02/2014, 16h05
  3. Récupérer jours d'absences par mois
    Par Invité dans le forum Requêtes
    Réponses: 1
    Dernier message: 24/04/2011, 06h22
  4. [AC-2007] Calcul du nombre de jours par mois entre deux dates
    Par arouxy dans le forum VBA Access
    Réponses: 2
    Dernier message: 18/01/2010, 08h34
  5. Réponses: 6
    Dernier message: 12/01/2008, 18h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo