Zurück   Flashforum > Flash und Server > Flash Remoting

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29-08-2003, 13:50   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2001
Ort: München
Beiträge: 35
Fehlermeldung: RecordSet warning 104: getItemAt(0) index out of range

Hallo!

Ich bastle derzeit etwas mit Flashremoting und CF rum.
Will eine kleine todo App in FlashMX bauen.

Hab eine Access DB angelegt die ich mittels einer CFC und FlashMX Remoting abfrage und über die Data Grid Komponente von Macromedia darstelle

Das Ganze funktioniert einwandfrei, nur geht bei jeglichem Zugriff auf die Servicefunktionen das Tracefenster auf und es erscheint die oben genannte Fehlermeldung - und das mehrere Male...

RecordSet warning 104: getItemAt(0) index out of range
bis
RecordSet warning 104: getItemAt(12) index out of range

ich kapiers nicht woran das liegt, ist leider auch mein erster Versuch mit FlashRemoting.

Liegt der Fehler im AS vom Flash, in der CF Komponente, oder gar in der Access DB?!

Hier mal das AS:
ActionScript:
  1. //Importiert die NetServices-ActionScript-Datei
  2. #include "NetServices.as"
  3. #include "NetDebug.as"
  4. #include "DataGlue.as"
  5. //if-Anweisung stellt die Verbindung zum Remotedienst her und erstellt ein Serviceobjekt
  6. if (inited == null)
  7. {
  8. inited = true;
  9. NetServices.setDefaultGatewayURL("http://192.168.1.6/flashservices/gateway");
  10. var serviceConnection = NetServices.createGatewayConnection();
  11. var serviceObject = serviceConnection.getService("intranet.todo.myqueries", this);
  12. }
  13.  
  14. //Die Funktion wird ausgeführt, wenn der Benutzer auf die Schaltfläche klickt
  15. function button_Clicked() {
  16.     //Servicefunktionsaufruf an den Remotedienst
  17.     serviceObject.GetBenutzer();
  18. }
  19.  
  20. //Wenn die Servicefunktion erfolgreich ist, wird die _Result-Funktion desselben Namens ausgeführt
  21. function GetBenutzer_Result(result) {
  22.     Userlist.setDataProvider(result); //schreibt die userliste in die Dropdownbox "Userlist"
  23. }
  24.  
  25. //Die Funktion wird ausgeführt, wenn der Benutzer einen Namen aus der Dropdownbox auswählt.
  26. function UserWechseln(){
  27.     var myItem = UserList.getSelectedItem();
  28.     // call the service and pass the id
  29.     serviceObject.GetToDo(myItem.id);
  30. }
  31.  
  32. //Nachdem das ServiceObject GetToDo aufgerufen wurde, kann das _result abgefragt werden.
  33. function GetToDo_Result(result) {
  34.     grid.removeAllItems();
  35.     grid.removeAllColumns();
  36.     configureGrid();
  37.     grid.setDataProvider(result);
  38. }
  39.  
  40. function configureGrid() {
  41.     // basic configuration methods
  42.     // make the columns using the DB's field names
  43.     grid.setColumns("Titel", "Beginn","Ende")
  44.     // set row count and column widths
  45.     grid.getColumnAt(0).setWidth(50);
  46.     grid.getColumnAt(1).setWidth(50);
  47.     // rename the columns
  48.     grid.getColumnAt(0).setHeader("Titel");
  49.     grid.getColumnAt(1).setHeader("Beginn");
  50.     grid.getColumnAt(2).setHeader("Ende");
  51. }


und hier die CF Komponente für die Abfragen.
Code:
<cfcomponent>
	<cffunction access="remote" name="GetBenutzer" returntype="query">
		<cfargument name="UserID" Required="no" default="0">
		<!--- Alle User aus der DB holen --->
		<cfquery datasource="todo" name="search">
			SELECT ID,Vorname,Nachname,username FROM Benutzer
			<cfif Val(arguments.UserID) NEQ 0>
			WHERE ID=#arguments.UserID#
			</cfif>
			ORDER BY Nachname		
		</cfquery>
		<cfreturn search>
	</cffunction>
	<cffunction access="remote" name="GetToDo" returntype="query">
		<cfargument name="UserID" Required="no" default="0">
		<!--- Alle User aus der DB holen --->
		<cfquery datasource="todo" name="search">
			SELECT ToDo.* FROM ToDO,ToDo_Benutzer
			WHERE Todo.ID=ToDo_Benutzer.Todo_ID
			<cfif Val(arguments.UserID) NEQ 0>
			AND ToDo_Benutzer.User_ID=#arguments.UserID#
			</cfif>	
		</cfquery>
		<cfreturn search>
	</cffunction>
</cfcomponent>

any ideas?!

greetz grease
grease ist offline   Mit Zitat antworten
Alt 31-08-2003, 18:54   #2 (permalink)
netTrek
 
Benutzerbild von netTrek
 
Registriert seit: Jul 2001
Ort: 46282 Dorsten
Beiträge: 2.972
Mal nur ne Vermutung (Script nicht wirklich durchgelesen ): Hast du das update der Flash REmoting Components schon gefahren?

SABAN
__________________
Saban Ünlü

netTrek GmbH & Co. KG
Softwareentwicklung, Design & Konzeption
www.netTrek.de
netTrek ist offline   Mit Zitat antworten
Alt 03-09-2003, 10:44   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2001
Ort: München
Beiträge: 35
Danke, es scheint wohl ein clientseitiger Bug von FlashMX zu sein.
Die Abfrage ansich funkt ja einwandfrei, die Warnung kommt lediglich wenn ich in FLMX die anwendung teste.

Habe jetzt ältere netdebug AS-Dateien bekommen, die ich in den INCLUDE Ordner kopiert habe. Da kommt nun keine Warnmeldung mehr.

Naja sehr seltsam. In der CF-Usergroup glauben sie auch an einen Fehler in der entsprechenden Component.

Trotzdem Danke :-)

grease
grease ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 03:08 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele