remplissage datagrid après sélection Combobox
Bonjour,
J'ai le script MXML suivant:
Code:
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: ' 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:
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:
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.