[flexcoders] Re: calling a cfc from flex

2006-02-22 Thread rgwilson26
First of all I want to say thanks for your help on the last few 
posts. I think I am almost there. 

I have my CFC now returning a query and have eliminated all errors. 
But, when I trigger my click event it seems to return the query in my 
DG however no text is visible (when you scroll over the DG it 
highlights each item, but not text is visible). 

Also, since I am now returning a wuery I no longer need to loop over 
query result and insert each record into an individual structure and 
append that to an array...correct? (or is that still necessary?) I 
did configure my CFC both ways though and got the same result...a DG 
with no text, but obvisouly filled with somthing do to highlighting.

I have posted what I have so far.

Thanks,



  getPersonnel.cfc

cfcomponent displayname=getPersonnel
cffunction name=getPersonnel access=remote returntype=query

  cfquery name=getAllPersonnel datasource=spotDB
  SELECT *
  FROM dbo.ItemsInvolvedLOV
  /cfquery

  cfreturn getAllPersonnel
  /cffunction
  /cfcomponent


   personnelNeeded.MXML

mx:Script
![CDATA[
public var dp:Array;

private function doResult(result:Array):Void {
 dp = result;
 }
]]
/mx:Script



   Remote Object

mx:RemoteObject id=ro
endpoint=http://IPADDRESS:PORT#/flashservices/gateway;
  source=cfdocs.components.getPersonnel
   fault=mx.controls.Alert.show
(event.fault.faultstring, 'Error')
 showBusyCursor=true
mx:method name=getPersonnel result=doResult
(event.result._items)/

/mx:RemoteObject



   Datagrid


mx:DataGrid id=dgPersonnelNeeded
height=300 width=100% dataProvider={dp}
mx:columns
mx:Array
mx:DataGridColumn headerText=Name columnName=ITEMID
width=225 /
mx:DataGridColumn headerText=Title columnName=ITEMTITLE
width=650/
mx:DataGridColumn headerText=Date columnName=ITEMDATE
width=100 /
/mx:Array
/mx:columns
/mx:DataGrid

mx:Button label=Get Records width=100
click={ro.getPersonnel()}/





--- In flexcoders@yahoogroups.com, João Fernandes [EMAIL PROTECTED] 
wrote:

 The error is the type you returned. You typed as string when its or 
an array (of structs) or a query. Even in CF you'll have that error 
it's not on the Flex side the problem, is your return type in your 
CFC. 
 
 João Fernandes
 Sistemas de Informação
 
 Programador Informático
 Cofina media
 
 Avenida João Crisóstomo, Nº 72 . 1069-043 Lisboa PORTUGAL
 Tel (+351) 213 185 200 . Fax (+351) 213 540 370
 [EMAIL PROTECTED]
 
 -Original Message-
 From: flexcoders@yahoogroups.com 
