ユーザー出口とは、ソフトウェアパッケージの実行中に定義済みのイベントが発生する際に、パッケージによって呼び出されるサブルーチンです。この出口は、パッケージの設定時にインストール時に指定される場合もありますが、パッケージのユーザーが、パッケージベンダーが提供するデフォルトのサブルーチンの代わりに独自のサブルーチンを使用して、カスタマイズされた機能を提供する場合もあります。また、セキュリティ制御によって、出口が許可ユーザーのみに制限される場合もあります(MVSのEXCPアペンデージなど)。
この用語の最も初期の使用は、オペレーティングシステムが、事前に指定されたイベントが発生したときに、カスタマイズされたコードに一時的に制御を委ねることに関連していました。[1] [2]
より一般的な用途は、ソート/マージパッケージ[3] [4] [5]が提供するユーザー出口ルーチンの置き換えです。この場合、ユーザープログラムはレコード比較用の独自のサブルーチンを用意します。ユーザーが用意した手続きは、パッケージベンダーが提供するデフォルトのルーチン(通常は呼び出し元に返すだけのスタブ)の代わりに使用されます。
ユーザー出口として提供されるプロシージャは通常、静的ライブラリにコンパイルされ、パッケージに直接リンクされて実行可能プログラムを生成します。別の方法としては、動的ライブラリを使用して同じことを実現する方法があります。
最後に、ユーザー出口はホストパッケージの実行中の特定の時点で実行される外部プログラムである可能性がある。[6]
歴史
歴史的に、この用語はIBMメインフレームの専門用語でよく使われています。[1] [2]
- タイトル: z/OS V1R10 DFSMS 導入システム出口 文書番号: SC26-7396-11
- タイトル: z/OS V1R10.0 JES2 インストール出口 文書番号: SA22-7534-10
- タイトル: z/OS V1R10.0 MVS 導入システム出口 文書番号: SA22-7593-14
制限
ソフトウェアベンダーが提供するデフォルトの出口をユーザーサイト固有のコードに置き換える場合、そのコードは、デフォルトの出口について文書化されている定義済みパラメータを使用してソフトウェアパッケージとインターフェースする必要があります。ユーザー出口が重要なのは、サイト固有のカスタマイズを可能にする一方で、インストール固有のカスタマイズを定義済みかつサポートされているポイントに分離することで、既存のカスタマイズ機能に悪影響を与えることなく、ソフトウェアパッケージの後継リリースにサイトをアップグレードできるようにするためです。以下にIBMユーザー出口マニュアルの参照先をいくつか示します。SAP、Oracle、IFS、HP、Macro4、Compuware、CAなどの他のベンダーも、自社のソフトウェア製品の一部でユーザー出口を採用しています。
例
SAPでは、プログラム処理に影響を与える可能性があるため、ユーザーExit内で「COMMIT WORK」を使用することはできません。また、エラーメッセージは、メッセージに続くコードの処理を停止させるため、Exit内から発行することはできません。
標準の施行
ユーザーが作成したコンテンツを含むファイルが標準に準拠する必要がある場合、ワードプロセッサドキュメントの(ファイル) Openコマンドは、検証を行い、必要に応じてエラーコードを返すユーザー出口を呼び出すことができます。 [7]
アプリケーション
ユーザー出口を提供するアプリケーションの一部:
- Apache Subversionでは、「アクションが実行されたときに実行されるスクリプト」である「フック」が使用できます。
- IBM CICS
- Kornshellスクリプト形式のIBM CMVCユーザー出口
- IBM JES 2 および 3
- IBM MVS、SMS、z/OS 、およびRACF、SMFなどの多数のサブコンポーネント。
- IBMソート/マージ パッケージ
- オラクル CC&B
- SAP R3
参照
参考文献
- ^ ab IBM用語: OS/MFT、MVT 「OSユーザー出口」。Computerworld 、 1977年4月11日、p. 25。
…OS/MFTまたはMVTで実行できるように…ユーザー出口を備えたアプリケーションの使いやすさを向上させる
- ^ ab 「Platform Server for z/OS インストールおよび操作ガイド」(PDF)。MFT
Platform Server Exits の使用では、... のユーザー Exit について説明します。
- ^ 「COBOL E15ユーザー出口:ソートのためのレコードの受け渡しまたは変更」。E15
とE35の両方のユーザー出口を使用する場合…SORTIN DDステートメント
- ^ 「ユーザーExitを使用したソート」SAP.com(SAPドキュメント)
- ^ 「Unicenter CA-Sort for VSE」(PDF)。Unicenter
CA-Sort がユーザー出口ストレージを ... でオーバーレイする場合
- ^ 「CMVCって言った?」2013年7月22日閲覧。
- ^ サンプル: Opinion.AnalystID.StockSymbol.DateTime - Opinion.Q347.IBM.201907031321 - あるいは、日付/時刻部分はユーザー出口によって入力される場合があります。