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 :

Statistiques en flex


Sujet :

Flex

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 64
    Par défaut Statistiques en flex
    Bonjour
    Nom : statistique çava pas.png
Affichages : 70
Taille : 11,1 Ko
    je veux remplir un datagrid et un pie chart en flex à partir d'un service java avec une liste de nombres de tickets pour chaque type de status suite à un clic sur un boutton , mon problème est que j'ai parvenu à récupérer chaque nombre à part et lorsque je l'affiche dans des labels c'est correct mais lorsque je mes tous ces nombres dans une liste coté flex pour que je puisse remplir un datagrid ne varient pas lors du clic sur le boutton ,la datagrid reste remplie avec des 0 (ce sont les valeurs initiales)je reste bloqueé car j'ai pas su comment je dois faire un refresh au datagrid vous trouverez ci joint un genre de truc que je veux obtenir(datagrid rempli par de stattistique) et ce que j'ai obtenu avec mon travail (juste des labels séparés et si j'essaie de remplir un datagrid il reste remplie par des 0) Nom : statistique çava pas.png
Affichages : 70
Taille : 11,1 Ko
    voilà mon code flex
    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
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    <?xml version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
    			   xmlns:s="library://ns.adobe.com/flex/spark" 
    			   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" xmlns:services="services.*">
    	<fx:Declarations>
    		<services:TicketServiceImpl id="ticketServiceImpl"
    									fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)"
    									showBusyCursor="true">
    			<services:channelSet>
    				<s:ChannelSet>
    					<s:AMFChannel uri="http://localhost:8080/SmartSupport/messagebroker/amf"/>
    				</s:ChannelSet>
    			</services:channelSet>
    		</services:TicketServiceImpl>
    		<s:CallResponder id="countTotalTicketGeneralResult"/>
    		<s:CallResponder id="countTotalTicketGeneralResult2"/>
    		<s:CallResponder id="countTicketResolvedResult"/>
    		<s:CallResponder id="countTicketInvalidResult"/>
    		<s:CallResponder id="countTicketInProgressResult"/>
    		<s:CallResponder id="countTicketClosedResult"/>
    		<s:CallResponder id="countHighTicketResult"/>
    		<s:CallResponder id="countHighTicketResult2"/>
    		<s:CallResponder id="countLowTicketResult"/>
    		<s:CallResponder id="countNormalTicketResult"/>
    		<s:CallResponder id="countTotalTicketGeneralResult3"/>
    		<s:CallResponder id="countTicketByProjectResult"/>
    		<s:CallResponder id="countTicketByProjectResult2"/>
    		<s:CallResponder id="countTicketByBIResult"/>
    		<s:CallResponder id="countTicketByStatusResult"/>
    	</fx:Declarations>
    	<fx:Script>
    		<![CDATA[	
    			import mx.collections.ArrayCollection;
    			import mx.controls.Alert;
    			import mx.events.CalendarLayoutChangeEvent;
    			import mx.events.FlexEvent;
    			import mx.rpc.events.ResultEvent;
     
    			import spark.events.IndexChangeEvent;
    			[Bindable]
    			var startDate:Date;
    			[Bindable]
    			var endDate:Date; 
     
     
    			[Bindable]
    			var total:Number=0;
     
    			[Bindable]
    			var NbreTicketsResolved:Number=0;
     
    			[Bindable]
    			var NbreTicketsInvalid:Number=0;
     
    			[Bindable]
    			var NbreTicketsInProgress:Number=0;
     
    			[Bindable]
    			var NbreTicketsClosed:Number=0;
     
    		    [Bindable]
    			private var  AC:ArrayCollection = new ArrayCollection( [
    				{ Metrics: "Resolved", Number:NbreTicketsResolved },
    				{ Metrics: "Invalid", Number: NbreTicketsInvalid },
    				{ Metrics: "Closed", Number: NbreTicketsClosed},
    				{ Metrics: "In Progress",Number: NbreTicketsInProgress},
    				{ Metrics: "Total", Number:NbreTicketsClosed}]); 
     
     
     
     
     
    			[Bindable]
    			private var listTicketsByStatus:ArrayCollection;
     
    			private function getTotalTicket(evt:ResultEvent):void
    			{
    				total=Number(evt.result);
    				Alert.show("total"+total);
     
    			}
     
    			private function getTicketResolved(evt:ResultEvent):void
    			{
    				NbreTicketsResolved=Number(evt.result);
    				Alert.show("NbreTicketsResolved"+NbreTicketsResolved);
     
     
    			}
    			private function getTicketInvalid(evt:ResultEvent):void
    			{
    				NbreTicketsInvalid=Number(evt.result);
    				Alert.show("NbreTicketsInvalid"+NbreTicketsInvalid);
     
    			}
     
    			private function getTicketInProgress(evt:ResultEvent):void
    			{
    				NbreTicketsInProgress=Number(evt.result);
    				Alert.show("NbreTicketsNbreTicketsInProgress"+NbreTicketsInProgress);
     
    			}
     
    			private function getTicketClosed(evt:ResultEvent):void
    			{
    				NbreTicketsClosed=Number(evt.result);
    				Alert.show("NbreTicketsClosed"+NbreTicketsClosed);
     
    			}
     
     
    		 	protected function button2_clickHandler(event:MouseEvent):void
    			{
    				startDate=StartDateField.selectedDate;
    				endDate=EndDateField.selectedDate;
    				countTotalTicketGeneralResult2.addEventListener(ResultEvent.RESULT,getTotalTicket);
    				countTotalTicketGeneralResult2.token = ticketServiceImpl.countTotalTicketGeneral(startDate,endDate);
    				countTicketResolvedResult.addEventListener(ResultEvent.RESULT,getTicketResolved);
    				countTicketResolvedResult.token = ticketServiceImpl.countTicketResolved(startDate,endDate,"Resolved");
    				countTicketInvalidResult.addEventListener(ResultEvent.RESULT,getTicketInvalid);
    				countTicketInvalidResult.token = ticketServiceImpl.countTicketInvalid(startDate,endDate,"Invalid");
    				countTicketInProgressResult.addEventListener(ResultEvent.RESULT,getTicketInProgress);
    				countTicketInProgressResult.token = ticketServiceImpl.countTicketInProgress(startDate,endDate,"In progress");
    				countTicketClosedResult.addEventListener(ResultEvent.RESULT,getTicketClosed);
    				countTicketClosedResult.token = ticketServiceImpl.countTicketClosed(startDate, endDate,"Closed"); 			
    			}
     
     
     
     
     
    		]]>
    	</fx:Script>
    	<mx:TabNavigator width="100%" height="100%" resizeToContent="true">
    		<s:NavigatorContent width="100%" height="100%" label="Tickets By status">
    			<s:Label x="17" y="252" width="188" height="44" fontFamily="Georgia" fontSize="16"
    					 fontWeight="bold" text="Total  :"/>
    			<s:Label x="183" y="252" width="22" text="{total}"/>
    			<mx:DateField id="StartDateField" x="112" y="10" width="151"/>
    			<mx:DateField id="EndDateField"  x="752" y="13" width="153"/>
    			<s:Label x="17" y="9" width="61" height="22" fontFamily="Georgia" fontWeight="bold"
    					 text="From"/>
    			<s:Label x="713" y="13" width="40" height="22" fontFamily="Georgia" fontWeight="bold"
    					 text="To"/>
    			<s:Button id="statisticsbuttn" x="422" y="37" width="132" label="Generate statistics" click="button2_clickHandler(event)"/>
    			<s:Label x="10" y="117" width="139" fontFamily="Georgia" fontSize="16"
    					 fontWeight="normal" text="&#xd; Tickets Resolved "/>
    			<s:Label x="185" y="137" width="21" text="{NbreTicketsResolved}"/>
    			<s:Label x="594" y="135" fontFamily="Georgia" fontSize="16" fontWeight="normal"
    					 text="Tickets Invalid "/>
    			<s:Label x="957" y="133" width="22" text="{NbreTicketsInvalid}"/>
    			<s:Label x="12" y="183" fontFamily="Georgia" fontSize="16" fontWeight="normal"
    					 text="Tickets Closed "/>
    			<s:Label x="185" y="183" width="22" text="{NbreTicketsClosed}"/>
    			<s:Label x="594" y="189" fontFamily="Georgia" fontSize="16" fontWeight="normal"
    					 text="Tickets In Progress  "/>
    			<s:Label x="958" y="189" width="22" text="{NbreTicketsInProgress}"/>
    			<s:DataGrid x="356" y="293" width="178" height="165" dataProvider="{AC}"
    						requestedRowCount="4">
     
    			</s:DataGrid>
    		</s:NavigatorContent>
     
    	</mx:TabNavigator>
    </s:Application>
    et voilà mes services java
    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
    public Number countTotalTicketGeneral(Date start, Date end) {
    		String query = "select count(ticket.id) from TicketEntity ticket where ticket.dateCreation between :debut and :fin";
    		javax.persistence.Query q = ticketDao.getEntityManager().createQuery(query);
    		q.setParameter("debut", start);
    		q.setParameter("fin", end);
    		Number countResult = (Number)q.getSingleResult();
    		System.out.println("Count total ticket result:" + countResult);
    		return countResult;
    	}
     
    	public Number countTicketResolved(Date start, Date end,String resolved)
     
    	{
    		String query = "select count(ticket.id) from TicketEntity ticket where lower(ticket.status)='"+resolved.toLowerCase()+"'"+" and ticket.dateCreation >= :debut and ticket.dateCreation<= :fin";
    		javax.persistence.Query q = ticketDao.getEntityManager().createQuery(query);
    		q.setParameter("debut", start);
    		q.setParameter("fin", end);
    		Number countResult = (Number)q.getSingleResult();
    		System.out.println("Count resolved ticket result:" + countResult);
    		return countResult;
    	}
     
    	public Number countTicketInvalid(Date start, Date end,String invalid)
     
    	{
     
    		String query = "select count(ticket.id) from TicketEntity ticket where lower(ticket.status)='"+invalid.toLowerCase()+"'"+" and ticket.dateCreation >= :debut and ticket.dateCreation<= :fin";
    		javax.persistence.Query q = ticketDao.getEntityManager().createQuery(query);
    		q.setParameter("debut", start);
    		q.setParameter("fin", end);
    		Number countResult = (Number) q.getSingleResult();
    		System.out.println("Count invalid ticket result:" + countResult);
    		return countResult;
    	}
     
    	public Number countTicketClosed(Date start, Date end,String closed)
     
    	{
    		String query = "select count(ticket.id) from TicketEntity ticket where lower(ticket.status) ='"+closed.toLowerCase()+"'"+" and ticket.dateCreation between :debut and :fin";
    		javax.persistence.Query q = ticketDao.getEntityManager().createQuery(
    				query);
    		q.setParameter("debut", start);
    		q.setParameter("fin", end);
    		Number countResult = (Number) q.getSingleResult();
    		System.out.println("Count closed ticket result:" + countResult);
    		return countResult;
    	}
     
    	public Number countTicketInProgress(Date start, Date end,String In_Progress)
     
    	{
    		String query = "select count(ticket.id) from TicketEntity ticket where lower(ticket.status) ='"+In_Progress.toLowerCase()+ "'"+" and ticket.dateCreation between :debut and :fin";
    		javax.persistence.Query q = ticketDao.getEntityManager().createQuery(query);
    		q.setParameter("debut", start);
    		q.setParameter("fin", end);
    		Number countResult = (Number) q.getSingleResult();
    		System.out.println("Count closed ticket result:" + countResult);
    		return countResult;
    	}
    Images attachées Images attachées  

Discussions similaires

  1. Analyseur de code (statistique)
    Par Boons dans le forum Choisir un environnement de développement
    Réponses: 9
    Dernier message: 13/08/2003, 12h22

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