Posez votre question Signaler

Modifier windev

hafoda 21Messages postés mardi 20 avril 2010Date d'inscription 15 septembre 2010Dernière intervention - Dernière réponse le 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.
Lire la suite 
Réponse
+1
moins plus
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
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+1
moins plus
hlitrecherchepremier
si htrouve=vrai alors
hmodifi()
sinon
hajoute
fin
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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 ?
Ajouter un commentaire
Réponse
+0
moins plus
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 .
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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 !!!.
Ajouter un commentaire
Réponse
+0
moins plus
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)
Ajouter un commentaire
Ce document intitulé «  modifier windev  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.