|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : août 2006 Messages : 21 ![]() |
Bonjour,
Contexte: Je travaille avec 2 tables T1 te T1_jour. Tous les soirs, les données de T1_jour sont chargées dans T1. Le designer aura besoin des champs communs aux 2 tables. Une invite permet à l'utilisateur de choisir une date. Solution actuelle: J'ai créé une table dérivée T=(T1 UNION ALL T1_jour) L'invite est inclue dans le SQL de création de cette table Question: Est il possible de faire, sous designer, qqch qui reviendrait à ça: si ('date saisie'<sysdate) alors T = T1 sinon T = T1_jour j'ai essayé d'être le plus clair possible, j'espère l'avoir été et pliz, dites moi qu'il est possible d'éviter cet UNION ALL |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : octobre 2007 Messages : 64 ![]() |
Je pense que tu peux eviter ton union all en utilisant les contextes.
C'est une solution mais elle demandera un minimum d'action de la part des utilisateur. En faisant deux contextes, 'date saisie<sysdate' et un autre 'date saisie>sysdate', l'utilisateur se vera demander quel contexte il veut utiliser et tu pourra le rediriger verts la table voulu. Ps: ce n'est peut etre pas la seule solution...a creuser. |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : août 2006 Messages : 21 ![]() |
je n'avais pas du tout pensé aux contextes !
je vais essayer ça dès que possible voir ce que ça peut donner merci |
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : août 2006 Messages : 21 ![]() |
hummm
non je pense que ça va pas le faire parcequ'il va devoir faire sa requête avant de choisir le contexte non ? et dans ce cas choisir deja l'une des 2 tables, or il faudrait que pour eux ce soit transparent... et là ça devient prise de tête ![]() en fait ce que j'aimerais faire c'est une table dérivée dynamique en fonction de l'invite saisie... cette table serait la "vue" de l'une ou l'autre de la table. |
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : octobre 2007 Messages : 64 ![]() |
Si tu ne veux pas utiliser les contextes ( je pense pourtant que tu aurais pu t'en sortir en combinant la navigation aggrege et la fonction aggregate_aware mais c vrai que c pas forcement evident) tu as peut etre l'option (si tu utilise oracle) d'utiliser une procedure stocké en tant que fournisseur de donnée
Tu aurais dans cette procedure un test entre la date de saisie et la date du jour et selon leur position relative tu executerai l'une ou l'autre requete. |
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : août 2006 Messages : 21 ![]() |
J'avoue je suis un peu néophyte sur Designer et tout ce qui est "navigation aggregee" et "@aggregate_aware" ne m'est pas intuitif
Je vais donc essayer (faut bien apprendre |
|
|
00
|
|
|
#7 | ||
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 181 ![]() |
Je ne connais rien de mieux qu'un bon decode(champs,val1,alors,sinon)
Je vous entends dire il est fou ! L'invite peut retourner n'importe quelle date ! Certes ! Mais, si la différence entre l'invite et sysdate peut également prendre x valeurs différentes, le signe de cette différence lui n'a que 3 valeurs possibles donc Code :
Code :
decode(sign("datesaisie" - sysdate),-1, T.nomduchamp,T1_jour.nomduchamp)
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!" |
||
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Inscription : août 2006 Messages : 21 ![]() |
En fait j'avais déjà ouvert une discussion spécifique à cette invite :
http://www.developpez.net/forums/sho...d.php?t=435077 En fait j'avais un peu simplifiée le pb, me disant que j'allais ensuite réussir à arranger la solution au cas qui me concerne: cad que je saisie une date debut et une date de fin autrement dit mon test est en fait date between date_deb and date_fin et histoire de bien m'amuser, mes utilisateurs peuvent faire une date_deb de T1 et une date_fin de T1_jour et dans ce cas je dois faire un UNION entre les tables... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com