Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Business Objects > Deski
Deski Forum d'entraide Deski (client lourd)
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 08/11/2007, 16h13   #1
Membre régulier
 
Inscription : août 2006
Messages : 307
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : août 2006
Messages : 307
Points : 78
Points : 78
Par défaut Pb avec rapports

Salut,

Je souhaiterais creer un rapport qui affiche des donnes de ce genre.
Je travaille sur BO 5.0 et une Base de donnees SQL Server.

Code :
1
2
3
4
5
6
7
8
SELECT CasNo, dateadd(month, 1, DatePaiement), Valeur * 0.50
FROM PAIEMENT
UNION
SELECT CasNo, dateadd(month, 2, DatePaiement), Valeur * 0.30
FROM PAIEMENT
UNION
SELECT CasNo, dateadd(month, 3, DatePaiement), Valeur * 0.20
FROM PAIEMENT
Citation:
.................. DATE 1 ..... DATE 2 ...... DATE 3
CLIENT 1____50%______30%_______20%
CLIENT 2____50%______30%_______20%
CLIENT 3____50%______30%_______20%

Cette requete signifie qu'un client paie en 3x (50% apres 1 mois, 30% apres 2 mois, 20 % apres 3 mois) et je souhaiterai faire un rapport ou jaffiche tous les paiement des clients en ligne avec la date en en-tete.

Les dimensions ont ete crees avec succes avec les fonctions DATEADD, ...

Il m'est cependant impossible de cumuler les 3 UNION dans un rapport TOUT EN AJOUTANT UNE DIMENSION PAR MOIS ET PAR ANNEE au niveau des dates de paiement.

Avez vous une solution ?
Jai acces a tout...

MERCI DAVANCE

Mario
__________________
Pensez au tag !!!
LP-mpascolo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2007, 16h39   #2
Membre émérite
 
Avatar de Ayana
 
Inscription : décembre 2005
Messages : 901
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 901
Points : 900
Points : 900
Bonjour,

La date est-elle un objet valeur ou un objet dimension ??
As-tu créé une hiérarchie pour le dimension temps ? (Année>Mois>Date)
__________________
--= Ayana =--
Modératrice B.I.

Règles du forum BO

Team BAB - Spécialistes BO

Rubrique BI de developpez.com
Ayana est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2007, 17h15   #3
Membre émérite
 
Avatar de bastoonet
 
Inscription : septembre 2006
Messages : 815
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 815
Points : 843
Points : 843
donne nous un exemple concret (avec des valeurs) de ce que tu veux obtenir


-----------01/01/2007 -----01/02/2007------01/03/2007
MR brown----50€--------------30€-------------20€
Mr yellow----1000€------------300€------------200€

c'est ça que tu veux ? les dates sont elles identiques pour tous les clients ?
ou bien veux tu un echéancier....du genre

------------janv 2007------fév2007-------mars 2007--------avril2007
MR brown-----50€-----------30€-------------20€
Mr yellow------------------1000€-----------300€------------200€
bastoonet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2007, 17h26   #4
Membre régulier
 
Inscription : août 2006
Messages : 307
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : août 2006
Messages : 307
Points : 78
Points : 78
Citation:
Envoyé par bastoonet Voir le message
donne nous un exemple concret (avec des valeurs) de ce que tu veux obtenir


-----------01/01/2007 -----01/02/2007------01/03/2007
MR brown----50€--------------30€-------------20€
Mr yellow----1000€------------300€------------200€

c'est ça que tu veux ? les dates sont elles identiques pour tous les clients ?
ou bien veux tu un echéancier....du genre

------------janv 2007------fév2007-------mars 2007--------avril2007
MR brown-----50€-----------30€-------------20€
Mr yellow------------------1000€-----------300€------------200€
Ce serait plutot un echeancier car les dates ne sont pas identiques pour tous les clients...

Citation:
Envoyé par Ayana Voir le message
Bonjour,

La date est-elle un objet valeur ou un objet dimension ??
As-tu créé une hiérarchie pour le dimension temps ? (Année>Mois>Date)
La date est un objet dimension (carre bleu).
J-ai cree plusieurs informations (triangle vert) pour faire les dimension temps.

Pour faire plus simple... Voici ce que jai cree comme valeur :

__________________
Pensez au tag !!!
LP-mpascolo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2007, 07h59   #5
Rédacteur
 
Avatar de Bruno2r
 
Bruno ROMAN-RUIZ
Inscription : décembre 2006
Messages : 2 181
Détails du profil
Informations personnelles :
Nom : Bruno ROMAN-RUIZ
Âge : 57

Informations professionnelles :
Secteur : Santé

