1:E L1021 同一キーは認められていません やぎ 02/22 15:30 741 RDBファイルをキーファイル経由で使用 やぎ 2006/02/22 14:57 いつも勉強させていただいております。 このたび、既存システムを改修する事になったのですが 件名のことで少々困っています。 表名 XXX-DB データファイル XXX-D キーファイル XXX-K というファイルを使用する場合 SELECT XXX ASSIGN XXX-MSD 〜 VALUE OF IDENTIFICATION ”XXX-K” と記述されているのですが いざ実行しようとすると 「E L1021 同一キーは認められていません」というエラーが発生し 実行することができません。 社内の開発環境はA-VX4、実際の稼働環境はA-VX01ですが プログラム自体は10年以上前に作られたものなので OSなどに依存しているとは考えにくいのですが このままですと環境構築でつまづいてしまうことになります。 なにかヒントでもあれば教えていただけないでしょうか。 よろしくお願いいたします 2:Re:E L1021 同一キーは認められていません NNN3 02/22 16:28 COBOLの記述的なことなら下記で FILE-CONTROL. SELECT XXXXX-K1 ASSIGN XK1-MSD XK2-MSD ORGANIZATION INDEXED ACCESS MODE DYNAMIC RECORD KEY XXXX-KEY 二重キーなし ALTERNATE RECORD KEY XXXX-KEY2 WITH DUPLICATES. 二重キーあり −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− ALTERNATE RECORD KEY XXXX-KEY2. 二重キーなし −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− データの更新時に同時更新する場合は、すべてのファイルの記述を 参照だけの場合は、参照したいファイル1つだけでも大丈夫です。 --------------------- FILE SECTION. FD XXXXX-K1 BLOCK CONTAINS 10 RECORDS LABEL RECORD IS STANDARD VALUE OF IDENTIFICATION ”XXXXX-K1” ALTERNATE IDENTIFICATION ”XXXXX-K2”. ------------------------------------------------ 記述の問題でなくて、実データの場合は #MAPで、ファイルのKEYの位置と桁数と二重KEYのYES/NOを再確認して 合っていて、出る場合は、データの復旧等で 二重KEYが発生しているのかも..... その場合は、データを一度他のファイルに 退避して、書き戻せば、いいのですが、二重KEYのデータを先に整理して 正しいデータを作成してから、戻してください。 、 3:Re:E L1021 同一キーは認められていません やぎ 02/22 16:29 自己レスです。 ファイルの領域確保を#DDMで行っていたのを #ABCでの領域確保に変更したところ、解決しました。 表定義が、構造体ではなく、桁数指定であったため 連続したキー項目であっても、キー項目を複数指定して キーファイルの領域を確保したのが原因だったようです。 4:Re:E L1021 同一キーは認められていません NNN3 02/22 16:41 #DDMで仮データのアロケートならいいのですが、細かい指定が ある時に、利用するとわかりにくいと思います。 5:Re:E L1021 同一キーは認められていません やぎ 02/22 20:38 キーファイルの適切な容量が自動的に確保されるので便利だ、と教えてもらったんですが。 おっしゃるとおりかもしれないですね。 6:Re:E L1021 同一キーは認められていません?追伸 NNN3 03/01 17:55 AVXの新HIのデータ操作支援−−A/領域−−S/登録−−−−− の領域登録機能で領域サイズの所でアロケート時にサイズ単位 ◎ 1.セクタ ○ 2.レコード の所で 件数指定でアロケートができます。 新HIを利用していない RUN^^^^^^^の方式の時は #SABC1;でデータ操作支援\r のメニューが、表示されます。 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− #DDMでの領域の作成時にKEY指定時にDDMのライブラリィが、4回まで指定 可能で4回以内にKEY指定が網羅できれば、いいですが、出来ない場合は、 指定ができないので、ライブラリィを階層化して、作成しないと網羅できませんでした。 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 実の所#DDMでMIXファイルの作成を試みたことが、なかったので今回初めて わかりました。 |