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

Flex Discussion :

récupérer un attribut dans ArrayCollection d'un type complexe [Flex3]


Sujet :

Flex

  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 91
    Par défaut récupérer un attribut dans ArrayCollection d'un type complexe
    Bonjours,
    Je suis encore en train de me battre avec mes ArrayCollection d'un type complexe.
    J'ai une ArrayCollection d'un type appel sous la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    maListeAppel=new ArrayCollection([
    			 {appel:appel1},
    			 {appel:appel2},
    			 {appel:appel3}]);
    dont les variables appel sont des classes composées de plusieurs attributs.
    J'aimerais pouvoir récupérer un attribut de la classe appel, mais je n'y arrive pas lorsque je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var itemAppel:Appel =maListeAppel.getItemAt(i).appel;
    				var statut:String =itemAppel.getStatutAppel();
    Où getStatutAppel est une fonction de la classe appel. Cela ne me renvoi rien du tout et fait même planter mon programme, plus rien ne s'affiche!
    Je ne vois pas comment récupérer l'attribut statut.
    Merci

  2. #2
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 91
    Par défaut
    j'ai un peu avancé le problème mais ça ne marche toujours pas. J'ai fais la fonction suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public function getListeDesAppelsEnAttente():ArrayCollection{
    				var listeAppelAttente:ArrayCollection = new ArrayCollection();
    				var i:int;
    				i = 0;
    						for(i; i <=listeDesAppels.length-1; i++){
    							var appelEnAttente:Appel=listeDesAppels.getItemAt(i).appel;
    							if(appelEnAttente.getStatutAppel()=="en attente"){
    								var o:Object = {appel: appelEnAttente}; 
    								listeAppelAttente.addItemAt(o,0);
    							}
    						} 
     
    				return listeAppelAttente;
    			}
    le problème c'est lorsque je fais à l'intérieur de la fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Alert.show(listeAppelAttente.getItemAt(0).appel.getQualification());
    sa m'affiche quelque chose mais si je récupére l'arraycollection que renvoi la fonction et que je refais la même chose j'ai plus rien!! Je n'y comprend plus rien!!!

  3. #3
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 91
    Par défaut
    J'ai finalement réussi à trouver voilà ma function pour ceux que sa intéresse :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public function getListeDesAppelsEnAttente():ArrayCollection{
    				var listeDesAppelsAttente:ArrayCollection  = new ArrayCollection();
    				var j:int;
    				for(j=0; j<= listeDesAppels.length-1; j++){
    					if(listeDesAppels.getItemAt(j).appel.getStatutAppel()=="en attente"){
    						listeDesAppelsAttente.addItem(listeDesAppels.getItemAt(j,0));
    					}					
    				}
    				return listeDesAppelsAttente;
    			}

  4. #4
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Merci d'avoir posté votre réponse.

  5. #5
    Membre expérimenté Avatar de samy2525
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 259
    Par défaut
    Bonjour, simple curiosité tes objets appel&, appel2, appel3 sont différents ou c'est les mêmes objets dans le sens ou ils contiennent les mêmes attributs

  6. #6
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 91
    Par défaut
    mes objets appel1, appel2 et appel3 ont plusieurs attribut, par exemple un attribut numéro d'appel qui a une valeur différente pour chacun d'entre eux. Sa répond à ta question?

  7. #7
    Membre expérimenté Avatar de samy2525
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 259
    Par défaut
    En faite, je voulais te parler plus c'est un probleme de modélisation qui va te faire grave facilité la vie.

    quand tu dis ils ont des attributs différents ça veut dire qu'ils ont aucun point de ressemblance et que veut dire ils n'ont pas la même signification / appellation ....

    Pour moi appel 1 2 3 sont pareils et ils aux moins des attributs en commun comme exemple statut du coup tu peux faire une classe Appel qui contient tous les attributs en commun et la faire hériter.

    ou bien je n'ai pas trop compris ta modélisation

    Samy

  8. #8
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 91
    Par défaut
    J'ai déjà fait une classe Appel qui regroupe les différents attributs de mes appel1, 2 et 3.
    Enfaite je fais un logiciel avec une "base de données" sous forme d'ArrayCollection. Donc si tu veux mes variables appel1, 2 et 3 on été instancié avec un constructeur de la classe appel.

  9. #9
    Membre expérimenté Avatar de samy2525
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 259
    Par défaut
    Désolé pas bien compris ton code !!! après ton dernier poste et avec la doc Array d'adobe je vois un peu claire.

    ok, en faite, tu pouvais faire quelque chose comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var c : ArrayCollection = new ArrayCollection();
    c.addItem(new Appel(argument ));
    c.addItem(new Appel(argument ));
    c.addItem(new Appel(argument ));
    le parcours tu peux faire comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var tmpAppel:Appel;
    for each (tmpAppel in c)
    {
        if(tmpAppel && tmpAppel.getstatut==(" ")){
            tu fais ton traitement normal
        }
    }
    voila voila j'espère t'avoir donner un peu plus d'info

    Bon courage

    Samy

  10. #10
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 91
    Par défaut
    enfaite non pas tout à fait, j'ai du mal expliquer c'est comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    appel1 = new Appel(dateDuJour,"Urgent","18h30");
    maListeAppel=new ArrayCollection([
    			 {appel:appel1} ...
    Pareil pour 2 et 3 sauf qu'ils sont instancié avec des valeurs différentes.
    Tu as compris?

  11. #11
    Membre expérimenté Avatar de samy2525
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 259
    Par défaut
    j'ai mis à jour le poste précédent

    Bon courage

  12. #12
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mai 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 91
    Par défaut
    merci je vais essayé de faire ce que tu m'as dit ça fait peut être plus propre.

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

Discussions similaires

  1. [JAX-WS] Récupérer du XML dans un paramètre de type String
    Par verbose dans le forum Services Web
    Réponses: 0
    Dernier message: 01/07/2014, 17h19
  2. Récupérer l'URL dans un fichier de type .url
    Par Baud10 dans le forum Services Web
    Réponses: 1
    Dernier message: 11/09/2008, 18h33
  3. Récupérer une url dans un input de type file
    Par kluck3000 dans le forum Langage
    Réponses: 2
    Dernier message: 20/02/2008, 04h21
  4. Réponses: 2
    Dernier message: 29/05/2007, 16h49
  5. [Excel] Récupérer le texte dans un shape de type zonedetext
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/12/2005, 11h00

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