Informations forums :
Inscription : décembre 2006
Messages : 2 181
Points : 2 717
Points : 2 717
Salut Mario,
Citation:
et je souhaiterai faire un rapport ou jaffiche tous les paiement des clients en ligne avec la date en en-tete.
Suis d'accord avec bastoonet fais nous un exemple comme il a pris la peine de le faire pour qu'on saisisse bien le résultat attendu.

Avec la date en entête de quoi ?
  • entête de ligne,
  • entête de colonne,
  • entête de mule ?
(Ne pas tenir compte de la dernière proposition la fonction mule ne sera livrée qu'avec la version XXL2 de BO une fois racheté par SAP)
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO
"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!"
Bruno2r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2007, 09h13   #6
Membre régulier
 
Inscription : août 2006
Messages : 307
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : août 2006
Messages : 307
Points : 78
Points : 78
Ben ce serait son deuxieme exemple avec 50% du montant total pour le 1er paiement, 30% 2 mois apres et 20% 12 mois apres en realite mais ce serait bien que tous les mois s-affichent meme si personne paie :

-------------janv 2007-------fév 2007-------mars 2007--------avril2007-------[...]--------- janv 2008 ----------Fev 2008
MR Brown---- 50€ --------------------------- 30€ ----------------------------------------------- 20€
Mr Bruno2R------------------- 100€ ----------------------------- 60 € ---------------------------------------------- 40 €


Dailleurs, Bruno2R, noublie pas ton paiement de 40€ pour Fevrier 2008...

Et avec tout ca, serait til possible de choisir juste une annee, sans passer par l-editeur de requete ?
__________________
Pensez au tag !!!
LP-mpascolo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2007, 10h19   #7
Membre émérite
 
Avatar de Ayana
 
Inscription : décembre 2005
Messages : 901
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 901
Points : 900
Points : 900
Tu peux juste poser un filtre sur ton rapport (ton onglet).
__________________
--= Ayana =--
Modératrice B.I.

Règles du forum BO

Team BAB - Spécialistes BO

Rubrique BI de developpez.com
Ayana est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2007, 11h33   #8
Rédacteur
 
Avatar de Bruno2r
 
Bruno ROMAN-RUIZ
Inscription : décembre 2006
Messages : 2 181
Détails du profil
Informations personnelles :
Nom : Bruno ROMAN-RUIZ
Âge : 57

Informations professionnelles :
Secteur : Santé

Informations forums :
Inscription : décembre 2006
Messages : 2 181
Points : 2 717
Points : 2 717
Un peu de sql .... j'adore !

Bon dans mon code j'ai remplacé ta table par
T pour m'appuyer sur unexemple de données
et A comme Astuce où je stocke le nb de mois à ajouter et le % correspondant
Mon SQL sans jointure (c'est voulu) crée un produit cartésien (oui parfois c'est utile) qui applique à chaque ligne de T les règles de A

Mario j'ai eu un doute sur
date de début 50%
date de début +2 mois 30%
date de début +12 mois 20%
car dans ton univers on a +2 +3 +12
Enfin bon tu dois savoir ce que tu veux ...

Donc en se basant sur
Citation:
Ben ce serait son deuxieme exemple avec 50% du montant total pour le 1er paiement, 30% 2 mois apres et 20% 12
Il suffit de faire
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
SELECT T.CasNo, T.Client, T.Valeur, T.DatePaiement, 
to_char(ADD_MONTHS(T.DatePaiement, A.ADDM), 'YYYYMM') PERIODE, T.Valeur * A.TX AS MT
 
 
FROM (SELECT 0 AS ADDM, 0.5 AS TX FROM DUAL
UNION
SELECT 2 AS ADDM, 0.3 AS TX FROM DUAL
UNION
SELECT 12 AS ADDM, 0.2 AS TX FROM DUAL) A,
(SELECT 1 AS CasNo, 'LP_mpascolo' AS CLIENT, 
TO_DATE('02/01/2007', 'DD/MM/RRRR') AS DatePaiement, 
2000 AS Valeur FROM dual
UNION 
SELECT 2 AS CasNo, 'Mr BRUNO2R' , 
TO_DATE('18/02/2007', 'DD/MM/RRRR') , 
100 FROM dual 
UNION
SELECT 3 AS CasNo, 'Miss ayana' , 
TO_DATE('26/04/2007', 'DD/MM/RRRR') , 
400 FROM dual 
UNION
SELECT 4 AS CasNo, 'bastoonet' , 
TO_DATE('05/05/2007', 'DD/MM/RRRR') , 600 FROM dual ) T
oh magie ! magie ! on obtient
Code :
1
2
3
4
5
6
7
8
9
10
11
12
SELECT 0 AS ADDM, 0.5 AS TX FROM DUAL
UNION
SELECT 2 AS ADDM, 0.3 AS TX FROM DUAL
UNION
SELECT 12 AS ADDM, 0.2 AS TX FROM DUAL
ADDM TX
---------- ----------
0 0.5
2 0.3
12 0.2
3 rows selected
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SELECT 1 AS CasNo, 'LP_mpascolo' AS CLIENT, TO_DATE('02/01/2007', 'DD/MM/RRRR') 
UNION
SELECT 2 AS CasNo, 'Mr BRUNO2R' , TO_DATE('18/02/2007', 'DD/MM/RRRR') , 100 
UNION
SELECT 3 AS CasNo, 'Miss ayana' , TO_DATE('26/04/2007', 'DD/MM/RRRR') , 400 
UNION
SELECT 4 AS CasNo, 'bastoonet' , TO_DATE('05/05/2007', 'DD/MM/RRRR') , 600 F
CASNO CLIENT DATEPAIEMENT VALEUR
---------- ----------- ------------------- ----------
1 LP_mpascolo 02/01/2007 2000
2 Mr BRUNO2R 18/02/2007 100
3 Miss ayana 26/04/2007 400
4 bastoonet 05/05/2007 600
4 rows selected
ce qui donne
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
SQL Statement which produced this DATA:
  SELECT T.CasNo, T.Client, T.Valeur, DatePaiement, to_char(ADD_MONTHS(T.DatePaiement,A.ADDM), 'YYYYMM') PERIODE, T.Valeur * A.TX AS MT
  FROM 
   (SELECT 0 AS ADDM, 0.5 AS TX FROM DUAL
     UNION
     SELECT 2 AS ADDM, 0.3 AS TX FROM DUAL
     UNION
     SELECT 12 AS ADDM, 0.2 AS TX FROM DUAL) A,
 
   (SELECT 1 AS CasNo, 'LP_mpascolo' AS CLIENT, TO_DATE('02/01/2007', 'DD/MM/RRRR') AS DatePaiement, 2000 AS Valeur FROM dual
     UNION 
     SELECT 2 AS CasNo, 'Mr BRUNO2R' , TO_DATE('18/02/2007', 'DD/MM/RRRR') , 100  FROM dual 
     UNION
     SELECT 3 AS CasNo, 'Miss ayana' , TO_DATE('26/04/2007', 'DD/MM/RRRR') , 400  FROM dual 
     UNION
     SELECT 4 AS CasNo, 'bastoonet' , TO_DATE('05/05/2007', 'DD/MM/RRRR') , 600  FROM dual  ) T
CASNO CLIENT VALEUR DATEPAIEMENT PERIODE MT
1 LP_mpascolo 2000 02/01/2007 200701 1000
1 LP_mpascolo 2000 02/01/2007 200703 600
1 LP_mpascolo 2000 02/01/2007 200801 400
2 Mr BRUNO2R 100 18/02/2007 200702 50
2 Mr BRUNO2R 100 18/02/2007 200704 30
2 Mr BRUNO2R 100 18/02/2007 200802 20
3 Miss ayana 400 26/04/2007 200704 200
3 Miss ayana 400 26/04/2007 200706 120
3 Miss ayana 400 26/04/2007 200804 80
4 bastoonet 600 05/05/2007 200705 300
4 bastoonet 600 05/05/2007 200707 180
4 bastoonet 600 05/05/2007 200805 120

Avec un tableau croisé dans BO sur PERIODE c'est dans la poche !

Pour ce qui est des mois manquants je te laisse chercher un peu
En t'inspirant de ce que j'ai utilisé (produit cartésien) tu PEUX trouver.

PS : vous n'oublierez pas de payer vos cotisations les Amis ...
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO
"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!"
Bruno2r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2007, 17h42   #9
Membre régulier
 
Inscription : août 2006
Messages : 307
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : août 2006
Messages : 307
Points : 78
Points : 78
Apres qques recherches dans ta direction, je suis finalement parvenu a faire qqchose de pas mal.
Il faut juste que je trouve le moyen d'afficher le nom des mois mais je vais gerer ca avec une table MOIS tout simplement...

Merci beaucoup...

PS : C'est encore moi qui me fait avoir avec la plus grosse cotisation... grrr
__________________
Pensez au tag !!!
LP-mpascolo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2007, 17h48   #10
Membre émérite
 
Avatar de Ayana
 
Inscription : décembre 2005
Messages : 901
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 901
Points : 900
Points : 900
une macro avec un switch case (ou select case, je sais plus )
ou alors une table de correspondance toute simple qui te resservira ailleurs
__________________
--= Ayana =--
Modératrice B.I.

Règles du forum BO

Team BAB - Spécialistes BO

Rubrique BI de developpez.com
Ayana 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 00h35.


 
 
 
 
Partenaires

Hébergement Web