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

Webi Discussion :

ajouter un nombre de mois à une date


Sujet :

Webi

  1. #1
    Membre averti Avatar de PAYASS59
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2005
    Messages : 755
    Points : 324
    Points
    324
    Par défaut ajouter un nombre de mois à une date
    Bonjour,


    Je voudrais savoir si c'est possible et comment faire pour créer une variable qui ajouterait un nombre de mois à une date.

    Exemple :

    J'ai 2 colonnes date et mois :

    01/01/2010 6
    01/04/2010 3


    Je voudrais que ma variable me retourne

    01/07/2010
    01/08/2010


    Merci d'avance pour vos réponses
    Je préfère ma soif d'apprendre, à leurs certitudes de savoir....

  2. #2
    Membre expérimenté
    Avatar de Julien59
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    1 142
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 142
    Points : 1 458
    Points
    1 458
    Par défaut
    Je pars de plusieurs hypothèses :
    - tu as accès au Designer
    - tu es sur Oracle

    Dans ce cas tu crées un nouvel objet à partir de tes objets date et mois :

    add_months(date,mois)

    Après tu l'insères dans ton rapport.

    Bon courage
    • Pensez à consulter la FAQ BO
    • Quand votre problème est solutionné, n'oubliez pas de cliquer sur le bouton

  3. #3
    Membre averti Avatar de PAYASS59
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2005
    Messages : 755
    Points : 324
    Points
    324
    Par défaut
    merci pour la réponse.

    je suis bien sur oracle mais je n'ai pas accès au designer........
    Je préfère ma soif d'apprendre, à leurs certitudes de savoir....

  4. #4
    Membre averti Avatar de PAYASS59
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2005
    Messages : 755
    Points : 324
    Points
    324
    Par défaut
    Bonjour,

    Je me permets de revenir vers vouspour savoir s'il n'y avait pas une autre solution que de passer par le designer.

    merci
    Je préfère ma soif d'apprendre, à leurs certitudes de savoir....

  5. #5
    Membre averti Avatar de PAYASS59
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2005
    Messages : 755
    Points : 324
    Points
    324
    Par défaut
    Bonjour,

    JE suis désolé d'insister comme ça mais je voudrai savoir s'il n'y a pas de possibilité de passer par la création d'une variable et non par le designer.

    merci d'avance
    Je préfère ma soif d'apprendre, à leurs certitudes de savoir....

  6. #6
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Points : 5 848
    Points
    5 848
    Par défaut
    Bonjour,

    Si il y a moyen, seulement la formule que je vais te donner est valable sur DeskI. Il faudra la modifier pour la "Webiser" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =EnDate(FormatDeNombre(NuméroDuJourDuMois(<TaDate>),"0")&"/"&FormatDeNombre(NuméroDuMoisDeAnnée(<TaDate>),"0")&"/"&FormatDeNombre(Année(<TaDate>),"0"),"jj/mm/aaaa")
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  7. #7
    Membre averti Avatar de PAYASS59
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2005
    Messages : 755
    Points : 324
    Points
    324
    Par défaut
    merci pour ta réponse :

    voilà ce que j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =EnDate(FormatDeNombre(NuméroDuJourDuMois(<CTR - Date renouvellement contrat>) ,"0")&"/"&FormatDeNombre(NuméroDuMoisDeAnnée(<CTR - Date renouvellement contrat>) ,"0")&"/"&FormatDeNombre(Année(<CTR - Date renouvellement contrat>) ,"0") ,"jj/mm/aaaa")
    mais je vois pas où et comment je peux rajouter ma variable contenant le nombre de jour à ajouter....e et même plus précisement un nombre de mois ...


    Si je remplace "0" au niveau du mois par par exemple 6 cela m'ajoute bien 6 mois à ma date de départ...mais s'il doit y avoir un changement d'année l'année ne change pas
    Je préfère ma soif d'apprendre, à leurs certitudes de savoir....

  8. #8
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Points : 5 848
    Points
    5 848
    Par défaut
    Oublies ce que j'ai dit... En plus tu risques d'avoir des problèmes si tu tombes sur les derniers jours de mois (31 vs 30 ou 28)

    Le mieux que tu puisses faire c'est d'utiliser la fonction DateRelative(<TaDate>,nbjours). Par contre, il faut indiquer un nombre de jours et pas un nombre de mois...
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  9. #9
    Membre expérimenté
    Avatar de Julien59
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    1 142
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 142
    Points : 1 458
    Points
    1 458
    Par défaut
    Je tente quelque chose mais je ne sais pas si ca passe... Je suppose que ta date est en dd/mm/yyyy , si le format est différent, il faudra adapter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    to_date(substring(date,1,2) + '/' + to_char(to_number(substring(date,4,2)) + <mois>) + '/' + substring(date,7,4),'dd/MM/yyyy')
    A adapter... l'idée est là, à voir si ca passe...

    Vivent les usines à gaz !!!
    • Pensez à consulter la FAQ BO
    • Quand votre problème est solutionné, n'oubliez pas de cliquer sur le bouton

  10. #10
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Points : 5 848
    Points
    5 848
    Par défaut
    Je pense que cette formule posera le même problème que celle que j'avais donné, sur les jours de fin de mois. Ex :
    31/01/2010 + 1 mois :
    to_date(
    substring(date,1,2) = "31"
    + '/' +
    to_char(to_number(substring(date,4,2)) + <mois>) = "2"
    + '/' +
    substring(date,7,4),'dd/MM/yyyy') = "2010"

    Résultat, puisqu'il n'y a que 28 jours en février, la fonction to_date va planter.
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  11. #11
    Membre averti Avatar de PAYASS59
    Homme Profil pro
    Inscrit en
    Février 2005
    Messages
    755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2005
    Messages : 755
    Points : 324
    Points
    324
    Par défaut
    Citation Envoyé par TomDuBouchon Voir le message
    Oublies ce que j'ai dit... En plus tu risques d'avoir des problèmes si tu tombes sur les derniers jours de mois (31 vs 30 ou 28)

    Le mieux que tu puisses faire c'est d'utiliser la fonction DateRelative(<TaDate>,nbjours). Par contre, il faut indiquer un nombre de jours et pas un nombre de mois...
    dans mon cas cela fonctionne très bien
    Je préfère ma soif d'apprendre, à leurs certitudes de savoir....

  12. #12
    Membre expérimenté
    Avatar de Julien59
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    1 142
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 142
    Points : 1 458
    Points
    1 458
    Par défaut
    Citation Envoyé par TomDuBouchon Voir le message
    Je pense que cette formule posera le même problème que celle que j'avais donné, sur les jours de fin de mois. Ex :
    31/01/2010 + 1 mois :
    to_date(
    substring(date,1,2) = "31"
    + '/' +
    to_char(to_number(substring(date,4,2)) + <mois>) = "2"
    + '/' +
    substring(date,7,4),'dd/MM/yyyy') = "2010"

    Résultat, puisqu'il n'y a que 28 jours en février, la fonction to_date va planter.
    En effet Tom, tu as raison... ca posera toujours un problème pour le dernier jour...
    L'accès au designer est tellement plus simple avec un Add_months...
    • Pensez à consulter la FAQ BO
    • Quand votre problème est solutionné, n'oubliez pas de cliquer sur le bouton

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

Discussions similaires

  1. [Toutes versions] Ajouter un nombre de semaines à une date
    Par chris_ij32 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 06/04/2011, 09h06
  2. ajouter nombre de mois à une date
    Par minooo dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 18/05/2010, 22h54
  3. ajouter un nombre de mois à une date
    Par mèmaton dans le forum WinDev
    Réponses: 7
    Dernier message: 22/04/2009, 11h30
  4. Ajouter un nombre de jour à une date
    Par thierry_b dans le forum Général Java
    Réponses: 6
    Dernier message: 10/12/2008, 15h19
  5. Réponses: 2
    Dernier message: 03/01/2006, 14h58

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