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

WinDev Discussion :

Combobox avec demande de création lorsque entrée inexistante [WD20]


Sujet :

WinDev

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut Combobox avec demande de création lorsque entrée inexistante
    Bonjour forum

    J'ai une combobox qui porte le nom du client elle est relie a une fiche de donne (client) elle marche trée bien mais se que je vue quand je saisi un nom de client qui n'existe pas ille me demande de le crée et il mouver le fenêtre fiche client pour le crée
    Merci davance

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    914
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 914
    Points : 1 496
    Points
    1 496
    Par défaut
    Bonjour
    Pas si fort svp.
    Vous donnez la reponse dans la question.
    Traduisez en WL avec l'autoformation.
    En premier lieu Hlitrecherche.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour, cette question a été posée un grand nombre de fois, vous allez vitre trouver votre bonheur en lançant une recherche

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    merciiiii je v voir

    J'ai pas trouvé ??? Je tapes quoi sur la recherche

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    914
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 914
    Points : 1 496
    Points
    1 496

  6. #6
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 049
    Points : 9 384
    Points
    9 384
    Par défaut
    Comment faites vous déjà dans le cas général ?
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    J'ai pas compris le code

    J'ai une combo (nom client) et elle est en saisi elle est relie au base de donne client

    Si vous pouvez me passe le code que je doit mettre sur la combo

    Si nom client existe danc passe

    Si non n'existe pas il me pose la question "voulez vous crée le client ?" Oui ou non
    Si oui il mouvre la fenetre nome (fen_fiche_client)

  8. #8
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    997
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 997
    Points : 2 520
    Points
    2 520
    Par défaut
    @Berrehal
    T'es une synthèse toi !

    Prends donc le temps de faire le cours d'autoformation.
    Ca t'évitera de perdre du temps sur des trucs simples,
    et de nous crier aux yeux.

    Au pire, montre nous le code que tu as pondu !
    Il y a de bonnes âmes sur ce forum.

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    914
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 914
    Points : 1 496
    Points
    1 496
    Par défaut
    Lu dans l'aide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    // Recherche du premier enregistrement 
    // pour lequel le nom du CLIENT est DUPOND
    HLitRecherche(CLIENT, NOM, "DUPOND")
    SI HTrouve() ALORS
           // SI NOM CLIENT EXISTE DANC PASSE
    Trace("Client DUPOND trouvé")
    SINON
         // SI NON N'EXISTE PAS IL ME POSE LA QUESTION "VOULEZ VOUS CRÉE LE CLIENT ?" OUI OU NON 
         SI OuiNon("VOULEZ VOUS CRÉE LE CLIENT ?") = Oui ALORS 
                // SI OUI IL MOUVRE LA FENETRE NOME (FEN_FICHE_CLIENT)
               Ouvre(FEN_FICHE_CLIENT)
         FIN
        Trace("Client DUPOND non trouvé")
    FIN
    https://doc.pcsoft.fr/fr-FR/?3021005&name=OuiNon
    https://doc.pcsoft.fr/fr-FR/?3038035&name=Ouvre

    Vous l'aviez écrit en Français. Il suffisait de lire l'aide.
    M'enfin

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    merci mai quand Écris un nom de client il m'ouvre la fenêtre mais il m'ouvre le fenêtre du premier client la fiche elle déjà rempli

  11. #11
    Invité
    Invité(e)
    Par défaut
    difficile de vous aider si vous ne nous aidez pas, montrez nous votre code afin de mieux comprendre ce que vous avez fait

  12. #12
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    914
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 914
    Points : 1 496
    Points
    1 496
    Par défaut
    Hraz

  13. #13
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    sortie de combo_client
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    // Recherche du premier enregistrement 
    // pour lequel le nom du CLIENT est DUPOND
    HLitRecherche(CLIENT, NumCLIENT,COMBO_CLIENT)
    SI HTrouve() ALORS
    	// SI NOM CLIENT EXISTE DANC PASSE
    	Trace("Client  trouvé")
    SINON
    	// SI NON N'EXISTE PAS IL ME POSE LA QUESTION "VOULEZ VOUS CRÉE LE CLIENT ?" OUI OU NON 
    	SI OuiNon("VOULEZ VOUS CRÉE LE CLIENT ?") = Oui ALORS 
    		// SI OUI IL MOUVRE LA FENETRE NOME (FEN_FICHE_CLIENT)
    		Ouvre(FEN_Fiche_Client)
    	FIN
    	Trace("Client  non trouvé")
    FIN
    Nom : combo client.png
Affichages : 275
Taille : 37,7 Ko


    Nom : fen of.png
Affichages : 277
Taille : 34,1 Ko

    Nom : analise.png
