スケジュールデータを削除する処理で以下のORA-01002エラーが発生します。
コマンド実行例:
<StarOfficeフォルダ>\Schedule\Server\sfbsho11 -p BBSSCHDV2DEL -a -b -e SYSTEM -DB SOXSTD -DU SYSTEM -DP ***** -N:EDCT 365 -A:ASS " " -N:CMCNT 100
エラーメッセージ:
5/6 03:11:26 SFOSH 005680 000216 databese access error : ORA-01002: フェッチ処理が無効です。
type=R001 stat=-1002 dbtype=ORACLE dbname=SOXSTD table~BSSCH001
proc=BBSSCHDV2DEL md=RFD_CURS cm=FETCH sycn=batch mode
本エラーは、削除処理実行時にデータベース側の内部処理が正しく行なわれず、データ削除に失敗した事を意味します。
次の条件を満たす場合、本エラーが発生する場合があります。
<発生条件>
・データベースにOracleを利用している
・処理対象となるデータ量が多い
・コマンド実行時のDBロック設定が"ROW"(インストール時既定値)
なお、本エラーにより削除対象となるスケジュールデータが残ったままとなる場合がありますが、データ不整合や環境不正が発生する事はありません。
<回避策>
コマンド実行時のDBロック設定に"TABLE"を指定することで、本エラーを回避する事が可能です。
コマンドファイルRRSCHDEL.BATの環境変数の指定箇所を、以下のように変更してください。
≪ファイル≫
<StarOfficeフォルダ>\Schedule\Server\Bin\RRSCHDEL.BAT
≪変更箇所≫
rem 更新時のDBロック設定
SET RLF_LOCK=ROW
変更前)SET RLF_LOCK=ROW
変更後)SET RLF_LOCK=TABLE
※DBロック設定に"TABLE"を指定すると、コマンド実行中はスケジュール機能が利用できませんのでご注意ください
<参考>
施設予約情報の削除バッチ(RRSCHDEL.BAT)にも、"SET RLF_LOCK=ROW" の記載があり、施設予約情報削除時にも同様の事象が発生する可能性があります。回避方法につきましても、RRSCHDEL.BATと同様、DBロック設定を変更していただきますようお願い致します。
対象バージョンは以下の通りです。
- StarOffice X V1.0以降のバージョン