トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     Remotingのご質問
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
くまがい
Åê¹ÆNo.22461
投稿日時: 2005-12-27 15:49
常連
居住地:
投稿: 82
使用環境:
Flash MX2004 Pro
WinXP
Remotingのご質問
基本的なことなのかもしれませんがご教授お願いします。

現在下記の構成でフォームアプリケーションを作成しています。
_App
|
Form_1
|
Form_2

Form_1の1フレーム目に以下の内容のコードを記述しています。

import mx.controls.Alert;
import mx.remoting.*;
import mx.rpc.*;

var revObj:Object = new Object();
var sv:Service = new Service("http://hogehoge.co.jp/hoge/gateway.php",
null, "test_rs", null, null);

revObj.reveal = function(evtObj:Object):Void
{

var pc:PendingCall = sv.get_Records();
pc.responder = new RelayResponder(_root._App.Form_1, "rs_Result", "rs_Fault");
}

function rs_Result(rs:ResultEvent){
var Rs:RecordSet = RecordSet(rs.result);
var RecordCount:Number = Rs.length;

Alert.show(RecordCount + "件");
}

function rs_Fault(evt:FaultEvent){
Alert.show(evt.fault.faultstring);
}

this.addEventListener("reveal", revObj);

また、Form_2の1フレーム目に以下の内容のコードを記述しています。

import mx.controls.Alert;
import mx.remoting.*;
import mx.rpc.*;

var Obj:Object = new Object();
var sv:Service = new Service("http://hogehoge.co.jp/hoge/gateway.php",
null, "test_rs", null, null);

Obj.click = function(evtObj:Object):Void
{

var pc:PendingCall = sv.get_Records();
pc.responder = new RelayResponder(_root._App.Form_1.Form_2, "rs_Result", "rs_Fault");
}

function rs_Result(rs:ResultEvent){
var Rs:RecordSet = RecordSet(rs.result);
var RecordCount:Number = Rs.length;

Alert.show(RecordCount + "件");
}

function rs_Fault(evt:FaultEvent){
Alert.show(evt.fault.faultstring);
}

Mybtn.addEventListener("click", Obj);

この状態で実行すると,Form_1のrevealイベントは正常に処理されるのですが、Form_2上に配置したMybtnをクリックしても、RecordCount変数がundefinedになります。
まったく同じことを処理しているのに何故でしょうか。

基本的なことが分かっていないのだと思いますが,ご教授お願いします。
くまがい
Åê¹ÆNo.22474
投稿日時: 2005-12-27 21:41
常連
居住地:
投稿: 82
使用環境:
Flash MX2004 Pro
WinXP
Re: Remotingのご質問
自己レスになります。

その後いろいろ試した結果、原因はわかりませんが解決しました。
引用:

function rs_Result(rs:ResultEvent){
var Rs:RecordSet = RecordSet(rs.result);
var RecordCount:Number = Rs.length;

Alert.show(RecordCount + "件");
}

で、
Alert.show(rs.result.length + "件");
にしてみたら正常に動作しました。

なぜ RecordSet を使用した場合、Form_2のコードではundefinedになったのかは分かりませんが、とりあえず解決しました???
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops