|
La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
Bonjour,
J'utilise une liste dans une fenêtre avec un bouton ajouter, supprimer et modifier et un champs saisie...Bref, rien d'extraordinaire.
Pour l'ajout d'une donnée, çà va
Pour la suppression, j'arrive à afficher, dans le champs saisie, la valeur séléctionnée dans la liste.Mais je en sais pas comment la supprimer ensuite.Par rapport à son indice???
Pour la modification,c'est la même chose...
Enfin, je souhaite trier ces données ainsi saisie dans la liste...Quelle est la synthaxe??? j'insère le trie dès l'initialisation de la liste??? ou à chaque clique de mes boutons???
Merci d'avance!!
Je tiens à remercier tous les participants qui répondent rapidement à toutes nos kestion, nous les novices qui ne demandent qu'à apprendre...
Encore merci!!!
Contribution le : 28/10/2004 23:03
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Bonjour Frédéric,
Etonnant , tu ne parle pas de fichier !!! Bon je m'arrête à ta demande
Ajout: ListeAjoute(,)
Modification: Ind est un entier //Récupérer l'élément sélectionné Ind = ListeSelect() [] //Modifier la ligne [Ind] =
Supprimer: Ind est un entier
Ind = ListeSelect() ListeSupprime(,Ind)
Trié la liste: ..Triée = vrai
Contribution le : 29/10/2004 00:45
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
Merci beaucoup !!!
En faite, je n'utilisais pas les fonctions commençant par liste, j'utilisais HAjout, Hsupprimer, HModifier...
Je vais tout de suite essayer les lignes de code...
Merci beaucoup!!!!
@+!
Contribution le : 29/10/2004 09:16
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Bonjour Frédéric,
HAjoute, HModifie !!!! Fonction d'accès aux fichiers!!!!
Cela fait partie de ma première remarque de mon précédent post, il n'était pas stipulé de lien avec un fichier.
Dans ce cadre d'utilisation l'utilisation est tout autres. Les fonctions que je t'ai indiquées ne font que manipulerla liste et ne modifie en rien le contenu d'un quelconque fichier.
Pour ce faire il faudrait ajouter à la liste un lien qui contiendrait l'identifiant de l'enregistrement qui y serait associé afin de reporter les mofification directement dans le fichier.
Contribution le : 29/10/2004 10:03
|
|
|
Re: La liste |
|
Anonyme
|
Ok, Charly!!! En faite, dans le fichier "manipulé", il y'a le champs identifiant et le champs Libellé (qui doit être affiché dans la liste). C'est effectivement un fichier que je manipule au travers de la liste et des boutons, Ajouter,Modifier et Supprimer et du champs de saisie... Sur la liste, J'ai fait une liaison (dans le menu Description, onglet Liaison) et j'ai lié le libellé... La fonction "Ajouter" fonctionne et place le nouvel enregistrement en fin de liste... Pour les autres, c'est plus dur car il faut que "sur la sélection de la ligne", il faut identifier cette ligne. En effet, quand je selectionne une ligne dans la liste, elle s'affiche bien dans le champs de saisie mais après çà se complique:La selection ne se cale par sur la bonne ligne... Pourrais-tu me faire un exemple "Ajouter" , cela ma permettrais de mieux voir ce que je peux faire car je suis un perdu là... Merci d'avance !!!!
Contribution le : 29/10/2004 10:52
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Bonjour,
Cela devient bien plus complexe Dans un premier temps ce qui est important c'est de mettre dans ta liste les informations nécessaires pour pouvoir le retrouver facilement dans ton fichier
Le besoin est déjà de savoir si chaque libellé dans ton fichier est unique cela signifie que l'on ne peut pas le retrouver 2 fois dans le fichier
ATTENTION encore selon la description de ton fichier dans ton analyse il faut bien définir si il faut ou ne faut pas faire tenir compte de la Casse
Champ1 = CHAMP1 //Ne tiens pas compte de la casse Champ1 <> CHAMP1 //Tiens compte de la casse
Contribution le : 29/10/2004 12:04
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
Il n'y a pas 2 mêmes libellés dans cette table.
Contribution le : 29/10/2004 12:22
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Ma liste s'apelle : lst Mon champ de saisie s'apelle : txt Le fichier s'apelle Fichier1 La Rubrique Identifiant s'apelle : Id La Rubrique libellé s'apelle : Libelle
//Code de déclaration de la fenêtre
GLOBAL
Ind est un entier
//Dans le Code Sélection d'une ligne de lst
Ind = ListeSelect("lst") //Récupère l'indice
//Pour ajouter
Si SansEspace(txt)<>"" alors
RAZ(Fichier1)
Fichier1.Libelle = txt
Si Pas HAjoute(Fichier) Alors
Erreur("Impossible d'ajouter l'élément",HErreurInfo(),ErreurInfo())
Retour
Fin
ListAjoute(lst,txt)
lst..Triée = vrai
Fin
//Pour modifier
Si ind = -1 Alors
Erreur("Vous devez s'électionnez l'élément à modifier")
Retour
Fin
sValueOld est une chaine = lst[ind]
Si SansEspace(txt) <> "" Alors
Si pas HLitRecherche(Fichier1,Libelle,sValueOld,hIdentique) alors
Erreur(sValueOld + " A été supprimée!")
Retour
Fin
Fichier1.Libelle=txt
Si Pas HModifie(Fichier1) Alors
Erreur("Impossible de modifier l'élément sélectionné",HErreurInfo(),ErreurInfo())
Retour
Fin
Lst[Ind] = txt
lst..triée = vrai
Fin
//Suppression
Si ind = -1 Alors
Erreur("Vous devez s'électionnez l'élément à supprimer")
Retour
Fin
sValueOld est une chaine = lst[ind]
Si SansEspace(txt) <> "" Alors
Si pas HLitRecherche(Fichier1,Libelle,sValueOld,hIdentique) alors
Erreur(sValueOld + " A déjà été supprimée!")
Retour
Fin
Si Pas HSupprime(Fichier1) Alors
Erreur("Impossible de supprimer l'élément sélectionné",HErreurInfo(),ErreurInfo())
Retour
Fin
ListeSupprime(Lst,Ind)
lst..triée = vrai
Fin
Le code à été saisie à la volée et peut contenir des erreurs.
Contribution le : 29/10/2004 13:14
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
Merci beaucoup!!!!!
Par contre, j'ai un problème avec les commandes listeAjoute et ListeSupprime, un message d'erreur après avoir entré le libellé dans le champs de saisie et appuyé sur ajouter :
"Vous avez appelé la fonction ListeAjoute. Commande invalide pour le champ Liste_Modes car c'est une Liste Fichier (cette commande n'est valide que sur les Listes, Tables et Combos mémoire)."
Et chose interessante : l'enregistrement a bien ajouté car il y'a un blanc ajouté dans la liste...
Contribution le : 29/10/2004 14:16
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Si ta table est relié à un fichier (Défini via la description d'un champ table - onglet Contenu)
Alors il ne faut pas chercher à modifier les données dans la table , mais plutot directement dans le fichier puis de raffraîchir la table. Ainsi, les modifications apportées dans le fichier seront répercutées directement dans la table d'affichage.
Contribution le : 29/10/2004 15:17
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
je ne comprend pas trop.... tu parles de champ table... C'est pas l'objet mais la table de la base, c'est çà??? Moi, ce que j'ai fait : Dans le Contenu de (Description\Contenu) ma liste , je l'ai liée au fichier par : - Le nom de mon Fichier - Rubrique affichée : le Libellé - Rubrique mémorisée : l'ID de mon libellé - Rubrique de parcours : l'ID du libellé Suis-je sur le bon chemin????
Contribution le : 29/10/2004 15:35
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Une Table en WinDev c'est l'objet graphique dans lequel on affiche les données Un fichier c'est l'élément physique dans lequel sont stockés les données, sur le disque dur par exemple.
Contribution le : 29/10/2004 15:45
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
D'accord, mais quel est le lien entre l'erreur générée quand on utilise l'instruction ListeAjoute ou ListeSupprime ???
Contribution le : 29/10/2004 15:56
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Si tu essai d'ajouter un libéllé qui existe déjà cela provoque une erreur, parce qu'il doit être unique.
Si tu cherche à supprimer un libéllé qui à déjà été supprimé par quelqu'un d'autre, cela provoque une erreur.
Contribution le : 29/10/2004 15:59
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
L'erreur générée indique que je devrais utiliser TableAjoute....
Pourtant je n'ajoute pas un libellé déjà existant....
Contribution le : 29/10/2004 16:03
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
J'ai du perdre quelque chose en route Tu me parlais d'ajouter, modifier, supprimer dans une liste et maintenat apparement il est question de table Mise au point: 1)La manipulation de la liste fonctionne t-elle? 2)Que veux tu faire maintenant.
Contribution le : 29/10/2004 16:22
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
En faite, j'ai intégré tes lignes de codes et l'ajout et la suppression ne fonctionne pas : ListeAjoute et ListeSupprime ne sont pas acceptés...
J'ai essayé de remplacer la ligne de suppression listeAjoute(Nomdemaliste,ind) par HAjoute(Nomdufichier): il m'ajoute une ligne blanche dans ma liste
Contribution le : 29/10/2004 16:32
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Frédéric, je crois qu'il est temps que tu passe un moment à lire et à tester le guide d'autoformation afin de comprendre les principes et méthodes de programmation du WLanguage sinon tu va perdre trop de temps à effectuer des tests sans comprendre les fondements.
Contribution le : 29/10/2004 16:50
|
|
|
Re: La liste |
|
Stagiaire WDF
Inscrit: 20/10/2004 16:39
Post(s): 49
|
Okay!
Mais en utilisant HAjoute et HSupprime, j'ai un résultat plus satisfaisant :
J'ajoute : une ligne blanche s'ajoute dans la liste Je supprime : Le libellé est bien supprimé mais la liste a besoin d'être rafraichie en faisant bouger le curseur verticale de la liste
Contribution le : 29/10/2004 16:58
|
|
|
Re: La liste |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
En relisant le fil de discussion depuit le debut pour comprendre ou j'avais perdu pied. Comme tu as déjà lier ta liste au fichier Citation : Moi, ce que j'ai fait : Dans le Contenu de (Description\Contenu) ma liste , je l'ai liée au fichier par : - Le nom de mon Fichier - Rubrique affichée : le Libellé - Rubrique mémorisée : l'ID de mon libellé - Rubrique de parcours : l'ID du libellé
Il n'est pas nécessaire d'utiliser les Fonctions ListeAjoute,ListeSuprime ou ListeModifie. Il te suffit seulement de modifier le fichier physiquement via HAjoute, Hmodifie, Hsupprime et de raffraîchir ta liste via:
<Liste>..FichierParcourue="<Nom de mon Fichier>"
A faire plusieurs chose en même temps on fini par perdre le fil.
Contribution le : 29/10/2004 17:10
|
|
Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.
|
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
|