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

Forms Oracle Discussion :

comment faire des mise a jour après sélection colonne love !


Sujet :

Forms Oracle

  1. #1
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut comment faire des mise a jour après sélection colonne love !
    salut ,

    j'ai d'un coté des bouton de mise a jour supp etc pour un bloc(utilisateur).
    et d'un autre la sélection de l'utilisateur qui se fait a l'aide d'une LOV.
    mais voila : pas moyen de MAJ l'utilisateur sélectionné depuis la LOV .
    je ne peut mettre a jour que quand je sélectionne a partir d'un Enter, suivie d'execute ;query
    question :
    comment peut-on MAJ l'enregistrement qu'on a sélectionné depuis la LOV.

    et merci BCP

  2. #2
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Un bloc à un statut et un seul.
    Soit tu est en mode interrogation (enter-query) et ensuite après le execute query, ton bloc en en mode MAJ pour tous les enreg ramenés.
    Soit tu es en mode normal (pas en mode enter-query) et toute ligne créée c'est de l'INSERT, toute ligne modifiée, c'est de l'UPDATE, toute ligne supprimée, c'est du DELETE.

    Le seul moyen de mettre à jour, c'est de fetcher les enregistrement depuis la base par un execute query.
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  3. #3
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut
    mais voila , justement
    en mod normal , je peut pas modifier l'enregistrement selectioné par la lov.
    du coup si j'ai envie de modifier je fait enter et execute (pour ramener 1 ou +eur enregistrement "gymnastique") .Donc ma lov c'est de l'Art DECo .

    pas moyen de fetcher avec une lov??
    y 'a t-il un moyen de faire comme décrit plus haut(1er poste).

    Ou ,je doit carrément mettre le mode enter query.
    Selectionner l'enregistrement depuis la lov. Et après, mettre un bouton contenant Execute query; Pour pouvoir modifier!!
    (vraiment tiré par les cheveux) .


    ALORS !! mes cher codeur une idée!!.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 316
    Points : 388
    Points
    388
    Par défaut
    Une LOV n'est la que pour selectionner un code dans une liste de valeur existente, si le souhait est de pouvoir modifier un ensemble d'enregistrement
    Il faut mettre le block en enter_query, l'utilisateur renseignes le ou les criteres ou rien, execute_query et là par next_record ou previous_record avec un block en modif autorisé, il peut modifier les enregistrements désirés.
    Ou alors si l'enrg n'a pas trop de colonne il suffit d'afficher sous forme de tableau multi-record pour plus de visibilité.

  5. #5
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    En fait si tu mets ta lov dans un bloc non basé (avec l'option de la lov skip à yes), un simple trigger when-new-item-instance teste si le champ est not null et fait l'execute query.
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  6. #6
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut he
    AH ca ça m parle mcm,

    voyez vous, si ça ne tenait qu'a moi je ferait la recherche et modification en classique(semi-manuelle).a la bien!!
    mais ,comme c'est pour l'utilisateur .faudrais que ça soit en ne peut plus Transparent!

    -Donc d'après toi si je fait ça , après vérification du champ l'execute query s'active (ou pas).
    mais , au préalable .le mode doit être en enter_query .!
    puisque, si c pas le cas .pas la peine de mettre quelque chose sur le champ .sachant qui va me ramener toute la compagnie (les enregistrement)!!

    ce qui veut dire , vue qu'au final moi je doit enlever le menu standard ,
    Q'un bouton doit remplacer le ""enter_query"" pas très IHM.
    some idea ??

  7. #7
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par scofield
    mais , au préalable .le mode doit être en enter_query .!
    Pas du tout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    GO_BLOCK('BL1');
    SET_BLOCK_PROPERTY('BL1', DEFAULT_WHERE, 'utilisateur=:bl2.util');
    EXECUTE_QUERY;
    et le SET_BLOCK je l'ai mis si le WHERE du bloc peut changer.
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  8. #8
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut :)
    je vais tester ça ,aujourd'huis .(ça a l'air pas mal )au faite si je comprend bien .

    1-je met la lov dans un bloc non basé option skip a yes.

    2-je fait le teste dans le trigger wen-new-item-instance (du champ qui reçoit la valeur LOV) ...if :text2 is not nul then execute_query(un truc cm ça).

    3-
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    GO_BLOCK('BL1');
    SET_BLOCK_PROPERTY('BL1', DEFAULT_WHERE, 'utilisateur=:bl2.util');
    EXECUTE_QUERY;
    je le met dans when-bouton-pressed d'un bouton!(sur lequel on appuis après que la lov ait envoyé une valeur a mon champ), ou du champ text2 .?

    cela dit , c'est pas ça qui m'empêcheras de bidouiller toute a l'heure .faudrais , pas être cinique en même temps .

    MERCI ENCORE , JE FERAIT PART DU RESULTAT.

  9. #9
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    3 dans 2

    en fait, le GO_BLOCK est une procédure restreinte (tu peux pas le faire dans les WHEN VALIDATE, etc..) Mais tu peux dans les WHEN-XXX-INSTANCE
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  10. #10
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut eh..
    re ,

    désolé d'avoir tardé ! j'ai essayé aujourd'hui ceci :

    1- la lov , ne peut pas se mettre dans un bloc , elle appartient au même module c'est tout (j'ai même essayé de la déplacer )
    mais le skip est quand même a yes.
    -j'ai donc mis plutôt le bouton qui appel la lov dans un bloc non basé au cas ou .
    -le code de when -new-item-instance :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if :text2 is not null then 
    go_block('bl1')
    SET_BLOCK_PROPERTY('BL1', DEFAULT_WHERE, 'utilisateur=:bl2.util');
    EXECUTE_QUERY;
    end if;
    et LA comme d'habitude : il me demande de sauvegarder l'enregistrement ou d'annuler.

    Donc l'exécute_Q du code ne prend pas en compte le contenu du champ :text2 dans son exécution.

    REPONSES SONT TJR BIENVENUES

  11. #11
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut hey
    MCM EST demandé a la réception en tout urgence !!

  12. #12
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut E O!
    SVP , si quelqu'un a une idée sur ça , j'arrive pas a avancer

    je suis dans l'embarras

  13. #13
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Essayez en anglais sur un forum OTN qui eux "suivent le soleil" et donc ne dorment jamais ...

  14. #14
    Membre habitué Avatar de scofield
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2006
    Messages : 179
    Points : 181
    Points
    181
    Par défaut we we
    ta raison , mais c'est plutôt le soleil qui les suit.
    bon voila , j'ai trouvé un topic LOV FOR QUERY
    et on melangant avec , les dires de MCM .

    j'ai finalement , mis un pre_query ou je spécifie le
    set_block_property('blok',default_where,colone=:text2);
    et puis j'ai mis dans un TRigger WB_pressed d'un bouton apartenant a un block non basé 'blockx'(
    if show_lov('lovx') then go_block('block'); execute query;
    donc , un block additionnele avec un texte(qui reçoit la colonne de la lov) et un bouton(qui appel la lov et execute la query)
    SUJET RESOLU , MERCI A TOUT CEUX QUI ONT CONTRIBUE..m...c...m.............

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 02/03/2010, 12h50
  2. Comment faire les mises a jour de mon site
    Par halimux dans le forum Débuter
    Réponses: 1
    Dernier message: 18/05/2009, 13h29
  3. Réponses: 3
    Dernier message: 11/04/2009, 04h27
  4. comment mettre des mises a jour de données
    Par Asmod_D dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 16/03/2007, 16h36
  5. comment effectuer des mises à jour entre classeurs excel ?
    Par benjamin.garbolino dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/03/2006, 00h51

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