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

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Chargée d'études
    Inscrit en
    décembre 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargée d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : décembre 2018
    Messages : 1
    Points : 1
    Points
    1

    Par défaut Créer une variable mois et calcul entre 2 dates

    Bonjour,

    Dans mon univers, je dispose des objets dimension "Date de début de contrat" et "Date de fin de contrat" et de l'objet statistique "durée du contrat (jours)".

    J'interroge mes données sur l'année en historique et je récupère 1 ligne = 1 contrat. Bien sûr, certains contrats sont à cheval sur 2 mois.

    Je voudrais calculer le nombre de jours de contrat par mois sur l'année. Mais je n'arrive pas à créer une variable "mois". Est-ce possible dans la requête? Comment?

    Je précise que je n'ai pas accès au designer personnellement mais si besoin, je peux demander aux services informatiques.

    Par avance, un grand merci pour vos réponses!

  2. #2
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    décembre 2006
    Messages
    2 565
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : décembre 2006
    Messages : 2 565
    Points : 4 773
    Points
    4 773

    Par défaut

    Bonjour,

    La seule solution correcte est effectivement côté Designer dans lequel une table calendrier et une jointure de type DateCalendrier between DateDébut and DateFin peut permettre un calcul des durées par Mois.

    Le reste n'est que du bricolage long et fastidieux consistant à :
    Traduire en AnnéeMois la date de début et la date de fin pour tester leur positionnement vis à vis d'un mois donné.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MOISDEB =EnNombre(FormatDate([Date Deb];"yyyyMM"))
    MOISFIN =EnNombre(FormatDate([Date Fin];"yyyyMM"))
    Mettre au point pour Janvier (201801) les formules de calcul correspondant aux cas de figure suivants :

    Dates dans le mois 201801 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Si([MOISDEB]=201801 Et [MOISFIN]=201801) Alors JoursEntre([Date Deb];[Date Fin])
    Début avant 201801 et fin dans le mois 201801 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Si([MOISDEB]<201801 Et [MOISFIN]=201801) Alors JoursEntre(ALaDate("20180101";"yyyymmdd");[Date Fin])
    Début dans le mois 201801 fin après 201801 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Si([MOISDEB]=201801 Et [MOISFIN]>201801) Alors JoursEntre([Date Deb];DernierJourDuMois(ALaDate("20180101";"yyyyMMdd")))
    Début avant 201801 et fin après le mois 201801 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Si([MOISDEB]<201801 Et [MOISFIN]>201801) Alors JoursEntre(ALaDate("20180101";"yyyyMMdd");DernierJourDuMois(ALaDate("20180101";"yyyyMMdd")))
    Les 4 formules ci-dessus pouvant être combinées
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Si (condition 1) alors calcul1 SinonSi( condition 2) alors calcul2 SinonSi( condition 3)  etc...
    Le pire étant qu'il faudra faire ça 12 fois pour une année...
    Le jeu en vaut-il la peine ?
    Précisez la VERSION !
    Un message vous a aidé ? Votez en cliquant sur Pensez au bouton
    Tutoriels BO et FAQ BO
    "A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!"

Discussions similaires

  1. [C#] Comment créer une variable globale?
    Par FraktaL dans le forum Windows Forms
    Réponses: 8
    Dernier message: 10/05/2017, 15h10
  2. [Sécurité] Peut on créer une variable $_SERVER
    Par Cr@zyDeep dans le forum Sessions
    Réponses: 6
    Dernier message: 12/05/2006, 10h27
  3. Créer une variable varchar interne à une procédure stockée
    Par killysui dans le forum MS SQL-Server
    Réponses: 6
    Dernier message: 26/04/2006, 18h59
  4. Réponses: 8
    Dernier message: 06/02/2006, 17h38
  5. [JDOM] Créer une variable xml directement dans java
    Par Tigrounette dans le forum XML
    Réponses: 8
    Dernier message: 18/12/2005, 15h21

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