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 :

remplissage datagrid après sélection Combobox


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 91
    Par défaut remplissage datagrid après sélection Combobox
    Bonjour,

    J'ai le script MXML suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%" showEffect="{IrisEffectId}" 
    	horizontalCenter="0" initialize="initialisation()">
     
    <!--Effet permettant de rendre les transitions de l'interface plus douces-->
    	<mx:Iris id="IrisEffectId" duration="350"/>
     
    <!-- On fait appel au fichier ActionScript contenant toutes les fonctions 
    et les packages Actionscript utilisés  -->
    	<mx:Script source="../actionscript/amfphp/affichage.as"/>
     
    <!-- RemoteObject: accès service distant AMFPHP -->
    	<mx:RemoteObject id="ROService"	showBusyCursor="true" 
    		source="classif_amfphp.traitement" destination="amfphp">	<!-- modifier la source (répertoire.fichier.php)-->	
    		<mx:method name="getDerniereMaj" result="getDerniereMajResult(event)"/>
    		<mx:method name="getNombreMaj" result="getNombreMajResult(event)"/>
    		<mx:method name="getNombreSitesMaj" result="getNombreSitesMajResult(event)"/>
    		<mx:method name="getDatesMajPonct" result="getDatesMajPonctResult(event)"/>
    		<mx:method name="getParcSelonDate" result="getParcSelonDateResult(event)"/>
    	</mx:RemoteObject>
     
    <!-- Présentation graphique -->
    <mx:TitleWindow title="Transfert du fichier à mettre à jour" horizontalCenter="0" y="280" width="700" height="480" alpha="0.82">
    	<mx:titleIcon>@Embed(source='../css/icones/IconContact.png')</mx:titleIcon>
    	<mx:HBox horizontalCenter="0" y="245">
    		<mx:Label text="La dernière mise à jour semestrielle date du: {getDerniereMajLabel}." styleName="texteNormal"/>
    	</mx:HBox>	
    	<mx:HBox horizontalCenter="0" y="245">
    		<mx:Label text="A ce jour il y a eu: {getNombreMajLabel} mises à jour ponctuelles pour {getNombreSitesMajLabel} sites radio." styleName="texteNormal"/>
    	</mx:HBox>	
    	<mx:HBox horizontalCenter="0" y="245">
    		<mx:Label text="Les différents ajustements qu'il y a eu du: {getDerniereMajLabel} à ce jour sont les suivants:" styleName="texteNormal"/>	
    		<!--PS: &apos; expression pour afficher une apostrophe-->
    	<mx:ComboBox id="datesMaj" dataProvider="{getDatesMajPonctAC}" prompt="Selectionnez une date"
    					labelField="dateMaj"/>
    	</mx:HBox>
     
    	<mx:DataGrid dataProvider="{getParcSelonDateAC}" id="datagrid_parcSelonDate" verticalCenter="20" 
    		alternatingItemColors="[#ffffff, #00A5B9]" backgroundAlpha="0.6" height="156" width="229" left="148" themeColor="#F37021" selectionColor="0xf37021">
    		<mx:columns>
    			<!--dataField correspond au champ de la table qu'on souhaite afficher-->
    			<mx:DataGridColumn headerText="Date de MàJ" dataField="dateMaj" width="100"/> 
    			<mx:DataGridColumn headerText="Priorité" dataField="priorite_finale" width="70"/>
    			<mx:DataGridColumn headerText="TotalPriorités" dataField="totalChaquePrio" width="110"/>
    		</mx:columns>
    	</mx:DataGrid>
    </mx:TitleWindow>
     
    <mx:Label text="Récapitulatif des différentes actions" styleName="titre2" id="label2" horizontalCenter="0" y="245"/>
     
    </mx:Canvas>
    Mon fichier "affichage.as" est le suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    // ActionScript file
    import mx.collections.ArrayCollection;
    import mx.rpc.events.ResultEvent;
     
    // variable liée, récupération des données
     
    [Bindable]
    private var getRequetesRegionsAC: ArrayCollection;
    [Bindable]
    private var getDatesMajPonctAC: ArrayCollection;
    [Bindable]
    private var getTableFinalAC: ArrayCollection;
    [Bindable]
    private var getParcSelonDateAC: ArrayCollection;
    [Bindable]
    private var getDerniereMajLabel : String;
    [Bindable]
    private var getNombreMajLabel : String;
    [Bindable]
    private var getNombreSitesMajLabel : String;
     
     
    // initialisation de l'application
    // Etape très importante, sans initialisation les données ne sont pas affichées
    private function initialisation():void
    {
    	ROService.getRequetesRegions();
    	ROService.getTableFinal();
    	ROService.getDerniereMaj();
    	ROService.getNombreMaj();
    	ROService.getNombreSitesMaj();
    	ROService.getDatesMajPonct();
    	ROService.getParcSelonDate();
     
    	}
     
    // méthode de récupération du contenu de la table des mises à jour
    private function getRequetesRegionsResult(evt:ResultEvent):void
    {
    	getRequetesRegionsAC = ArrayCollection(evt.result);
    }
     
    // méthode de récupération du contenu de la table final
    private function getTableFinalResult(evt:ResultEvent):void
    {
    	getTableFinalAC = ArrayCollection(evt.result);
    }
     
    // méthode de récupération du contenu de la table final
    private function getParcSelonDateResult(evt:ResultEvent):void
    {
    	getParcSelonDateAC = ArrayCollection(evt.result);
    }
     
    /*recupere le resultat de la fonction php getOperateur et la stocke dans operateurAC*/
    private function getDatesMajPonctResult(evt:ResultEvent):void
    {
    	getDatesMajPonctAC = ArrayCollection(evt.result);
    }
     
    // méthode de récupération du contenu de la table derniereMaj
    private function getDerniereMajResult(evt:ResultEvent):void
    {
    	getDerniereMajLabel = evt.result[0].dateDerniereMaj;
    }
     
    // récupération du nombre de mises à jour ponctuelles
    private function getNombreMajResult(evt:ResultEvent):void
    {
    	getNombreMajLabel = evt.result[0].nombreMaj;
    }
     
    // récupération du nombre de sites mises à jour ponctuellement
    private function getNombreSitesMajResult(evt:ResultEvent):void
    {
    	getNombreSitesMajLabel = evt.result[0].nombreSitesMaj;
    }
     
    private function ouvrir(adresse:String):void
     		{     
     			var url:URLRequest = new URLRequest('http://expresso/classif/test/flex/uploads/'+adresse);        
     			navigateToURL(url) ;
     		}
    Ma fonction "getParcSelonDateAC" est contenu dans ma classe PHP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
    class traitement{
    function getParcSelonDate($dateMaj)
    	{
    	$hostname = "localhost";
    	$database = "***"; 
    	$username = "***";
    	$password = "***"; 
    	$db = mysql_pconnect($hostname, $username, $password) or die ("Impossible de se connecter à la base de données, veuillez vérifier les informations de connexion"); 
    	mysql_select_db($database,$db);
     
    	$date = date("Y-m-d");
    	return mysql_query("SELECT * 
    						FROM evolutionparc
    						WHERE dateMaj = ".$dateMaj."");
    	}
    }
    ?>
    J'aimerais qu'en fonction de ce qui a été sélectionné dans mon combobox, la fonction "getParcSelonDate" soit exécutée et le résultat soit retourné dans mon datagrid ayant l'id="datagrid_parcSelonDate".

    Comment pourrais-je procéder? merci de votre aide.

    Cordialement.

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Par défaut
    J'aimerais qu'en fonction de ce qui a été sélectionné dans mon combobox, la fonction "getParcSelonDate" soit exécutée et le résultat soit retourné dans mon datagrid ayant l'id="datagrid_parcSelonDate".
    Bonsoir,

    Je t'invite à regarder la documentation de ComboBox.
    En utilisant, l'evènement change tu pourras appeler ta méthode. Je ne vois pas ce qu'il y a de compliqués ou j'ai mal compris ?

Discussions similaires

  1. Afficher message après sélection d'un ComboBox
    Par cisco.nat dans le forum Débuter
    Réponses: 26
    Dernier message: 07/08/2013, 13h25
  2. [XL-2003] Sortir d'une combobox après sélection.
    Par hyalis dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/04/2012, 10h14
  3. [OpenOffice][Base de données] Récupérer les données aprés sélection dans une combobox
    Par frack dans le forum OpenOffice & LibreOffice
    Réponses: 1
    Dernier message: 06/02/2009, 09h27
  4. Réponses: 3
    Dernier message: 27/11/2008, 17h57
  5. [VB.NET] Recuperer numero ligne dans DATAGRID apres event
    Par stephane93fr dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/01/2005, 11h58

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