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

Delphi Discussion :

Flaguer des records dans un DataSet.


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2002
    Messages
    207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2002
    Messages : 207
    Par défaut Flaguer des records dans un DataSet.
    Bonjour tous le monde !

    Je suis face un problème tout à fait M..... c'est pourquoi j'aurais besoin de votre aide.

    J'aimerai pouvoir flaguer des record dans un DataSet.

    Je travail avec des composants MyStroredProc. Un DataSet qui récupère ses données depuis des procédures stockées MySQL (suite de composant MyDac).
    Donc chacun des champs de mon DataSet à une correspondance avec un des champ retourné par ma SP. Jusque là tout va bien.

    Mainteant j'aimerai ajouter dynamiquement un champ boolean à mon DataSet afin que les utilisateurs puissent simplement sélectionner (case à cocher depuis la DBGrid, voir dans la FAQ pour savoir comment on fait) certain record. Mais ce champ booléan n'a de raison d'être qu'en mémoire et surtout pas dans la base de donnée. Mais comme ce champ n'existe pas dans la base de données impossible de le créer. Il me dit qu'il ne trouve pas ce champ.

    Quelqu'un a-t-il un solution à ce problème ??

    En résumé c'est comme si j'avais un composant TADOTable et que j'aimerais ajouter un champ qui n'existe pas dans la base sur mon TADOTable.

    Merci d'avance à ceux qui prendront un peu de temps pour essayer de m'aider.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    269
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 269
    Par défaut
    salut,

    Tu peux ajouter un champ calculé de type booleen.

    A coté de ça tu instancies une liste de ce que tu veux qui stocke les identifiants des enregistrements cochés.

    Dans l'evenement onCalcField du DataSet tu regardes si l'enregistrement est dans la liste et tu affectes la bonne valeur au champs booleen calculé.

    Quand l'utilisateur clic sur la case à cocher tu ajoute l'enregistrement à la liste.

    a+

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2005
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 218
    Par défaut
    Sauf erreur de ma part le calcfields n'est modifiable que dasn l'evt oncalcfields.
    Ya un moyen pas trop compliqué qui doit pouvoir marcher c'est de rajouter un champs constant de type booléen à ta requête ou à ta procédure stockée.

    select a.*, true from a

    Ca te permet d'avoir un champs dispo supplémentaire au niveau de ton query. Il suffira après de modifier tes requêtes de mise à jour pour supprimer ce champs.

    J'aime pas trop cette écriture et je préfère normalement utilisé des clientdatasets en créant des calcinterne, mais si tu n'as pas ce composant ca peut être une solution simple à ton pb.

  4. #4
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 236
    Par défaut
    Je te conseillerai le composant SMDbGrid qui permet de faire cela facilement.
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  5. #5
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2002
    Messages
    207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2002
    Messages : 207
    Par défaut
    Bonjour ! merci beaucoup de vos réponse.

    J'avais déjà vaguement penser à ces deux méthodes...

    macumba :
    Pour ce qui est du champ ajouté à la SP, sa serait valable si je n'avais pas besoin de ça dans toutes mes SPs. C'est très embêtant dans le sens que je dois passé partout pour ajouter le champ. Mais je pense que dans un cas isolé je utiliserais cette manière. (Bien que je en pense pas que cela soit des plus propres... /!\ Coup de fouet des ingénieurs /!\)

    Zatoobux :
    Je pense que je vais tenter ce système, le seule soucis c'est que je vais devoir joeur avec le OnClick qui va modifier directement ma liste et qui elle va allimenter les champ calculer... le seul soucis c'est de pouvoir faire un truc un peu pret optimisé.... Parce que si je dois scanner pour chaque ligne une énorme liste de record....

    En tout cas merci de votre aide, et si quelqu'un à une idée mortel de la mort...

  6. #6
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2002
    Messages
    207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2002
    Messages : 207
    Par défaut
    Ah ça m'a l'aire tout à fait bien comme composant cette grille....
    En plus c'est gratuit...

    BEAU C'T APERO !!!

    Merci bien, je vais voir un peu comment ça marche et je vous tient au courant.

  7. #7
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 236
    Par défaut
    Citation Envoyé par Seboubou86
    Ah ça m'a l'aire tout à fait bien comme composant cette grille....
    En plus c'est gratuit...

    BEAU C'T APERO !!!

    Merci bien, je vais voir un peu comment ça marche et je vous tient au courant.
    J'utilise cette grille depuis 5 ans environ, donc si tu as quelques problèmes je pourrais surement te guider (surtout pour l'utilisation que tu veux en faire)
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  8. #8
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2002
    Messages
    207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2002
    Messages : 207
    Par défaut
    Ok... Ben c'est bien sympa de t'as part !!

    Elle est bien fonctionnel ?? ou bien y a quelque bug ??

    (genre en général ce genre composant, sont complétement payant...)

  9. #9
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 236
    Par défaut
    Citation Envoyé par Seboubou86
    Ok... Ben c'est bien sympa de t'as part !!

    Elle est bien fonctionnel ?? ou bien y a quelque bug ??

    (genre en général ce genre composant, sont complétement payant...)
    Je n'ai pas rencontré de bug particulier avec cette Grid depuis que je l'utilise.
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/09/2010, 10h49
  2. [AC-2007] mettre à jour des records dans une table liée
    Par mandrake_of_mandregas dans le forum VBA Access
    Réponses: 1
    Dernier message: 21/07/2010, 19h49
  3. SOS : Comment inserer des données dans un dataset ?
    Par alexia_78 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/07/2008, 13h50
  4. Garder l'ordre des Records dans une requete select distinct
    Par pobrouwers dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 21/02/2007, 22h06
  5. [VB.NET] Requete avec des dates dans un DataSet
    Par leSeb dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/10/2005, 14h30

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