[mailto:[EMAIL PROTECTED] On Behalf Of rgwilson26
 Sent: terça-feira, 21 de Fevereiro de 2006 15:32
 To: flexcoders@yahoogroups.com
 Subject: [flexcoders] Re: calling a cfc from flex
 
 OK, I glad to know there is a way to just return a straight query 
 from a CFC...that is good to know. I did change my columnName in my 
 DG to all caps (is this still necessary in MX7?) and made changes 
to 
 my ActionScript code, however I am still getting a value from 
 getPersonnel() of not type string error. 
 
 Do I no longer need an array of structures in my CFC, and just 
return 
 a query result? Or, do I still need to put the results of the query 
 into an array of structures? I did try both ways however in my CFC, 
 and am still getting the same error regardless. 
 
 This is what I have:
 
 
  getPersonnel.cfc
 
 cfcomponent displayname=getPersonnel
 cffunction name=getPersonnel access=remote returntype=string
   
  cfset var arrayResult = ArrayNew(1)/
   
  cfquery name=getAllPersonnel datasource=spotDB
  SELECT * 
  FROM dbo.ItemsInvolvedLOV
  /cfquery
   
  cfoutput query=getAllPersonnel
  cfset structPersonnel = StructNew()/
  cfset structPersonnel[ItemId] = #getAllPersonnel.ItemId#
  cfset structPersonnel[ItemType] = #getAllPersonnel.ItemType#
  cfset structPersonnel[ItemName] = #getAllPersonnel.ItemName#
  cfset arrayAppend(arrayResult,structPersonnel)/ 
  /cfoutput
  
  cfreturn getAllPersonnel
  /cffunction
  /cfcomponent
 
 
   personnelNeeded.MXML
 
 mx:Script 
 ![CDATA[ 
public var dp:Array;
   
private function doResult(result:Array):Void {
   dp = result;
   }
 ]] 
 /mx:Script 
  
 
 
   Remote Object
  
 mx:RemoteObject id=ro 
  endpoint=http://IPADDRESS:PORT#/flashservices/gateway;  
source=cfdocs.components.getPersonnel
 fault=mx.controls.Alert.show
 (event.fault.faultstring, 'Error') 
   showBusyCursor=true
 mx:method name=getPersonnel result=doResult
 (event.result._items)/
   
 /mx:RemoteObject
 
 
 
   Datagrid

RE: [flexcoders] Re: calling a cfc from flex

2006-02-22 Thread João Fernandes
Hi again,

When using query as return type you don't need to set columnName in your 
datagridColumn in uppercase. Uppercase is just when referencing to structures 
returned from coldfusion.

João Fernandes
Sistemas de Informação

Programador Informático
Cofina media

Avenida João Crisóstomo, Nº 72 . 1069-043 Lisboa PORTUGAL
Tel (+351) 213 185 200 . Fax (+351) 213 540 370
[EMAIL PROTECTED]

-Original Message-
From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of 
rgwilson26
Sent: quarta-feira, 22 de Fevereiro de 2006 14:04
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Re: calling a cfc from flex

First of all I want to say thanks for your help on the last few 
posts. I think I am almost there. 

I have my CFC now returning a query and have eliminated all errors. 
But, when I trigger my click event it seems to return the query in my 
DG however no text is visible (when you scroll over the DG it 
highlights each item, but not text is visible). 

Also, since I am now returning a wuery I no longer need to loop over 
query result and insert each record into an individual structure and 
append that to an array...correct? (or is that still necessary?) I 
did configure my CFC both ways though and got the same result...a DG 
with no text, but obvisouly filled with somthing do to highlighting.

I have posted what I have so far.

Thanks,



  getPersonnel.cfc

cfcomponent displayname=getPersonnel
cffunction name=getPersonnel access=remote returntype=query

  cfquery name=getAllPersonnel datasource=spotDB
  SELECT *
  FROM dbo.ItemsInvolvedLOV
  /cfquery

  cfreturn getAllPersonnel
  /cffunction
  /cfcomponent


   personnelNeeded.MXML

mx:Script
![CDATA[
public var dp:Array;

private function doResult(result:Array):Void {
 dp = result;
 }
]]
/mx:Script



   Remote Object

mx:RemoteObject id=ro
endpoint=http://IPADDRESS:PORT#/flashservices/gateway;
  source=cfdocs.components.getPersonnel
   fault=mx.controls.Alert.show
(event.fault.faultstring, 'Error')
 showBusyCursor=true
mx:method name=getPersonnel result=doResult
(event.result._items)/

/mx:RemoteObject



   Datagrid


mx:DataGrid id=dgPersonnelNeeded
height=300 width=100% dataProvider={dp}
mx:columns
mx:Array
mx:DataGridColumn headerText=Name columnName=ITEMID
width=225 /
mx:DataGridColumn headerText=Title columnName=ITEMTITLE
width=650/
mx:DataGridColumn headerText=Date columnName=ITEMDATE
width=100 /
/mx:Array
/mx:columns
/mx:DataGrid

mx:Button label=Get Records width=100
click={ro.getPersonnel()}/





--- In flexcoders@yahoogroups.com, João Fernandes [EMAIL PROTECTED] 
wrote:

 The error is the type you returned. You typed as string when its or 
an array (of structs) or a query. Even in CF you'll have that error 
it's not on the Flex side the problem, is your return type in your 
CFC. 
 
 João Fernandes
 Sistemas de Informação
 
 Programador Informático
 Cofina media
 
 Avenida João Crisóstomo, Nº 72 . 1069-043 Lisboa PORTUGAL
 Tel (+351) 213 185 200 . Fax (+351) 213 540 370
 [EMAIL PROTECTED]
 
 -Original Message-
 From: flexcoders@yahoogroups.com 
[mailto:[EMAIL PROTECTED] On Behalf Of rgwilson26
 Sent: terça-feira, 21 de Fevereiro de 2006 15:32
 To: flexcoders@yahoogroups.com
 Subject: [flexcoders] Re: calling a cfc from flex
 
 OK, I glad to know there is a way to just return a straight query 
 from a CFC...that is good to know. I did change my columnName in my 
 DG to all caps (is this still necessary in MX7?) and made changes 
to 
 my ActionScript code, however I am still getting a value from 
 getPersonnel() of not type string error. 
 
 Do I no longer need an array of structures in my CFC, and just 
return 
 a query result? Or, do I still need to put the results of the query 
 into an array of structures? I did try both ways however in my CFC, 
 and am still getting the same error regardless. 
 
 This is what I have:
 
 
  getPersonnel.cfc
 
 cfcomponent displayname=getPersonnel
 cffunction name=getPersonnel access=remote returntype=string
   
  cfset var arrayResult = ArrayNew(1)/
   
  cfquery name=getAllPersonnel datasource=spotDB
  SELECT * 
  FROM dbo.ItemsInvolvedLOV
  /cfquery
   
  cfoutput query=getAllPersonnel
  cfset structPersonnel = StructNew()/
  cfset structPersonnel[ItemId] = #getAllPersonnel.ItemId#
  cfset structPersonnel[ItemType] = #getAllPersonnel.ItemType#
  cfset structPersonnel[ItemName] = #getAllPersonnel.ItemName#
  cfset arrayAppend(arrayResult,structPersonnel)/ 
  /cfoutput
  
  cfreturn getAllPersonnel
  /cffunction
  /cfcomponent
 
 
   personnelNeeded.MXML
 
 mx:Script 
 ![CDATA

RE: [flexcoders] Re: calling a cfc from flex

2006-02-21 Thread João Fernandes
The error is the type you returned. You typed as string when its or an array 
(of structs) or a query. Even in CF you'll have that error it's not on the Flex 
side the problem, is your return type in your CFC. 

João Fernandes
Sistemas de Informação

Programador Informático
Cofina media

Avenida João Crisóstomo, Nº 72 . 1069-043 Lisboa PORTUGAL
Tel (+351) 213 185 200 . Fax (+351) 213 540 370
[EMAIL PROTECTED]

-Original Message-
From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of 
rgwilson26
Sent: terça-feira, 21 de Fevereiro de 2006 15:32
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Re: calling a cfc from flex

OK, I glad to know there is a way to just return a straight query 
from a CFC...that is good to know. I did change my columnName in my 
DG to all caps (is this still necessary in MX7?) and made changes to 
my ActionScript code, however I am still getting a value from 
getPersonnel() of not type string error. 

Do I no longer need an array of structures in my CFC, and just return 
a query result? Or, do I still need to put the results of the query 
into an array of structures? I did try both ways however in my CFC, 
and am still getting the same error regardless. 

This is what I have:


 getPersonnel.cfc

cfcomponent displayname=getPersonnel
cffunction name=getPersonnel access=remote returntype=string

 cfset var arrayResult = ArrayNew(1)/

 cfquery name=getAllPersonnel datasource=spotDB
 SELECT * 
 FROM dbo.ItemsInvolvedLOV
 /cfquery

 cfoutput query=getAllPersonnel
 cfset structPersonnel = StructNew()/
 cfset structPersonnel[ItemId] = #getAllPersonnel.ItemId#
 cfset structPersonnel[ItemType] = #getAllPersonnel.ItemType#
 cfset structPersonnel[ItemName] = #getAllPersonnel.ItemName#
 cfset arrayAppend(arrayResult,structPersonnel)/ 
 /cfoutput
 
 cfreturn getAllPersonnel
 /cffunction
 /cfcomponent


  personnelNeeded.MXML

mx:Script 
![CDATA[ 
   public var dp:Array;

   private function doResult(result:Array):Void {
dp = result;
}
]] 
/mx:Script 
 


  Remote Object
 
mx:RemoteObject id=ro 
   endpoint=http://IPADDRESS:PORT#/flashservices/gateway;  
 source=cfdocs.components.getPersonnel
  fault=mx.controls.Alert.show
(event.fault.faultstring, 'Error') 
showBusyCursor=true
mx:method name=getPersonnel result=doResult
(event.result._items)/

/mx:RemoteObject



  Datagrid


mx:DataGrid id=dgPersonnelNeeded headerColor=#00CC33 
height=300 textAlign=left width=100% wordWrap=true 
editable=true dataProvider={dp}
mx:columns
mx:Array
mx:DataGridColumn headerText=Name columnName=ITEMID 
width=225 /
mx:DataGridColumn headerText=Title columnName=ITEMTITLE 
width=650/
mx:DataGridColumn headerText=Date columnName=ITEMDATE 
width=100 /
/mx:Array
/mx:columns
/mx:DataGrid 

mx:Button label=Get Records  textAlign=center width=100 
click={ro.getPersonnel()}/
 






--- In flexcoders@yahoogroups.com, Stacey Mulcahy [EMAIL PROTECTED] 
wrote:

 
 Yep you'll need caps.
 
 
 -Original Message-
 From: flexcoders@yahoogroups.com 
[mailto:[EMAIL PROTECTED] On
 Behalf Of João Fernandes
 Sent: Friday, February 17, 2006 4:48 PM
 To: flexcoders@yahoogroups.com
 Subject: RE: [flexcoders] calling a cfc from flex
 
 
 Welcome first of all,
 
 I don't know if you are aware that you can return directly a query 
from the
 CFC. In flex side it will be available as event.result._items and 
you are
 able to bind it directly as an Array.
 
 In your sample you could say in cfc:
 
 cfreturn getAllPersonnel
 
 in your mxml file you could have some 
 public var dp:Array;
 private function doResult(result:Array):Void {
   dp = result;
 }
 
 in the Datagrid set the property dataProvider={dp}
 and just replace your remote object result to
 result=doResult(event.result._items)
 
 I think, if I'm not mistaken, your datagridcolumns should have 
columnName in
 upper case when dealing with CFC structures.
 
 Regards,
 
 João Fernandes
 
 -Original Message-
 From: flexcoders@yahoogroups.com on behalf of rgwilson26
 Sent: Fri 17-Feb-06 6:11 PM
 To: flexcoders@yahoogroups.com
 Subject: [flexcoders] calling a cfc from flex
  
 I am new to flex and working on calling a cfc that has a simple 
query 
 in it. I want my query to populate a datgrid with all pertinant 
 information. I am having a hard time converting from an array to a 
 string to populate the DG. Any help in what I am missing would be 
 great, or if there is an easier way to call a query and return data 
 would be great!
 
 
   getPersonnel.cfc
 
 cfcomponent displayname=getPersonnel
 cffunction name=getPersonnel access=remote returntype=string