PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
7090 99/07/12 17:25:04 RE(6):転送バイト数に制限が! By Taka
7076 99/07/09 13:21:23 RE(5):PB5.0.02: ストアドファンクションに配列を渡す? By m.ishida
7064 99/07/08 17:40:13 RE(4):PB5.0.02: ストアドファンクションに配列を渡す? By m.ishida
7063 99/07/08 17:25:58 RE(3):PB5.0.02: ストアドファンクションに配列を渡す? By Taka
7062 99/07/08 16:51:12 RE(2):PB5.0.02: ストアドファンクションに配列を渡す? By m.ishida
7060 99/07/08 16:52:33 RE(1):PB5.0.02: ストアドファンクションに配列を渡す? By Taka
7058 99/07/08 15:17:00 PB5.0.02: ストアドファンクションに配列を渡す? By m.ishida

カテゴリ:データベース
日付:1999年07月08日 16:51 発信者:m.ishida
題名:RE(2):PB5.0.02: ストアドファンクションに配列を渡す?

どうもわざわざすみません。質問も言葉足らずだったようで・・・

>で、お聞きしたいのですが、

>その1:
>環境がPB5.0.02とありますが、可能であれば5.0.04(+パッチ版)で試してみてください。
>5.0.02のO73インターフェイスでは、ストアド呼び出しなどで細かいバグが多かったと記憶しています。

・すいません、客先の関係等、現段階ではこのバージョンで試すほかないんです。

>その2:
>No006256のサンプルは、配列データを一方的に渡す場合の方法です。
>つまりプロシージャの引数が \"IN\" になっているケースです。
>もしかして \"OUT\"で定義していて、プロシージャの中で取得したデータをPBから受け取ろうとしていません
か?
>その場合は、事前に配列を初期化してメモリを確保しておかなければなりません。
>配列の上限を決めておく必要があり、かつ十分な長さの空白文字で埋めておく必要があります。
>(この制約があるので、あまり実用的ではないと思っています)

>これでどうでしょうか。

最初の段階ではOUTのものも使おうと考えていたのですが、上記のようなことがあると知ったので、
今はINの引数でのみで検証しています。
以下がストアド宣言部です。

TYPE t_lot_no IS TABLE OF VARCHAR2(5)
INDEX BY BINARY_INTEGER;

FUNCTION p_test1 (
p_lot_no IN t_lot_no,
sql_errm OUT varchar2
) RETURN string;

以下がPBローカル外部関数定義部です。
FUNCTION string p_test1(string p_lot_no[],REF string sql_errm) RPCFUNC ALIAS FOR \"p_test.p_test1\"

FUNTION p_test1はパッケージp_testにて定義しています。

どうでしょうか?
どこかで単純なミスをしている可能性もあるんですが・・・


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows95
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.