0

ここで奇妙なケースがあります。AS/400 でビューを作成しました。UNION ALL を実行する必要があるため、ビューを論理に結合しないようにする必要があります。ビューが作成され、IFS にアクセスしてすべてのアクセス許可を付与しました。しかし、Crystal Reports を開いて iSeries に接続し、View のそのライブラリに移動すると、表示されず、使用できません。

他に何かしなければならないことはありますか?

他のことを試しただけです。これはビューです:

CREATE VIEW MKLIB/BEMPLOCM AS
   ((SELECT  LMRIDC, LMCOM#, LMWHS#, LMLOC1, LMLOC2, LMLOC3, LMLTPC, LMLCT1
     FROM
        ((SELECT  LMRIDC, LMCOM#, LMWHS#, LMLOC1, LMLOC2, LMLOC3, LMLTPC, LMLCT1
          FROM ASTDTA/ICLOCMLM WHERE LMLTPC IN ('PCK', 'PAL', 'RAK')) t1
     EXCEPTION JOIN
        (SELECT * FROM ASTDTA/ICBALMIE) t2
           ON LMLOC1=IELOC1 AND LMLOC2=IELOC2 AND LMLOC3=IELOC3 )
     EXCEPTION JOIN
        (SELECT * FROM ASTDTA/ICBLDTIR) t3
           ON LMLOC1=IRLOC1 AND LMLOC2=IRLOC2 AND LMLOC3=IRLOC3 ))

現在、Crystal レポートには、データを取得するために使用する COMMAND もあります。同じクエリを作成できますが、時間を考慮して AS/400 で使用したいのですが、ユニオンが必要です。それ以外の場合は、すべて CL 経由でクエリを実行する必要があります。日。SO SELECT ポイントから上記のコードを取得したところ、次のエラーが発生しました。

データベースからデータを取得できませんでした。詳細: HY000 IBM ISeries ACCESS ODBC DRIVER (DB2 UDB) sql 5016 - 修飾オブジェクト名 ICLOCMLM が無効です。ベンダーコード 5016。

それが何を意味するのかわかりません。

4

3 に答える 3

1

GRANTステートメントを使用して、SQL 特権を制御します。

ビューが通常のファイルにある場合、コマンドGRTOBJAUTEDTOBJAUT、およびRVKOBJAUTを使用して、それらのオブジェクトの権限を変更する必要がある場合もあります。

于 2013-07-10T15:32:00.857 に答える
1

「Crystal でテーブルとビューを表示すると、ライブラリにリストされません。」

ビューが実際にあなたが考えているライブラリにあると確信していますか?

発生した可能性があるのは、別のライブラリで作成された可能性があるということです。QGPL ライブラリを確認してみてください。または、ユーザー プロファイル名と一致するライブラリがある場合は、そこを確認してください。

于 2013-07-10T23:37:40.883 に答える