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

Deski Discussion :

[BO 5.1.8] Invite et liste de valeurs paramètrables


Sujet :

Deski

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 37
    Points : 23
    Points
    23
    Par défaut [BO 5.1.8] Invite et liste de valeurs paramètrables
    Bonjour,

    Je dois faire des invites avec la possibilité de choix dans une liste de valeur (la liste est tiré d'un table référentielle) mais le problème c'est que je dois aussi rajouter une autre valeur à cette liste et cette valeur correspondrait à "tous" ce qui veux dire qu'elle contient toutes les valeurs de la liste.

    Est ce que vous pensez que c'est faisable sous BO sans passer par des macro?

    Merci d'avance

  2. #2
    Membre régulier
    Avatar de mbarka
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 93
    Points : 111
    Points
    111
    Par défaut
    Bonjour,

    Il faut agir au niveau du Designer à deux niveaux pour un objet.

    - Pré-requis : choisir une valeur arbitraire et qui n'a pas d'existance pratique pour l'objet qui correspondra à la notion de "Tous". Exemple : -99999999 pour un nombre, 01/01/1900 pour une date ou "Tous" pour un alpha numérique.

    - Modifier la liste de valeur de l'objet en éditant son SQL, en cochant "Ne pas générer le SQL avant exécution" et ajoutant au début la valeur correspondante à "Tous" suivi d'un opérateur UNION.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Exemple : pour un objet "Objet_Ville"
    SELECT "Toutes les villes"
    FROM Table_des_villes
    UNION
    SELECT colonne_de_la_ville
    FROM Table_des_villes
    - Créer une condition automatique (objet) permettant de choisir la valeur "Tous" ou l'une des valeurs valides de la liste de valeurs.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Prompt('Selectionnez la ou les villes désirées : ','A','Classe\Objet_Ville',multi,contraingned)
    Rappel de la synthaxe de la fonction @prompt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @Prompt('message','type',[{'value1'[,'value2',...]},
    --class_nameobject_name'],mono/multi,free/constrained)
    Dans Deski, il faudra impérativement utiliser cette condition prédéfinie.

    Voilà, ça devrait marcher.

    J'ai fait ça de tête, ça reste peut-être à adapter et/ou à corriger.

    Bien à vous
    Mehdi

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    Bonjour,

    Merci beaucoup pour votre aide .. le seul soucis c'est que quand je choisis "tous" ma requête ne retourne plus aucune données

    Comment faire pour que le 'tous' marche comme si on aurais sélectionné toute les valeurs ?

  4. #4
    Membre régulier
    Avatar de mbarka
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 93
    Points : 111
    Points
    111
    Par défaut
    Excusez-moi, j'ai oublié le plus important!!!!!

    Lors de la création de la condition, la clause WHERE doit ête du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    "Toutes les villes" = Prompt('Selectionnez la ou les villes désirées : ','A','Classe\Objet_Ville',multi,contraingned) OR 
    @Select(Objet_Ville) IN Prompt('Selectionnez la ou les villes désirées : ','A','Classe\Objet_Ville',multi,contraingned)


    En gros, la gauche du OR est toujours vrai si on choisit "Toutes les villes" sinon, on ne garde que la droite du OR.

    Remarque, j'ai mis un IN avant le prompt!! Sinon, pas de valeur MULTI!! Shame on me!

    Ca devrait aller, je pense!!

    Bien à vous
    Mehdi

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    Bonjour merci beaucoup
    ça marche du tonnerre!!

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    bonjour
    j'ai un autre problème .. ce qui fait que ma question n'est pas du tout résolue

    Alors quand je selectionne une seule valeur dans la liste --> ça marche
    quand je selectionne 'Tous' ma requête marche ..
    mais quand je selection plusieurs valeurs, j'ai le message d'erreur suivant :

    ORA-01797: cet operateur doit etre suivi de ANY ou ALL :-1797

    Est ce que ça dit quelque chose à l'un de vous ?
    sauriez-vous comment résoudre ce problème.

    Merci d'avance

  7. #7
    Membre régulier
    Avatar de mbarka
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 93
    Points : 111
    Points
    111
    Par défaut
    Bonjour,

    Je pense qu'il faut modifier la formule du en mettant un "IN" au lieu du "=" dans la première égalité.

    "Toutes les villes" = Prompt('Selectionnez la ou les villes désirées : ','A','Classe\Objet_Ville',multi,contraingned) OR
    @SELECT(Objet_Ville) IN Prompt('Selectionnez la ou les villes désirées : ','A','Classe\Objet_Ville',multi,contraingned)

    deviendrait


    "Toutes les villes" IN Prompt('Selectionnez la ou les villes désirées : ','A','Classe\Objet_Ville',multi,contraingned) OR
    @SELECT(Objet_Ville) IN Prompt('Selectionnez la ou les villes désirées : ','A','Classe\Objet_Ville',multi,contraingned)

    Sinon, comme ça, je ne vois pas!! C'est lié je pense à l'opérateur utilisé du style ">=" à plusieurs valeurs. Ca apparait le plus souvent dans des sous-requête.

    Désolé.

    Mehdi

  8. #8
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    Merci beaucoup c'était bien à cause du = dans mon Where.

  9. #9
    Futur Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Pb <Tous> dans une LOV
    Bonjour,

    Je souhaite pouvoir permettre à l'utilisateur de choisir tous les champs d'une liste en selectionnant <Tous>.
    Le souci c'est que maintenant Avec <Tous> ca fonctionne,
    avec un champ ca fonctionne aussi
    mais deux champs ou plus autre que <Tous> ca me met le message d'erreur suivant:

    Exception: DBD, [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe (virgule) dans l'expression '( 'Tous' in (('Germany' , 'UK'))OR
    ( Resort_Country.country ) in((('Germany' , 'UK'))) )'.State: 42000

    Quelque aurait une solution?

    Kris.

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

Discussions similaires

  1. [BO] liste de valeur dynamique dans invite
    Par arnauann dans le forum Designer
    Réponses: 3
    Dernier message: 26/11/2012, 12h34
  2. BOXI4 - Invite et liste de valeurs
    Par bobobo7569 dans le forum Designer
    Réponses: 2
    Dernier message: 09/07/2012, 21h21
  3. [BO XI] liste de valeur dansune invite
    Par DALIDON2005 dans le forum Deski
    Réponses: 3
    Dernier message: 13/11/2008, 17h15
  4. [BO 6.5] : Liste de valeurs dans une invite
    Par norel77 dans le forum Débuter
    Réponses: 17
    Dernier message: 10/12/2007, 16h54
  5. Réponses: 3
    Dernier message: 23/01/2006, 12h43

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