2009-08-21 9 views
0

Je suis impatient de charger plusieurs tables sur une page flexible et je n'arrive pas à comprendre comment utiliser plusieurs objets distants.Froid coldfusion et plusieurs objets distants

Ci-dessous mon coldfusion

<cfcomponent output="false">  
<cffunction name="getVacancies" access="remote" returntype="query">  
    <cfset var = qRead ="" /> 
    <cfquery datasource="sqlexpress" name="qRead">  
     SELECT Status, SFIELD6 
     FROM dbo.VacantSumm 
    </cfquery> 
    <cfreturn qRead /> 
</cffunction> 
<cffunction name="getVacancyTotals" access="remote" returntype="query"> 
    <cfset var = vRead =""/> 
    <cfquery datasource="sqlexpress" name="vRead"> 
     select Total, Status 
     from dbo.VacancyTotal 
    </cfquery> 
    <cfreturn vRead /> 
</cffunction> 

et maintenant pour mon AS:

import mx.collections.ArrayCollection; 
import mx.rpc.events.ResultEvent; 
      [Bindable] 
      private var acVacancies:ArrayCollection; 
      private var VacancyTotals:ArrayCollection; 


      private function initApp():void 
      { 
       VacancyGateway_RO.getVacancies(); 
       VacancyGateway_RO.getVacancyTotals(); 

      } 
      private function getVacanciesRO_Handler(event:ResultEvent):void 
      { 
       acVacancies = ArrayCollection(event.result); 
      } 
      private function getVacancyTotalsRO_Handler(event:ResultEvent):void 
      { 
       VacancyTotals = ArrayCollection(event.result); 
      } 

Je sais un peu où mon est, je crois. les deux arraycollections, n'importe quelle aide sur ceci serait grande et fortement appréciée.

Répondre

0

Il semble que vos définitions d'objets distants ne figurent pas dans l'extrait AS ci-dessus. Les créez-vous dans une autre section du code? Si oui, veuillez ajouter juste cette partie afin que nous puissions voir comment vous créez l'objet. Vous ne mentionnez pas quelle erreur vous obtenez, le cas échéant; ce serait utile de savoir aussi bien. Je vois aussi que vous n'avez pas besoin de créer une instance distincte RemoteObject pour chaque méthode dans votre CFC. Une seule instance fonctionnera pour chacun d'entre eux, à condition d'ajouter un élément method pour chaque fonction. Par exemple:

<mx:RemoteObject 
    id="VacancyGateway_RO" 
    destination="ColdFusion" 
    source="wherever.your.CFC.is.located"> 

    <mx:method name="getVacancies" result="getVacanciesRO_Handler(event)" 
     fault="mx.controls.Alert.show(event.fault.faultString)"/> 
    <mx:method name="getVacancyTotals" result="getVacancyTotalsRO_Handler()" 
     fault="mx.controls.Alert.show(event.fault.faultString)"/> 
</mx:RemoteObject> 

Je ne mentionne que récemment parce que je travaillais sur un projet où le développeur précédent (s) a créé un RemoteObject pour chaque méthode qu'ils ont appelé ... et il y avait beaucoup de méthodes dans certains des CFC.

Questions connexes