Affichages : 201
Taille : 21,9 Ko

  14. #14
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 799
    Points : 5 240
    Points
    5 240
    Billets dans le blog
    1
    Par défaut
    Salut, le problème doit venir du code d'initialisation de ta fenêtre FEN_CLient.
    La plupart de champs de ta fenêtre sont liées aux données de ta table CLIENT.

    1 Dans ta déclaration globale
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    //gsModeOuverture peut avoir les valeurs suivantes "Création", "Modification"
    //nID correspond à l'ID Client dont l'enregistrement devra être consulté ou modifié 
    PROCEDURE FEN_Client(gsModeOuverture="Création",nID=0)
    2 Dans le code de fin d'initialisation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    SELON gsModeOuverture
        CAS "Création"
            HRAZ(CLIENT)
            //Traitement de l'affichage
        CAS "Modification"
            HLitRecherche(CLIENT,NumClient,nID)
            //Traitement de l'affichage
    FIN
    FichierVersEcran()
    3 Utilisation de FEN_Client
    Pour créer un nouvel enregistrement :
    Soit :
    -Ouvre(FEN_CLIENT,"Création), conseillé pour voir le mode d'ouverture
    -Ouvre(FEN_CLIENT)
    Pour consulter des données :
    Ouvre (FEN_Client,"Modification",x) //Où x correspond à l’identifiant du client à lire ou à modifier

    4 Remarque concernant ton analyse
    A priori, ta table CLIENT comprend 2 clés primaires.
    C'est un choix, discutable certes, mais c'est le tien.
    Le problème est que NomClient ne peux pas être clé primaire pour la bonne et simple raison que tu peux avoir 2 clients avec le nom "Dupond"
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  15. #15
    Invité
    Invité(e)
    Par défaut
    J'aurais plutôt adopter cette signature:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PROCEDURE FEN_Client(nID=0)
    De ce fait, nID=0 signifie qu'on est en création, sinon, en modification

  16. #16
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 799
    Points : 5 240
    Points
    5 240
    Billets dans le blog
    1
    Par défaut
    Aussi.
    J'opte pour ce choix pour une question de relecture.
    En fin de journée,"Création" ou "Modification" est plus simple à voir que Ouvre(FEN_Client,x)
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  17. #17
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    j'ai rectifier un peu le code
    la (fen_fiche_client) s'ouvre et vide pour le crée normal.
    mais le problème quand je j'ai crée le nouveau client et valider
    la valeur elle n'est pas renvoyer sur la combo et il me dit que elle n'ai pas crée.
    si je quitte la fenêtre et je je l’ouvre une autre foi je trouve le client crée danc je croi qu'il fau rafraîchie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    // Recherche du premier enregistrement 
    // pour lequel le nom du CLIENT est DUPOND
    HLitRecherche(CLIENT, NumClient,COMBO_CLIENT)
    SI HTrouve() ALORS
    	// SI NOM CLIENT EXISTE DANC PASSE
    	SAI_LIEU = CLIENT.ADresseCLIENT
     
     
    SINON
    	// SI NON N'EXISTE PAS IL ME POSE LA QUESTION "VOULEZ VOUS CRÉE LE CLIENT ?" OUI OU NON 
    	SI OuiNon("VOULEZ VOUS CRÉE LE CLIENT ?") = Oui ALORS 
    		// SI OUI IL MOUVRE LA FENETRE NOME (FEN_FICHE_CLIENT)
    		HRAZ(CLIENT)
    		Ouvre(FEN_Fiche_Client)
    		FichierVersEcran()
     
    	FIN
    FIN

  18. #18
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 049
    Points : 9 384
    Points
    9 384
    Par défaut
    Ce que je te conseille, c'est :
    1. Crée un nouveau projet.
    2. Dans ce nouveau projet, associe l'analyse que tu as faite.
    3. Utilises le RAD pour créer l'application. Windev va faire par lui-même tout ce que tu demandes depuis plusieurs messages.

    Habituellement, je déconseille fortement d'utiliser le RAD, mais dans certains cas, ça semble être la seule solution.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  19. #19
    Invité
    Invité(e)
    Par défaut
    @Voroltinquo : ça se comprend, mais faire un selon pour faire une comparaison avec des chaines est chose que j'évite de faire pour des raisons de casse / orthographe, à la limite, passer par des énumérations peut tout aussi bien faire l'affaire.

    @Berrehal : qu'avez vous comme code dans l'écran FEN_Fiche_Client ?

  20. #20
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2017
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    PROCEDURE FEN_Fiche_Client()
     
     
    // Affichage des enregistrements
    FichierVersEcran()
     
    // Valeur de retour par défaut
    MaFenêtre..ValeurRenvoyée = Faux
    Nom : fen client.png
Affichages : 276
Taille : 21,0 Ko

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. besoin d'aide sur combobox
    Par azräel dans le forum MFC
    Réponses: 4
    Dernier message: 30/05/2007, 09h26
  2. Besoin d'aide sur un projet (ComboBox-FlexGrid-Recordset).
    Par zizou2007 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 27/01/2007, 18h54
  3. [C#] Besoin d'aide sur l'affichage d'une combobox
    Par dcd3 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 08/10/2005, 00h43
  4. [intermedia] besoin d'aide sur script PL/SQL
    Par SteelBox dans le forum PL/SQL
    Réponses: 8
    Dernier message: 05/01/2004, 19h59
  5. [CR] besoin d'aide sur les formules
    Par GuillaumeDSA dans le forum Formules
    Réponses: 4
    Dernier message: 10/07/2003, 12h19

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