parquetech

異なる個性を尊重し、
人とシステムをしなやかに紡いでゆきたい

パーキテックはクラウドとレガシーを適切に用いた
システム構築、運用を得意としている会社です

IBMi FAQ05~QADBIFLDファイルのサイズが大きいのですが、これは何でしょうか?,etc…

IBMi FAQ

◇Q41. QADBIFLDファイルのサイズが大きいのですが、これは何でしょうか?


◇A41.
QADBIFLDファイルは相互参照ファイルと呼ばれ、全てのデータベースのフィールド情報を記録しているシステム管理に必要なデータベース・ファイルです。
削除情報が領域を占めていくと、ディスク容量を圧迫し続けるのでどこかの時点で、削除領域の開放が必要になります。
解放する具体的な方法としては、以下の2通りの方法があります。
いずれも制限状態で実行してください。

1.CALL QDBRCLXR
2.RCLSTG SELECT(*DBXREF)
※下記を参照

※2.RCLSTG SELECT(*DBXREF)について

1. ENDSBS SBS(*ALL) OPTION(*IMMED)
2. RCLSTG SELECT(*DBXREF)
RCLSTGが正常終了すると以下のメッセージが表示されます。

 

◇Q42. QBATCHと同じようなサブシステムを作りたい



◇A42.
一番簡単な方法で説明します。
1.CRTDUPOBJでQBATCH(SBSD)を別名でコピーする。
2.ADDJOBQEでジョブキューを登録する。
3.上記で登録したジョブキューをCRTJOBQで作成する。

 

◇Q43. QRPLOBJライブラリーのサイズが増加する一方ですなぜでしょうか?


◇A43.
REPLACE(*YES)でコンパイルした場合、コンパイル前のオブジェクトが保存されます。
IPLをしないとクリアーされません。
IPLができない場合は、CLRLIB QRPLOBJでクリアーできます。

 

◇Q44. QSECOFRを指定端末以外では、使用させたくない


◇A44.
CHGSYSVAL SYSVAL(QLMTSECOFR)
VALUE(‘1’)にしておくと、コンソールまたは指定端末以外では使用できなくなります。
(注)QSECOFR以外で*ALLOBJ、*SERVICEを持つユーザーも対象となります。
指定端末を許可するには、

 

◇Q45. QSTRUPで実行されるコマンドが権限エラーになる


◇A45.
QSTRUPは、ジョブ記述QSYS/STRUPJDが使用されます。
そこで指定されているユーザーはデフォルト値は、QPGMRになっています。
QPGMRに権限がないとエラーになります。

 

◇Q46. QSYSOPRなどのメッセージキューの内容を表示させるAPIは?


◇A46.
QMHLSTMを使用してください。
ユーザースペースにメッセージが展開されます。

 

◇Q47. Queryでパックフィールドをゾーンフィールドに変換して出力したい


◇A47.
以下の手順で行うことができます。
1.Queryの「結果のフィールドの定義」でゾーンフィールドとして、同じ桁数を定義する。

2.「フィールドの選択」でパックフィールドの代わりにゾーンフィールドを選択する。

 

◇Q48. Queryの定義情報を印刷したい


◇A48.
RUNQRY QRY(xxxx) PRTDFN(*YES)で印刷できます。

 

◇Q49. RGZPFMをしないで済む方法はないか?


◇A49.
REUSEDLT(*YES)でCRTPFしておくと削除レコードを再使用してくれますので、RGZPFMをする必要はなくなります。
但し、この指定は到着順または相対レコード番号による処理をしている場合は指定してはいけません。

 

◇Q50. RPGのSETLLでうまく検索できない時がある


◇A50.
データに2バイト文字がある場合に、うまく検索できない場合があります。
検索キーの後ろのスペースをNULLにすれば検索できます。
x0E(シフトインコード)があるとx40(スペース)より小さいのでSETLLでは検索できなくなります。

Privacy Preference Center