PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
4978 | 99/02/04 17:08:03 | RE(8):PB6: Oracleに作成したプロシージャの使用方法 By てとらぽっと |
4971 | 99/02/04 10:37:37 | RE(7):PB6: Oracleに作成したプロシージャの使用方法 By baron |
4947 | 99/02/03 12:34:21 | RE(6):PB6: Oracleに作成したプロシージャの使用方法 By bihu |
4928 | 99/02/02 17:25:14 | RE(5):PB6: Oracleに作成したプロシージャの使用方法 By てとらぽっと |
4926 | 99/02/02 17:12:44 | RE(4):PB6: Oracleに作成したプロシージャの使用方法 By baron |
4925 | 99/02/02 16:55:53 | RE(3):PB6: Oracleに作成したプロシージャの使用方法 By baron |
4779 | 99/01/26 18:13:08 | RE(2):PB6: Oracleに作成したプロシージャの使用方法 By bihu |
4778 | 99/01/26 18:11:42 | RE(1):PB6: Oracleに作成したプロシージャの使用方法 By てとらぽっと |
4773 | 99/01/26 17:15:11 | PB6: Oracleに作成したプロシージャの使用方法 By baron |
カテゴリ:データベース
日付:1999年02月02日 17:12 発信者:baron
題名:RE(4):PB6: Oracleに作成したプロシージャの使用方法
てとらぽっと さん ありがとうございました。
>戻り値の変数 = sqlca.FC_TEST(引数)
>
>ユーザーによって拡張されたsqlcaのローカル外部関数として宣言していれば、
>スクリプトで上のように書けます。
>
>多分やっておられないと思いますので説明しますと、ユーザーオブジェクトの標準クラスから
>Transaction型を選んで新規作成し、Transaction型を継承した拡張クラスを作ります。
>そのローカル外部関数の宣言に、データベースのファンクションを加えます。
>[プロシージャ...]というボタンをクリックすると、データベースのファンクションなどが見えます。
>アプリケーションペインタを開き、デフォルト グローバル変数のsqlcaを拡張クラスに変更します。
ここのまでの作業は完了しました。アプリケーションの下の階層にユーザーオブジェクトが表示されました。
しかし、それ以上まだ進んでいません。
グローバル変数に Transaction SQLORA という名前のトランザクションオブジェクトを宣言しています。
スクリプトでは、
Integer IRet
IRet = SQLORA.FC_Test (1, 2, 199812, 199902 )
と、記述してみましたが、「関数fc_testは未定義です。」というエラーが出てしまいます。
何が悪いのか良く分かりません。
分かるようでしたら教えて頂きたいのですが・・・。
よろしくお願いします。
>これだけで自動的にsqlca変数をCreateしてくれるので、先のローカル外部関数を使用することが
>出来ます。
>大雑把な説明ですが…。
>何をどう表示したいのか、ちょっとよく解りません。(^^;
>結果集合を返すファンクションではないので、DWのデータソースとして使うことはできないでしょう。
>またDWのコントロールにデータベースのファンクションを貼り付けることはしません。
>ファンクションは(DWの)SQL文に埋め込んで使うといいかと思います。
説明不足ですみません。
自己レスですが、
データウィンドウでは、カーソル型を返す関数のデータを受け取ることはできないという事でした。
Oracleで結果集合を返すストアドプロシージャを使用しないと、データウィンドウでは使用できないようです
。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows NT 4.0
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.