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

Bibliothèques & Frameworks Discussion :

Gestion plusieurs grid avec meme store (dojo version 1.4) [Dojo]


Sujet :

Bibliothèques & Frameworks

  1. #1
    Membre régulier Avatar de devkaty
    Inscrit en
    Mai 2009
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 174
    Points : 96
    Points
    96
    Par défaut Gestion plusieurs grid avec meme store (dojo version 1.4)
    Salut a tous,

    J'ai plusieurs onglets qui liste les fiches client et dans chacun de ces onglets j'ai une grid qui contient la liste des adresse de ces clients ,les grid adresse se créé avec même store et item commun entre les adresses ces id client(par ce que sont les adresses de même client)
    Le problème que j'ai c'est quand je fais un newItem, il ajout un item dans chaque grid même s'il ne correspond pas au onglet de client actif .

    Est ce qu'il y a un moyen d'interdire l'ajout des new item dans les autres grid ? c-a-d il ajoute item si condition existe ( id client qui existe dans store = id client de l'onglet actif)

    Note : Le store utilisé est de type dojox.data.JsonRestStore
    il charge les données par une query

  2. #2
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut,

    Etant donné que les grid prennent leurs datas dans le même store je ne vois pas comment cela peut être possible : à partir du moment où tu ajoutes une ligne, tu l'ajoutes dans le store donc dans les grilles (sauf à mon avis si les query entre les grids diffèrent, mais cela reste à vérifier et de toute façon la data est bien accessible par toutes les grids).

    Plusieurs stores plus simples est peut-être une solution, ou un clonage ?
    ERE
    Quand une tête pense seule, elle devient folle.

  3. #3
    Membre régulier Avatar de devkaty
    Inscrit en
    Mai 2009
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 174
    Points : 96
    Points
    96
    Par défaut
    Re,

    Oui effectivement il ya une query qui diffèrent les grid c'est id du client c pas le meme .
    Tout les adresses listé ils ont meme idClient .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     var gridAdresse = new dojox.grid.DataGrid({
                            store: this.adresseStore,
                            query : "?idClient="+this.idClientActif,//voila le query
                            clientSort: true,
                            clientFetch : true,
                            rowSelector: '20px',
                            queryOptions:"{cache:true}",
                            structure: objLayout,
                            style:"width: 40em; height: 15em;"
                        },document.createElement('div'));

  4. #4
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Re,

    J'ai un peu regardé le code du grid, et clairement c'est impossible: quand tu ajoutes une ligne au store, alors elle est automatiquement ajoutée aux stores liés. Il n'y a aucune vérification de validité.

    ERE
    Quand une tête pense seule, elle devient folle.

  5. #5
    Membre régulier Avatar de devkaty
    Inscrit en
    Mai 2009
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 174
    Points : 96
    Points
    96
    Par défaut
    Citation Envoyé par emmanuel.remy Voir le message
    Re,

    J'ai un peu regardé le code du grid, et clairement c'est impossible: quand tu ajoutes une ligne au store, alors elle est automatiquement ajoutée aux stores liés. Il n'y a aucune vérification de validité.

    ERE
    Il y n'a pas moyen de faire la vérification au niveau grid ? ou bien un filtrage ?

  6. #6
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Sauf à recharger les grids après chaque insertion...

    ERE
    Quand une tête pense seule, elle devient folle.

  7. #7
    Membre régulier Avatar de devkaty
    Inscrit en
    Mai 2009
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 174
    Points : 96
    Points
    96
    Par défaut
    Citation Envoyé par emmanuel.remy Voir le message
    Sauf à recharger les grids après chaque insertion...

    ERE
    Ca ne va pas marché par ce que je peux faire plusieurs newItem et deleteItem sur les grid sans faire le store.save() et si je recharge les grids alors je vais perdre les modifs !!!!!

  8. #8
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Re,

    Tu peux redéfinir la fonction _onNew de la grid qui te pose souci, en testant au préalable la validité de l'ajout. Ainsi le store sera modifié, mais pas la grille qui n'est pas concernée. Fais ça par un dojo.extend ou plus simple peut-être:un dojo.mixin sur la grid concernée.

    ERE
    Quand une tête pense seule, elle devient folle.

  9. #9
    Membre régulier Avatar de devkaty
    Inscrit en
    Mai 2009
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 174
    Points : 96
    Points
    96
    Par défaut
    Salut,

    Ca marché en fin en redéfinissant le grid et le méthode _onNew .

    Merci Beaucoup

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 22/11/2010, 18h20
  2. Réponses: 1
    Dernier message: 30/04/2010, 17h30
  3. plusieur select avec le meme nom
    Par oughlad dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 26/05/2006, 12h09
  4. Réponses: 4
    Dernier message: 25/11/2005, 18h15
  5. Réponses: 8
    Dernier message: 06/07/2004, 14h17

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