RMDL 組み込み関数のチェックリスト

RDML で作成した組み込み関数が以下のチェックリストのすべての項目に合致していることを確認してください。

注意:なんらかの状況で以下のチェックリストの項目のいずれかに合致しない場合は、予期せぬアプリケーション・エラー、予期せぬ動作、もしくはアプリケーション移植の問題が発生する可能性があります。

  • 組み込み関数の引数および戻り値のデフォルトはすべてシンプルな英文字もしくは数字のリテラル値になっている。その他のタイプのデフォルト値 (例: システム変数) が引数や戻り値として使用されていないことを確認した。

  • 組み込み関数名がシンプルな名前になっている。組み込み関数名を構成する文字は英語のアルファベット (A ~ Z)、0 ~ 9、そしてアンダースコアのみである。アンダースコア文字が有効なのは、RDMLX対応のファンクションのみである。

  • BIF ロジックを含む RDML ファンクションの名前はシンプルである。英語のアルファベット (A ~ Z)、0 ~ 9、そしてアンダースコアのみで構成されている。

  • BIF ロジックを含む RDML ファンクションは、コマンド FUNCTION で特有のオプション *HEAVYUSAGE または *LIGHTUSAGE を使って、(非)アクティベート化の方法を示している。

  • BIF ロジックを含む RDML ファンクションは、オプションが *HEAVYUSAGE でも *LIGHTUSAGE であっても、シャットダウン呼び出し(システム変数 *BIF_SHUTDOWN = Y) を正しく処理できる。ほとんどの場合、ファンクションの始めに次のロジックが含まれている。
          IF COND('*BIF_SHUTDOWN = Y')
   RETURN
   ENDIF
  • BIF ロジックを含む RDML ファンクションの場合、組み込み関数を呼び出すファンクションから情報を受信するもしくは情報を送信するために交換リストを使用していない。

  • BIF ロジックを含む RDML ファンクションの終了は、特定のコマンド RETURN と ABORT のみを使用している。(画面の I/O コマンドにより生成された、特定の目的で使用されたなどに関係なく) その他の終了コマンド (EXIT、MENU、TRANSFER など) を使ってこのファンクションが終了していない。

  • BIF ロジックを含む RDML ファンクションで使用された画面 I/O コマンド (DISPLAY、REQUEST、POP_UP、MESSAGE など) はすべて、ジョブ・モードの条件により、対話型またはバッチ・ジョブで BIF 機能を実行している。

  • ファンクションの経路テーブルが BIF ロジックを含む RDML ファンクションとともに利用されていない。RDML BIF ファンクションがファンクションの経路テーブルによってルーティングされていない。詳細は、『LANSA/AD ユーザーガイド』ファンクションのルーティングとはを参照ください。

  • BIF を起動するファンクションは、USE コマンドの WITH_ARG や TO_GET パラメータと同じ作業リストを使用していない。

  • RDML ファンクション・レベルのセキュリティを使用する BIF へのアクセス制御が行われていない。RDML でコーディングされた BIF が呼び出しレベルのセキュリティ・チェックの対象となっていない。このチェックはパフォーマンスのオーバーヘッドが非常に高いです。
  • No labels