Modifier windev

Fermé
hafoda Messages postés 21 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 15 septembre 2010 - 14 sept. 2010 à 11:09
 djelcass - 10 févr. 2015 à 17:42
Bonjour,

je veux créer un bouton <MODIFIER> pour pouvoir modifier la ligne sélectionnée d'une table
quand on click sur le bouton modifier une nouvelle fenetre s'ouvre avec des champs remplire
merci d'avance et à très bientôt.
A voir également:

11 réponses

Moyjin Messages postés 126 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 2 février 2011 10
14 sept. 2010 à 16:06
hlitrecherchepremier
si htrouve=vrai alors
hmodifi()
sinon
hajoute
fin
2
hafoda Messages postés 21 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 15 septembre 2010
14 sept. 2010 à 13:33
merci pour la reponse
oui maintenat ça marche bien,
mais mon probleme je voudrais que un seul bouton fait deux chose insert et update je ne sais pas est ce qu'il existe ou non.
0
hafoda Messages postés 21 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 15 septembre 2010
14 sept. 2010 à 18:46
merci,
mon objectif est comme suivante:
1ere fenetre (T_client)j'ai un table memoire et des bouton noveau;supprimer;modifier,imprimer
quand je click sur noveau ou modifier un fenetre s'ouvre(F_client)
cette fenetre contient deux champs de saisie et deux bouton OK et ANNULER
je voudrais ke le bouton OK fait deux choses insert ou update dans la base de donnee mais pas en meme temps cad=>quand on click sur noveau de la fenetre T_client la fenetre F_client s'ouvre apres on remplir des champs et ensuit on click sur le bouton OK pour faire INSERT.
est ce que possible ou non?
merci d'avance.
0
Moyjin Messages postés 126 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 2 février 2011 10
15 sept. 2010 à 08:40
alors tu place des parametre en ouverture de fenetre exemple
Nouvelenregistrement ( bool)
avec vrai si c'est un nouveau
et ton id de tes champs pour sic c'est une modification

et ton code de ton bouton sera

si Nouvelenregistrement=vrai alors
hajoute()
sinon
hlitrecherchepremier
si htrouve=vrai alors
hmodif()
sinon info("erreur")
fin
fin
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
hafoda Messages postés 21 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 15 septembre 2010
Modifié par hafoda le 15/09/2010 à 11:28
merci pour la reponse
j'ai fait ce code là mais ça marche pas
si T_client.Nouveau=vrai alors 
ressql=SQLExec("insert into client(code,intitulé) values(' "+F_client.code+" ',' "+F_client.intitulé+" ')" , "req1") 
SQLFerme("req1") 
fin 
si T_Client.Modifier=vrai alors 
SQLExec("update client set intitulé = ' "+F_client.Intitulé+" ' where code = ' "+F_client.code+" '  ","req2") 
SQLFerme("req12") 
FIN 

j'utilse windev 10 et sql server 2000.
merci pour l'aide.
0
Moyjin Messages postés 126 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 2 février 2011 10
15 sept. 2010 à 12:30
Selon T_client.Nouveau
cas vrai
ressql=SQLExec("insert into client(code,intitulé) values(' "+F_client.code+" ',' "+F_client.intitulé+" ')" , "req1")
SQLFerme("req1")
cas faux
SQLExec("update client set intitulé = ' "+F_client.Intitulé+" ' where code = ' "+F_client.code+" ' ","req2")
SQLFerme("req12")
autres cas
// impossible pour un booléen normalment
fin
limite tes variable une variable pour savoir si c'est l'ajout ou la modif une varriable suffit

apres tes erreur vienne peu etre de ton sql
tu utilise quoi comme BDD ?
0
hafoda Messages postés 21 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 15 septembre 2010
15 sept. 2010 à 13:16
merci ,
T_Client.noveau et T_Client.modifier permet d'ouvrire meme fenetre F_Client
j'ai fait ce code mais ça marche pas !!

j'ai utilise SQL server 2000 et windev .
0
Moyjin Messages postés 126 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 2 février 2011 10
15 sept. 2010 à 13:26
si F_client.code est une clé auto incrementer tu n'a pas besoin de la mettre dans la fonction ajoute

apres le seul conseil que je peu te donner c'est de tester en sql directement tes requete sur la console sql avec de valeur test pour voir si cela vien de ta requete,ou du code
0
hafoda Messages postés 21 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 15 septembre 2010
15 sept. 2010 à 14:04
merci
F_client.code n'est pas un clé auto increment ;
oui je teste tjrs les requette sql ça marche sur la console sql mais quand je voudrais executer le code ça marche pas !!!.
0
SI HNbEnr(CarnetAdresses)=0 ALORS RETOUR
EcranVersFichier()
HModifie(CarnetAdresses)
SI ErreurDétectée ALORS
SI HErreurDoublon() ALORS
Erreur("Une erreur de doublons est survenue")
FIN
SI HErreurIntégrité() ALORS
Erreur("Une erreur d'intégrité est survenue")
FIN
SINON
Info("Modification effectuée")
FIN
TableAffiche(TABLE_CarnetAdresses)
0
Moyjin Messages postés 126 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 2 février 2011 10
14 sept. 2010 à 11:39
tu fait un ouvre(nom de ta fenete)
apres ya 2 solution soit ta clé est dans une variable globale , soit tu la passe en procedure dans le derneir cas de memoire c ouvre( fenetre, param)

pour etre sur tu tape ouvre() et un f1 dessus pour avoir le détail
-1