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

Designer Discussion :

Comment créer une condition Max(Date)


Sujet :

Designer

  1. #1
    Futur Membre du Club
    Inscrit en
    Septembre 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 17
    Points : 9
    Points
    9
    Par défaut Comment créer une condition Max(Date)
    Bonjour,

    J'ai dans mon univers un objet Date de Validation, on peux avoir des prix differents selon la date de validation. j'aimerai creer un rapport qui me donne les articles avec que le dernier prix valide donc le prix de la derniere date de validation. j'ai essayé de faire max(date) directement dans le rapport j'ai toujours plusieurs date et prix pour mon article car l'agregation se fait ici ligne par ligne. alors j'aimerai mettre un filtre dans ma requête pour avoir que le prix du dernier jour de validité.
    j'ai créer un objet dernière Date de validité en faisant max(@Select(Entête tarif\Date Statut Validation))

    comment creer une condition sur la derniére date de validité?

    Merci d'avannce pour votre aide.

  2. #2
    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 : 42
    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,

    Selon le logiciel que tu utilises : DeskI ou WebI et la version de celui-ci, tu as la possibilité de réaliser un calcul dans les conditions de requêtes directement dans ton document.

    Dans ton cas, il faudra placer une condition sur "Date_validite", choisir l'opérande "Egal à" et ensuite choisir l'opérateur "Calcul". De là, tu auras plusieurs pages où tu pourras préciser les règles de calcul, et notamment choisir de ne ramener que les lignes correspondant à la dernière date de validité ou aux dernières dates de validité en fonction d'un autre élément.

  3. #3
    Futur Membre du Club
    Inscrit en
    Septembre 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par TomDuBouchon Voir le message
    Bonjour,

    Selon le logiciel que tu utilises : DeskI ou WebI et la version de celui-ci, tu as la possibilité de réaliser un calcul dans les conditions de requêtes directement dans ton document.

    Dans ton cas, il faudra placer une condition sur "Date_validite", choisir l'opérande "Egal à" et ensuite choisir l'opérateur "Calcul". De là, tu auras plusieurs pages où tu pourras préciser les règles de calcul, et notamment choisir de ne ramener que les lignes correspondant à la dernière date de validité ou aux dernières dates de validité en fonction d'un autre élément.
    j'utilise WebI version XIR2 et dans le volet Filtre de ma requête quand je place une condition sur mon objet et que je choisir l'opérateur, j'ai que quatre possibilité à savoir (Constante, valeur de la liste, invite et objet) j'ai pas calcul. Raison pour laquelle je voulais placer ma condition dan mon univers.

  4. #4
    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 : 42
    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
    OK, le problème de ce que tu as commencé sur ton univers c'est que lorsque BO parcourra les résultats ligne par ligne, le Max(Date_validité) sera égal à Date_validité.

    Donc, la seule solution que je vois à priori, (sans action sur la BDD) c'est de créer une table dérivée ramenant les éléments que tu souhaites et les dernières dates de validités correspondantes.
    Tu pourras ensuite créer une jointure entre cette table dérivée et la table originelle (avec absolument un lien entre le max(date_validite) et date_validite). Et après créer un objet basé sur la table dérivée.

    Enfin, dans ta requête, il faudra appel à cet objet dans les objets du résultat ou dans les conditions pour que les résultats soient filtrés sur les dernières dates de validité.

  5. #5
    Futur Membre du Club
    Inscrit en
    Septembre 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par TomDuBouchon Voir le message
    OK, le problème de ce que tu as commencé sur ton univers c'est que lorsque BO parcourra les résultats ligne par ligne, le Max(Date_validité) sera égal à Date_validité.

    Donc, la seule solution que je vois à priori, (sans action sur la BDD) c'est de créer une table dérivée ramenant les éléments que tu souhaites et les dernières dates de validités correspondantes.
    Tu pourras ensuite créer une jointure entre cette table dérivée et la table originelle (avec absolument un lien entre le max(date_validite) et date_validite). Et après créer un objet basé sur la table dérivée.

    Enfin, dans ta requête, il faudra appel à cet objet dans les objets du résultat ou dans les conditions pour que les résultats soient filtrés sur les dernières dates de validité.
    Ma Date de validité vient d'une table dérivée de mon univers, est ce que je peux ajouter un champ max(Date_validit) as "derniere date validité" dans cette table derivée pour résoudre le problème.

  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 : 42
    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
    Oui, tout à fait. J'étais parti du principe que tu avais une table native, mais effectivement c'est encore mieux comme ça.

    Il ne te restera plus qu'à créer l'objet correspondant et dans ta requête créer une condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Date validité Egal à (Objet) Max Date Validité

  7. #7
    Futur Membre du Club
    Inscrit en
    Septembre 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par TomDuBouchon Voir le message
    Oui, tout à fait. J'étais parti du principe que tu avais une table native, mais effectivement c'est encore mieux comme ça.

    Il ne te restera plus qu'à créer l'objet correspondant et dans ta requête créer une condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Date validité Egal à (Objet) Max Date Validité
    Merci pour ton aide!

Discussions similaires

  1. Comment créer une liste de dates non consécutives
    Par Mayouhou dans le forum Excel
    Réponses: 2
    Dernier message: 13/12/2011, 21h46
  2. Réponses: 30
    Dernier message: 30/05/2009, 19h49
  3. Comment créer une double condition
    Par PPLILH2008 dans le forum Excel
    Réponses: 5
    Dernier message: 24/06/2008, 15h07
  4. Comment créer une condition
    Par pierrot10 dans le forum ASP
    Réponses: 4
    Dernier message: 28/11/2005, 12h49

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