Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Business Objects > Designer
Designer Forum d'entraide Designer (création d'univers, etc.)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/08/2011, 15h45   #1
Candidat au titre de Membre du Club
 
Homme Samuel
Développeur décisionnel
Inscription : octobre 2007
Messages : 54
Détails du profil
Informations personnelles :
Nom : Homme Samuel
Localisation : France

Informations professionnelles :
Activité : Développeur décisionnel
Secteur : Service public

Informations forums :
Inscription : octobre 2007
Messages : 54
Points : 14
Points : 14
Par défaut Trouver le nombre de jour entre 2 dates en invite

Bonjour,

Je travaille sous Designer BO XIV3 et je dois trouver le nombre de jour entre deux dates à savoir :
Proposer 1 première invite : "Date de début" puis une deuxième "Date de fin"
et en déduire le nombre de jour qui me servira par la suite de base dans le cacul d'un ratio.

J'ai créé 3 objets définis ainsi :
- Objet type dimension format "date" intitulé "Date de debut" avec dans select : "date_activite" (colonne de ma table source) et dans la clause where : date_activite = @Prompt('Date de debut :','D',,,)
- Objet type dimension format "date" intitulé "Date de fin" avec dans select : "date_activite" (colonne de ma table source) et dans la clause where : date_activite = @Prompt('Date de FIN :','D',,,)
- un dernier objet type indicateur "Nb jours" avec dans select : to_number(@Select(DATE AGENTS\Date de fin) - @Select(DATE AGENTS\Date de debut))

Mais cela ne me retourne rien dans la création d'un rapport.

Je suppose que mon raisonnement n'est pas correct voir irréalisable !

Merci pour votre aide.
samy37 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 15h48   #2
Membre chevronné
 
Avatar de NorocBzh
 
Homme
Développeur décisionnel
Inscription : juin 2008
Messages : 510
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 26
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur décisionnel
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 510
Points : 694
Points : 694
Salut,

En XI 3, tu as la fonction "JourEntre(DateDeb, DateFin)" qui correspond à ton besoin

[EDIT] Ne pas tenir compte de ce que j'ai dit, je n'avais pas vu qu'on était dans la partie Designer ...
NorocBzh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 16h15   #3
Responsable Business Intelligence
 
Avatar de TomDuBouchon
 
Homme Thomas Cochin
Consultant en Business Intelligence
Inscription : juin 2009
Messages : 3 281
Détails du profil
Informations personnelles :
Nom : Homme Thomas Cochin
Âge : 29
Localisation : France, Seine et Marne (Île de France)

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

Informations forums :
Inscription : juin 2009
Messages : 3 281
Points : 5 703
Points : 5 703
Bonjour,

Effectivement il y a un problème dans la création de tes invites déjà.
En effet, il faut faire très attention à la notion de WHERE dans les objets car les objets sur lesquelles elles portent seront filtrés en conséquence.

Pour être plus clair, si je suis ce que tu as créé :
Dans le rapport, je saisis "01/01/2011" dans "Date de Début" et "31/01/2011" dans "Date de Fin".
BO le traduit en "récupère toutes les lignes dont la date activité est égale à "01/01/2011" ET égale à "31/01/2011"".
Ce qui forcément pose problème

Le but étant, j'imagine, de récupérer toutes les lignes entre le "01/01/2011" et le "31/01/2011", tu as deux possibilités :
- Tout créer dans un seul objet "Filtre Dates Activité" par exemple
- Créer deux objets "Date de Début" et "Date de Fin".

Dans le premier cas :
Objet de type Date, "Date Activité" dans le SELECT et avec la formule suivante dans le WHERE:
Code :
date_activite BETWEEN @Prompt('Date de debut :','D',,,) AND @Prompt('Date de fin :','D',,,)
On peut créer cela en tant qu'objet, mais à mon sens il vaut mieux le créer en tant que Filtre (sans SELECT donc) et ramener l'objet "Date Activite" "classique" si on le désire.

dans le deuxième cas :
Créer deux objets "Date de Début" et "Date de Fin" avec respectivement les formules suivantes dans le SELECT (sans clause WHERE) :
Code :
@Prompt('Date de debut :','D',,,)
Code :
@Prompt('Date de fin :','D',,,)
C'est ensuite dans le rapport qu'il faudra créer une condition sur l'objet Date_Activité précisant qu'elle doit être bornée entre l'objet "Date de Début" et l'objet "Date de Fin".

Chaque méthode a son intérêt :
- La première permet de créer un filtre qui limitera automatiquement les lignes ramenées en ne plaçant qu'un objet filtre dans les conditions du rapport.
- La deuxième permet de se servir de ces deux objets pour d'autres cas de figure.

Enfin, pour ton nombre de jours, tout dépend de ton SGBD, mais en l'occurrence ta formule pourrait fonctionner. Actuellement ce n'est pas le cas car tes deux objets de base sont faux.
__________________
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
Vous souhaitez contribuer à la rubrique BI ? Contactez-moi ou un autre responsable de l'équipe BI par MP.
TomDuBouchon est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/08/2011, 13h34   #4
Candidat au titre de Membre du Club
 
Homme Samuel
Développeur décisionnel
Inscription : octobre 2007
Messages : 54
Détails du profil
Informations personnelles :
Nom : Homme Samuel
Localisation : France

Informations professionnelles :
Activité : Développeur décisionnel
Secteur : Service public

Informations forums :
Inscription : octobre 2007
Messages : 54
Points : 14
Points : 14
Bonjour,

Merci pour tes éléments de réponses qui m'ont permis de résoudre mon problème.
samy37 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h37.


 
 
 
 
Partenaires

Hébergement Web