PB 電子会議室
カテゴリ:スクリプトの記述
日付:2002年07月30日 13:59 発信者:浩ちゃん
題名:RE(7):PB6.5: Closewithreturnの引数で、配列は使えないのでしょうか?【訂正】
ZONEさん、こんにちは。返信ありがとうございます。
>浩ちゃんさん、こんにちは。
>構造体が配列になっていないと思います。
>変数名がxx[]のようになっているでしょうか。
>データ型も正しいか確認して下さい。
>B画面がレスポンスウィンドウになっているかも確認して下さい。
//str_keyはstring型の構造体
str_key istr_key[]
//TEST用にテスト用データを入れてみました。
istr_key[1].key01 = \"a\"
istr_key[2].key01 = \"b\"
istr_key[3].key01 = \"c\"
//構造体配列を引数にし、colseする。
CloseWithReturn(Parent,istr_key)
上記のように記したところ、「引数が不適切です!」エラーになってしまいます。
変数名もxx[]と定義していますし、データ型もあっていて、B画面はレスポンス
ウィンドウです。
……………とコメントしようとしていましたが。
色々と試していたら、このエラーは以下の方法で解決しました。
CloseWithReturn(Parent,istr_key[3])
としたらうまくいきました。
カッコの中もきちんと定義しないとダメなんですね(納得!)
今回の場合、場合により変わってくるため、UpperBound関数で取得し
その値を代入して、渡すことにします。
しかし、今度は受け取り側です。(A画面)
B画面をOpenした後の記述
str_key istr_key[]
istr_key = Message.PowerObjectParm
この場合、「配列に対して配列でない値を代入しようとしています」エラー
になってしまいました。何か他に問題があるのでしょうか。
とりあえず経過の報告です。
もう少し調べてみます。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows NT 4.0
DBMS Oracle SQL*Net 2.3
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.