($title_img_alt)

こちらからの投稿は、先頭に表示されているコメントへの返信になります。
RE:SQL cursorで次のレコードに切り替わらない IKD さん [ 2月8日(月) 16時20分 ]
同じレコードが出力されているという症状からすると
CURSOR が効いていないということですから

EXEC SQL DECLARE CSR CURSOR FOR WKSTATEMENT;
EXEC SQL PREPARE WKSTATEMENT FROM :SORTSQL;

が怪しいのですが、ずいぶん間接的な表現になっていますので

EXEC SQL DECLARE CSR CURSOR FOR :SORTSQL;

にして実行してみてください。
コンパイル・エラー等があればご自分で修正してください。

EXEC SQL FETCH CSR INTO :DSSQL;

の A, B が :DSSQL の DSで定義されているフィールドであると
予想していますが :DSSQL のフィールドには SFLレコードのフィールド名を
そのまま使えば、

//DSから画面へセット
   P_SCD = A
   P_SCD = B

は不要となります。その他に大きな問題は見受けられませんので
公開されていないところにも単純な記述のミスがある可能性も含めて
チエックしてください。

CRTSQLRPG で指定しているパラメータにも注意してください。
RE:SQL cursorで次のレコードに切り替わらない AS400 初心者 さん [ 2月10日(水) 10時52分 ]
ご教示ありがとうございます。

別のSQLRPGLEを用意して、カーソルで同じSQL文を読みだすという形で確認し
たところ
正常にレコードが切り替わって表示されました。

同じファイル、同じタイプ、同じコンパイルパラメータ、同じSQL文となっており
同じレコードのみが表示されたソースと、レコードが切り替わったソースの差異は
大きなところで言うと下記になります。

下記の中のいずれかの影響で、同じレコードしか表示しなくなるということは
あり得るのでしょうか?

-------------------------------
差異(同じレコードが表示されたソース)
-------------------------------
 ・サービスプログラムのプロシージャを使用している
 (自分自身はメインプログラム)
 
 ・cursorのSQLの前に、削除のSQLとデータ抽出のSQLを実行している
 (これらはカーソルは使用しておりません。また動作は正常に実行できてい
ます)
 
 ・サブファイルを6つ使用している

お名前

パスワード

メールアドレス

タイトル

ホームページ

アドレス

項目