Oracle Applicationsシステム管理者ガイド - 構成 リリース12 E05661-01 | ![]() 目次 | ![]() 前へ | ![]() 次へ |
Oracle Applicationsのコンカレント・マネージャでは、サーバー・マシンのバックグラウンドで複数のプロセスを実行します。Oracle Applications製品を使用する前に、各製品グループでコンカレント・マネージャを設定して起動する必要があります。コンカレント・マネージャを起動および停止するadcmctlスクリプトの詳細は、Oracle Applicationsの保守ドキュメンテーション・セットを参照してください。インストール中かアップグレード中かに応じて、この項での指示は異なります。
コンカレント・マネージャを起動する際は、次のことに注意してください。
コンカレント・マネージャでは、起動するユーザーからディレクトリ権限を継承します。メイン・アプリケーション・ログイン(applmgr)以外のログインでマネージャを起動する予定の場合は、そのログインに該当するディレクトリ権限があることを確認してください。
ディレクトリ権限の詳細は、『Oracle Applications概要』を参照してください。
startmgrに設定されているパラメータ値により、他の値はすべて上書きされます。コマンドライン値により、環境値とデフォルトの値などが上書きされます。startmgrスクリプトの編集に関する詳細は、このマニュアルの他の項に記載されています。
ディレクトリ権限は、マネージャの実行中に変更でき、変更内容はただちに有効になります。環境変数と起動パラメータは、マネージャの実行中に変更できますが、変更内容はコンカレント・マネージャが再起動されるまで有効にはなりません。変更内容を有効にするには、マネージャを停止して必要な変更を加え、マネージャを再起動します。
Windowsプラットフォームでは、OracleConcMgr<SID>サービス(<SID>はデータベース<SID>およびLOCAL変数の値です)でコンカレント・マネージャ・プログラムを起動します。OracleConcMgr<SID>サービスは、Rapid Installプログラムで最初に作成されます。サービスを再作成する必要がある場合は、次のいずれかの方法を使用します。
次の内容をコマンド・プロンプトで入力します。
C:¥> cd %COMMON_TOP%¥admin¥install
C:¥> adsvcm.cmd <NT User> <NT Password>
ここでは、NT Userはコンカレント・マネージャ・サービスを実行するユーザー、NT Passwordはサービスを実行するユーザーのパスワードです。
GUIプログラムccmsetup.exe(%FND_TOP%¥binにあります)を起動し、オプションを選択してサービスを作成します。
ここでは、コンカレント・マネージャの起動パラメータを説明します。これらのパラメータは、コンカレント・マネージャ・サービスで読み取り、コンカレント・マネージャ・プログラムに渡されます。これらのパラメータをWindowsレジストリに作成および設定するには、GUIプログラムccmsetup.exe(%FND_TOP%¥binにあります)を使用してください。レジストリ設定によってデフォルトが上書きされることに注意してください。これらのパラメータは、adcmctl.cmdスクリプトでも使用できます(詳細は、Oracle Applicationsの保守ドキュメンテーション・セットを参照)。
変数 | 説明 |
---|---|
スキーマ名 | APPSスキーマ名をAPPSユーザーIDに設定してください。 |
パスワード | データベースのOracle Applicationsアカウントへのパスワードです。 |
TNS別名 | データベース<SID>です。 |
変数 | 説明 |
---|---|
このアカウントを使用 | 「このアカウントを使用」ボックスをチェックし、CCMサービスを実行するOSアカウント(<NT User>および<NT Password>)を指定します。このボックスをチェックしないと、サービスを起動するシステム・アカウントに、ネットワーク・リソースへアクセスする権限が付与されません。 |
変数 | 説明 |
---|---|
スリープ | キューが制御された(「無効化」/「中止」/「検証」/「有効化」のいずれかのステータス)要求を検索する間に、内部コンカレント・マネージャが待機する秒数(整数)。デフォルト値は60です。 |
再起動 | 異常終了後に再起動を試みる前に、内部コンカレント・マネージャが待機する分数(整数)。デフォルトでは、マネージャは異常終了後に再起動されません。デフォルト値はNです。 |
キュー・サイズ | コンカレント・マネージャ操作における通常の変更内容をチェックする間に、内部コンカレント・マネージャが待機するpmonサイクル数(整数)。通常の変更内容には、稼働シフトの開始または終了、および「コンカレント・マネージャ」フォームで入力したコンカレント・マネージャ定義の変更内容が含まれます。デフォルト値は1です。 |
PMONサイクル | コンカレント要求の実行中に失敗したコンカレント・マネージャをチェックする間に、内部コンカレント・マネージャが待機するスリープ・サイクル数(整数)。デフォルト値は20です。 |
プリンタ名 | コンカレント・マネージャが要求の出力を送信するプリンタ名。発行プログラム(親要求)がプリンタに関連付けられていない場合、要求はコンカレント・プログラム内から発行されます。 |
分散コンカレント処理の有効化 | 分散コンカレント処理を使用可能にする場合は、このボックスをチェックします。 |
変数 | 説明 |
---|---|
無効化/通常 | 通常の停止方法を使用してコンカレント・マネージャを停止します。 |
プロセスの終了/強制終了 | コンカレント・マネージャを停止すると、そのコンカレント・マネージャは強制終了されます。
注意: このオプションは現在使用できません。このボックスをチェックしても機能しません。 |
変数 | 説明 |
---|---|
有効化ログ | 内部コンカレント・マネージャの起動時に生成されたログ・ファイル名。CM_<SID>.logにデフォルト設定されています。 |
無効化ログ | 内部コンカレント・マネージャの停止時に生成されたログ・ファイル名。CS_<SID>.logにデフォルト設定されています。 |
診断メッセージを記録 | このボックスをチェックすると、コンカレント・マネージャによって診断の出力が定期的に作成されます。このボックスのチェックを解除すると、ログ・ファイル・サイズの増加を防ぎます。 |
ログ履歴の保存 | このボックスをチェックすると、コンカレント・マネージャの起動時にログ・ファイルが上書きされなくなります。 |
コンカレント・マネージャを起動する前に、すべてのノードでOracle ApplicationsのTNSリスナーを起動する必要があります。TNSリスナーは、applmgrユーザーが起動する必要があります。
オペレーティング・システムのコマンドラインからスクリプトstartmgrを実行すると、コンカレント・マネージャを起動できます。オペレーティング・システムのプロンプトからコンカレント・マネージャを起動するには、次の構文を使用します。
$ startmgr ¥
sysmgr="<APPS username>/<APPS password>" ¥
mgrname="<name>" ¥
PRINTER="<printer>" ¥
mailto="<userid1 userid2...>" ¥
restart="N|<minutes>" ¥
logfile="<filename>" ¥
sleep="<seconds>" ¥
pmon="<cycles>" ¥
quesiz="<cycles>" ¥
diag="Y|N"
パラメータはすべてオプションで、順不同でスクリプトに渡すことができます。これらのパラメータは、adcmctl.shスクリプトでも使用できます(詳細は、Oracle Applicationsの保守ドキュメンテーション・セットを参照)。
ここでは、コンカレント・マネージャの起動パラメータについて説明します。startmgrスクリプト、startmgr実行時のコマンドライン、または使用している環境で別の値を指定しないと、デフォルト値が適用されます。
変数 | 説明 |
---|---|
sysmgr | APPSスキーマ名をAPPSスキーマのユーザーIDとパスワードに設定してください。パラメータを省略してデフォルト値を使用する場合は、パスワードの入力を求めるプロンプトが表示されます。デフォルト値は$FNDNAMです。 |
mgrname | 内部コンカレント・マネージャの名称(英数字のみ)。デフォルト値はstdです。 |
PRINTER | コンカレント・マネージャが要求の出力を送信するプリンタ名。発行プログラム(親要求)がプリンタに関連付けられていない場合、要求はコンカレント・プログラム内から発行されます。 |
mailto | 内部コンカレント・マネージャの実行が停止した場合にメールを受信するユーザーのリスト。デフォルト値はマネージャを起動したユーザーです。 |
restart | 異常終了した後で再起動する前に、内部コンカレント・マネージャが待機する分数(整数)。デフォルト値はNです。このデフォルト値では、マネージャは異常終了後に再起動されません。 |
logfile | 内部コンカレント・マネージャのログ・ファイル名。デフォルト値は<mgrname.mgr>です。 |
sleep | キューが制御された(「無効化」/「中止」/「検証」/「有効化」のいずれかのステータス)コンカレント要求を検索する間に、内部コンカレント・マネージャが待機する秒数(整数)。デフォルト値は60です。 |
pmon | コンカレント要求の実行中に失敗したコンカレント・マネージャをチェックする間に、内部コンカレント・マネージャが待機するスリープ・サイクル数(整数)。デフォルト値は20です。 |
quesiz | コンカレント・マネージャ操作における通常の変更内容をチェックする間に、内部コンカレント・マネージャが待機するpmonサイクル数(整数)。通常の変更内容には、稼働シフトの開始または終了、および「コンカレント・マネージャ」フォームで入力したコンカレント・マネージャ定義の変更内容が含まれます。デフォルト値は1です。 |
diag | diag=Yの場合、すべてのコンカレント・マネージャで診断の出力が定期的に作成されます。diag=Nの場合は、ログ・ファイル・サイズの増加を防ぎます。 |
$ startmgr sysmgr="apps/apps" ¥
mgrname="std" ¥
PRINTER="hqseq1" ¥
mailto="jsmith" ¥
restart="N" ¥
logfile="mgrlog" ¥
sleep="30" ¥
pmon="5" ¥
quesiz="2"
OracleConcMgr<SID>サービスは、「コントロール パネル」の「サービス」アプレットから起動されます。次のコマンドを使用して、コマンドラインから起動することもできます。
C:¥> net start OracleConcMgr<SID>
コンカレント・マネージャでは、インストールおよび起動するユーザーからディレクトリ権限を継承します。このマネージャを、メイン・アプリケーション・ログイン(applmgr)以外のログインで起動する予定の場合は、そのログインに該当するディレクトリ権限があることを確認してください。コンカレント・マネージャ・サービスを起動するWindowsアカウントは、コンカレント・マネージャをインストールしたアカウントと同一アカウントである必要があります。
起動パラメータ値は、次の順に適用されます。
レジストリの値セット(ccmsetupを使用)
デフォルト値
これは、レジストリの値セットでデフォルト値が上書きされることを意味します。
マネージャの実行中は、起動パラメータを変更できません。変更内容を有効にするには、マネージャを停止して必要な変更を加え、マネージャを再起動します。
Oracle8i Serverデータベースを起動する場合、またはコンカレント・マネージャの起動パラメータを変更する場合は常に、コンカレント・マネージャを再起動する必要があります。
UNIXプラットフォームでは、再起動時にログ・ファイルが存在している場合、コンカレント・マネージャにより、固有のログ・ファイルに追加されます。したがって、コンカレント・マネージャを再起動するユーザーは、既存のファイルを所有するか、ログ・ファイルへの書込み権限を持つか、または再起動する前にログ・ファイルを削除する必要があります。
Windowsでは、コンカレント・マネージャ・ログは、コンカレント・マネージャの再起動時に上書きされます。ccmsetup GUIツールの「ログ履歴の保存」オプションをチェックすると、以前のログ・ファイルが保存されます。
コンカレント・マネージャでは、各コンカレント・プロセスの終了時に一時ファイルが削除されます。ただし、コンカレント・マネージャが異常停止した場合は、これらのファイルが削除されないことがあります。
ヒント:一時ファイルは、数日前からアクセスされていない場合のみ削除してください。これにより、オペレーティング・システムまたはコンカレント・マネージャに必要なファイルの損失を防止できます。
理想的には、データベースが停止しており、アクティブなアプリケーション・プログラムがない保守時に、一時ファイルを削除してください。
ICMは停止プロセスの一部として、データベース接続の切断による強制終了であるかどうかを判定します。特定のエラー・メッセージ(ORA-3113、ORA-3114、ORA-1041)の検出によって、この判定が行われます。これらのエラー・メッセージが検出されると、ICMでは修復プロセスが作成され、データベースへの接続が試行されます。接続が確立できなければ、再試行までスリープします。接続に成功するか停止のシグナルを受信するまで、この処理が繰り返されます。
接続に成功すると、修復プロセスは古いICMデータベース・セッションを終了し、通常の起動マネージャ・スクリプトを使用した新しいICMを開始します。ICMが再起動すれば、同時に終了した他のマネージャも起動され、通常の処理が再開されます。
OracleConcMgr<SID>サービスは、「コントロール パネル」の「サービス」アプレットから停止できます。次のコマンドを使用して、コマンドラインから停止することもできます。
C:¥> net stop OracleConcMgr<SID>
Oracle Applicationsシステム管理者の職責からコンカレント・マネージャを停止できますが、コンカレント・マネージャ・サービスは停止しません。コンカレント・マネージャを再起動する前に、Windowsの「コントロール パネル」の「サービス」アプレットからコンカレント・マネージャ・サービスを停止する必要があります。
注意: 現在実行中の要求の処理を終了する必要があるため、OracleConcMgr<SID>サービスの停止には数分かかる場合があります。
警告: オラクル社カスタマ・サポート・センターの指示がないかぎり、タスク・マネージャを使用してコンカレント・マネージャ・サービスや他のApplicationsプロセスを停止しないでください。
コンカレント・マネージャ・サービスを削除する必要がある場合は、実行中でないことを確認してください。
OracleConcMgr<SID>サービスを削除するには、次の2つの方法のいずれかを使用します。
次の内容をコマンド・プロンプトで入力します。
C:¥> cd %COMMON_TOP%¥admin¥install
C:¥> adsvcm.cmd -deinstall
GUIプログラムccmsetup.exeを起動し、オプションを選択してサービスを削除します。
削除した場合、コンカレント要求を処理するためには、コンカレント・マネージャ・サービスを再インストールする必要があります。
次の表に、ログ・ファイル、出力ファイルおよび一時ファイルの保管場所とファイル命名規則を示します。製品ログと出力ファイルの保管場所は、共通ディレクトリの設定によって異なります。
ファイル・タイプ | 保管場所 | ファイル名 |
---|---|---|
内部コンカレント・マネージャ・ログ | 共通ディレクトリを持つ$FND_TOP/$APPLLOG: $APPLCSF/$APPLLOG | <mgrname>.mgr |
コンカレント・マネージャ・ログ | 共通ディレクトリを持つ$FND_TOP/$APPLLOG: $APPLCSF/$APPLLOG | W<nnn>.mgr |
要求ログ | デフォルト: 共通ディレクトリを持つ$<PROD>_TOP/$APPLLOG: $APPLCSF/$APPLLOG | l<request ID>.req |
要求出力 | デフォルト: 共通ディレクトリを持つ$<PROD>_TOP/$APPLOUT: $APPLCSF/$APPLOUT | o<request ID>.out |
一時 | $APPLTMPまたは$REPORTS60_TMP | OF<abcd12345>.t(<abcd12345>はOSでランダム生成される文字列) |
変数パラメータの値は、次のとおりです。
変数 | 説明 |
---|---|
mgrname | UNIXの場合、名称はstartmgrコマンドのmgrnameパラメータで指定されます。名称が未指定の場合、ファイル名はstd.mgrとなります。 Windowsの場合、名称はccmsetup.exeプログラムのmgrnameパラメータで指定されます。名称が未指定の場合、ファイル名はstd.mgrとなります。 |
nnn | 1〜999の連番がコンカレント処理機能によって生成されます。 |
<PROD>_TOP | GL_TOPなどの、製品の最上位環境変数。 |
request ID | コンカレント要求を識別する番号。 |
USERNAME | コンカレント・プロセスを要求したユーザーのアプリケーション・ユーザー名で、最大8文字(大文字)です。 |
<abcd12345> | <abcd>がランダムな文字、<12345>がファイルを生成したコンカレント・プロセスのオペレーティング・システム・プロセスIDを示す命名規則。 |
正しいディレクトリ権限が確実に継承されるように、applmgrログインからマネージャを起動することをお薦めします。これによって、コンカレント・マネージャを起動するユーザーは、コンカレント・マネージャで作成されるログと出力ファイルの所有者となります。
UNIXの場合、環境ファイルを実行してstartmgrスクリプトにアクセスできるユーザーが、コンカレント・マネージャを起動できます。
警告: 複数のノードでパラレル・コンカレント処理を使用している場合は、常にapplmgrログインからコンカレント・マネージャを起動してください。
この項では、UNIXのディレクトリ権限について説明します。
startmgrがapplmgrディレクトリ権限を確実に継承するために、UNIXのsetuid機能を使用して、applmgrログインのUNIXユーザーIDにstartmgrを設定できます。コンカレント・マネージャでは、startmgrを実行するログインに関係なくapplmgr権限が継承されます。これによって、元のUNIXログインに関係なく、「コンカレント・マネージャの管理」フォームを使用して、コンカレント・マネージャを起動または再起動できます。startmgrを変更またはコピーする場合は、setuidを使用してユーザーIDをリセットする必要があります。setuidの詳細は、UNIXのオンライン・ドキュメントを参照してください。
注意: setuidコマンドを使用すると、ライブラリの動的リンクを使用している特定のプラットフォームで予期しない動作が発生することがあります。この問題に関する情報は、使用しているプラットフォームの『Oracle Applications Installation Update』を参照してください。
applmgrユーザーIDにstartmgrスクリプトを設定せずに、applmgr以外のログインからマネージャを起動する場合は、そのログインに対して次の権限が必要です。
Oracle Applicationsの全ディレクトリに対する読取り権限と実行権限
次の変数で定義される全ディレクトリへの書込み権限
APPLLOG(通常は1つまたは複数のログ・ディレクトリ)
APPLOUT(通常は1つまたは複数のログ・ディレクトリ)
APPLCSF(ログ・ファイルと出力ファイルの共通ディレクトリ)
APPLTMP(一時ディレクトリ)
REPORTS60_TMP(Oracle Reportsファイルの一時ディレクトリ)
/tmpおよび/usr/tmpディレクトリへの書込み権限
次のコマンドを使用して、特定のディレクトリで必要な権限がログインに付与されていることを確認できます。
$ ls -ld < directory>
次に例を示します。
$ ls -ld /usr/tmp
drwxrwxrwx 3 root 22880 Mar 10 11:05 /usr/tmp
^^^
サンプルの結果でマークが付いている3文字は、すべてのユーザーに、ディレクトリに対する読取り、書込みおよび実行権限があることを意味します。
この項には、実行可能印刷プログラムの作成および登録方法などの、プリンタに関するリファレンスが記載されています。
Oracle Applicationsの「プリンタ」フォームでプリンタを登録するには、Oracle Applicationsシステム管理者が各プリンタのオペレーティング・システム名を把握している必要があります。使用しているプラットフォームでのプリンタ名を検索するには、『Installation Update』を参照してください。『Installation Update』には、プリンタの設定に関する他の情報も含まれています。
この項には、実行可能な印刷プログラムの作成と登録方法に関する情報など、UNIXオペレーティング・システム固有のプリンタのリファレンスが記載されています。
「プリンタ・ドライバ」フォームで選択できる標準印刷サブルーチンでは、Oracle Application Object Libraryのルーチンを使用してレポートを印刷します。この方法では、カスタマイズされた実行可能プログラムまたはシェル・コマンド(lp、lprなど)を使用して印刷するよりも、少ないマシン・リソースで済みます。
このサブルーチンを使用する場合は、使用可能なオプションがフォーム下部の付加フレックスフィールドに表示されます。これらのオプションは、プラットフォームによって異なり、次の「メール: レポートの印刷が終了したときにEメールでユーザーに通知」が組み込まれている場合もあります。
メール: レポートの印刷が終了したときにEメールでユーザーに通知
優先度: 印刷キューにレポートの優先度を設定
使用可能なその他のオプションについては、『Installation Update』を確認してください。
Oracle Applicationsでは、印刷に実行可能プログラムを使用できます。ただし、Oracle Applicationsのプリンタ・ドライバでは実現できない、次のような機能を提供するためにのみ、この実行可能プログラムを使用することをお薦めします。
プリンタに渡したテキスト内の特殊文字の解釈。たとえば、7ビットの互換プリンタに送信した8ビット文字を解釈するにはプログラムが必要です。
Oracle Applicationsから渡された引数の解釈。たとえば、異なる出力ファイル名に基づいて異なる処理を実行するプログラムが必要です。
このような特別な機能をサポートする必要がない場合は、Oracle Applicationsデータベースで定義されている標準印刷サブルーチンとプリンタ・ドライバを使用して印刷してください。この方法では、マシーン・リソースを最も効率的に使用できます。
標準印刷サブルーチンによる印刷では、実行可能プログラムを介して印刷するよりも効率的にマシン・リソースが使用されるため、Oracle Applicationsの以前のリリースで実行可能印刷プログラムを使用した場合は、次のことをお薦めします。
事前定義済のプリンタ・ドライバで実行可能プログラムを置換できる場合は、そのドライバとプリンタ・タイプを「プリンタ・タイプ」フォームで登録します。
たとえば、Oracle Applicationsには、印刷形式「横長」とプリンタ・ドライバ「LANDSCAPESUB」が用意されています。これらは、プログラムlandと同じ機能を実行し、DEC LN03プリンタで1行に132文字を印刷できます。
事前定義済ドライバが機能しない場合、実行ファイルを置換できるカスタマイズしたドライバを作成できます。ドライバは、「プリンタ・ドライバ」フォームで作成します。
実行ファイルを単純なプリンタ・ドライバ定義に置換できない場合、実行ファイルまたは実行ファイルをコールするシェル・スクリプトをOracle Applicationsに登録すると、実行ファイルを引き続き使用できます。
実行可能な印刷プログラムでは、エスケープ・シーケンスまたはプリンタ・プログラミング言語を使用してレポート出力を書式設定できます。レポート出力の作成には、プリンタ操作とコンピュータ・プログラミング言語に関する十分な知識が必要です。実行可能な印刷プログラムを作成する必要がある場合は、この項のガイドラインに従ってください。
プリンタ形式
実行可能プログラムでは、次のような様々な印刷形式のレポート出力を書式設定できる必要があります。
縦長: 1ページ当たり80列66行
横長: 1ページ当たり132文字66行(A4用紙の場合は1ページ当たり62行)
超横長: 1ページ当たり180文字66行(A4用紙の場合は1ページ当たり62行)
引数の書式設定
プログラムで様々な印刷形式の書式を内部的に処理する場合は、使用する印刷形式を判断するため、プリンタ・ドライバからプログラムに引数を渡すことができます。
プログラムに印刷形式の書式を設定するコマンドが含まれていない場合は、プログラムをコールするシェル・スクリプトでコマンドを定義できます。次に、そのシェル・スクリプトを印刷プログラムとしてプリンタ・ドライバに定義し、印刷形式を判断する引数をドライバからスクリプトに渡します。
実行可能プログラムまたはシェル・スクリプトをコールするプリンタ・ドライバは、次の引数の引渡しが可能である必要があります。
出力先プリンタ名
印刷部数
タイトル・ページのバナー
ファイル名
初期化およびリセット
「プリンタ・ドライバ」フォームでこれらの文字列を定義できる場合、プリンタを初期化およびリセットする文字列を追加する必要はありません。
キャラクタ・モードのOracle Reportsコマンド
Oracle Reportsの標準プリンタ・ドライバとともに動作するように、実行可能プログラムを設計することをお薦めします。$FND_TOP/$APPLREPディレクトリには、次の標準ドライバがあります。
P.prt: 縦長形式
L.prt: 横長形式
W.prt: 超横長形式
A.prt: A4形式
標準ドライバによってOracle Applicationsレポートに埋め込まれた太字、太字解除およびページ・サイズのコマンドは、プログラムで正しく解釈される必要があります。必要に応じて、次の項の説明に従い、Oracle Reportsのカスタマイズ・ドライバを作成できます。
プログラムの保管場所
ソース・コードをコンパイルおよびリンクした場合、またはシェル・スクリプトを記述した場合は、カスタム開発領域の最上位ディレクトリ下にある$APPLBINサブディレクトリにプログラムを移動します。カスタム開発領域にあるソース・ファイルのコピーは、バックアップ用に保管してください。
カスタマイズ・キャラクタ・モードのOracle Reports印刷ドライバの作成
Oracle Reportsの印刷ドライバでは、イタリック体、下線および太字のフォント・スタイルを設定します。実行可能な印刷プログラムでOracle Reportsの標準ドライバを使用できない場合は、プログラムで使用する各印刷形式について、カスタマイズしたドライバを作成します。
カスタマイズしたドライバを作成するには、$FND_TOP/$APPLREPからカスタム開発環境にL.prt、P.prt、A.prtまたはW.prtをコピーします。必要に応じて、実行可能な印刷プログラムの標準ドライバを変更します。カスタマイズしたドライバに新しいファイル名を指定しますが、拡張子は.prtのままにしてください。次に、カスタマイズしたドライバを$FND_TOP/$APPLREPにコピーします。
ヒント: ドライバ名には、実行可能なプログラム名と印刷形式文字を使用してください。たとえば、実行可能プログラムHPLJ3の縦長形式印刷には、HPLJ3P.prtを使用します。このプログラムを使用して縦長形式で印刷する場合、コンカレント・マネージャは、このHPLJ3P.prtドライバをOracle ReportsにDESFORMAT=HPLJ3Pとして渡します。
実行可能プログラムの登録
実行可能プログラム、およびオプションでシェル・スクリプトとOracle Reportsドライバを作成した場合は、「プリンタ・ドライバ」フォームでそれらを登録します。
「プリンタ・ドライバ」ウィンドウにナビゲートし、新しいプリンタ・ドライバ名を作成します。また、ユーザー名、摘要およびプラットフォームも追加します。
「SRWドライバ」フィールドに、Oracle Reportsの標準またはカスタマイズしたドライバ名を(.prt拡張子なしで)入力します。すべてのドライバが$FND_TOP/$APPLREPディレクトリに格納されている必要があります。
ドライバ方法として「プログラム」と入力します。
「スプール・ファイル」フィールドに「No」を入力します。
「標準入力」フィールドに「No」を入力します。
「プログラム名」フィールドに、実行可能プログラム名または実行可能プログラムをコールするシェル・スクリプト名を入力します。このファイルが$FND_TOP/binディレクトリにない場合は、フル・パス名も含めます。
Oracle Applicationsがプログラムまたはシェル・スクリプトに渡す引数を追加します。ドライバは、実行可能プログラムに次を渡す必要があります。
出力先プリンタ名
印刷部数
タイトル・ページのバナー
ファイル名
プログラムで初期化文字列およびリセット文字列がプリンタに送信されない場合は、該当するフィールドに初期化文字列およびリセット文字列を追加します。
この項には、Windowsオペレーティング・システム固有のプリンタに関するリファレンスが記載されています。また、実行可能な印刷プログラムの作成と登録方法についても説明します。
Oracle Applicationsの「プリンタ」ウィンドウでプリンタを登録するには、Oracle Applicationsシステム管理者が各プリンタのオペレーティング・システム名を把握している必要があります。Windowsの場合、「マイ コンピュータ」の「プリンタ」フォルダからプリンタの名称を取得できます。無効なプリンタを登録すると、かわりにオペレーティング・システムのデフォルト・プリンタが使用されます。
「プリンタ・ドライバ」フォームで選択できる標準印刷サブルーチンは、Oracle Application Object Libraryのルーチンを使用してレポートを印刷します。この方法では、カスタマイズされた実行可能プログラムのDOSコマンド(PRINTなど)を使用して印刷するよりも、少ないマシン・リソースで済みます。
Oracle Applicationsでは、印刷に実行可能プログラムを使用できます。ただし、Oracle Applicationsのプリンタ・ドライバでは実現できない、次のような機能を提供するためにのみ、この実行可能プログラムを使用することをお薦めします。
プリンタに渡したテキスト内の特殊文字の解釈。たとえば、7ビットの互換プリンタに送信した8ビット文字を解釈するプログラムが必要です。
Oracle Applicationsから渡された引数の解釈。たとえば、異なる出力ファイル名に基づいて異なる処理を実行するプログラムが必要です。
このような特別な機能をサポートする必要がない場合は、Oracle Applicationsデータベースで定義されている標準印刷サブルーチンとプリンタ・ドライバを使用して印刷してください。この方法では、マシーン・リソースを最も効率的に使用できます。
標準印刷サブルーチンによる印刷では、実行可能プログラムを介して印刷するよりも効率的にマシン・リソースが使用されるため、Oracle Applicationsの以前のリリースで実行可能印刷プログラムを使用した場合は、次のことをお薦めします。
事前定義済のプリンタ・ドライバで実行可能プログラムを置換できる場合は、そのドライバとプリンタ・タイプを「プリンタ・タイプ」フォームで登録します。
たとえば、Oracle Applicationsには、印刷形式「横長」とプリンタ・ドライバ「LANDSCAPESUB」が用意されています。これらは、プログラムlandと同じ機能を実行し、DEC LN03プリンタで1行に132文字を印刷できます。
事前定義済ドライバが機能しない場合、実行ファイルを置換できるカスタマイズしたドライバを作成できます。ドライバは、「プリンタ・ドライバ」フォームで作成します。
実行ファイルを単純なプリンタ・ドライバ定義に置換できない場合、実行ファイルまたは実行ファイルをコールするシェル・スクリプトをOracle Applicationsに登録すると、実行ファイルを引き続き使用できます。
実行可能な印刷プログラムでは、エスケープ・シーケンスまたはプリンタ・プログラミング言語を使用してレポート出力を書式設定できます。レポート出力の作成には、プリンタ操作とコンピュータ・プログラミング言語に関する十分な知識が必要です。実行可能な印刷プログラムを作成する必要がある場合は、この項のガイドラインに従ってください。
プリンタ形式
実行可能プログラムでは、次のような様々な印刷形式のレポート出力を書式設定できる必要があります。
縦長: 1ページ当たり80列66行
横長: 1ページ当たり132文字66行(A4用紙の場合は1ページ当たり62行)
超横長: 1ページ当たり180文字66行(A4用紙の場合は1ページ当たり62行)
引数の書式設定
プログラムで様々な印刷形式の書式を内部的に処理する場合は、使用する印刷形式を判断するため、プリンタ・ドライバからプログラムに引数を渡すことができます。
プログラムに印刷形式を書式設定するコマンドが含まれていない場合は、プログラムをコールするコマンド・ファイルでコマンドを定義できます。次に、その.cmdファイルをプリンタ・ドライバに印刷プログラムとして定義し、印刷形式を判断する引数をドライバからスクリプトに渡します。
実行可能プログラムまたは.cmdファイルをコールするプリンタ・ドライバは、次の引数の引渡しが可能である必要があります。
出力先プリンタ名
印刷部数
タイトル・ページのバナー
ファイル名
初期化およびリセット
「プリンタ・ドライバ」フォームでこれらの文字列を定義できる場合、プリンタを初期化およびリセットする文字列を追加する必要はありません。
キャラクタ・モードのOracle Reportsコマンド
Oracle Reportsの標準プリンタ・ドライバとともに動作するように、実行可能プログラムを設計することをお薦めします。%FND_TOP%¥%APPLREP%ディレクトリには、次の標準ドライバがあります。
P.prt: 縦長形式
L.prt: 横長形式
W.prt: 超横長形式
A.prt: A4形式
標準ドライバによってOracle Applicationsレポートに埋め込まれた太字、太字解除およびページ・サイズのコマンドは、プログラムで正しく解釈される必要があります。必要に応じて、次の項の説明に従い、Oracle Reportsのカスタマイズしたドライバを作成できます。
プログラムの保管場所
ソース・コードをコンパイルおよびリンクした場合、またはコマンド・ファイルを記述した場合は、カスタム開発領域の最上位ディレクトリ下にある%APPLBIN%サブディレクトリにプログラムを移動します。カスタム開発領域にあるソース・ファイルのコピーは、バックアップ用に保管してください。
Oracle Reportsの印刷ドライバでは、イタリック体、下線および太字のフォント・スタイルを設定します。実行可能な印刷プログラムでOracle Reportsの標準ドライバを使用できない場合は、プログラムで使用する各印刷形式について、カスタマイズしたドライバを作成します。
カスタマイズしたドライバを作成するには、%FND_ TOP%¥%APPLREP%からカスタム開発環境にL.prt、P.prt、A.prtまたはW.prtをコピーします。必要に応じて、実行可能な印刷プログラムに対する標準ドライバを変更します。カスタマイズしたドライバに新しいファイル名を指定しますが、拡張子は.prtのままにしてください。次に、カスタマイズしたドライバを%FND_ TOP%¥%APPLREP%にコピーします。
ヒント: ドライバ名には、実行可能なプログラム名と印刷形式文字を使用してください。たとえば、実行可能プログラムHPLJ3の縦長形式印刷には、HPLJ3P.prtを使用します。このプログラムを使用して縦長形式で印刷する場合、コンカレント・マネージャは、このHPLJ3P.prtドライバをOracle ReportsにDESFORMAT=HPLJ3Pとして渡します。
詳細は、Oracle Reportsの開発者用のドキュメントを参照してください。
実行可能プログラム、およびオプションでOracle Reportsドライバを作成した場合は、「プリンタ・ドライバ」フォームでそれらを登録します。
プリンタ・ドライバ、および実行可能プログラムがサポートする各印刷形式に対応する印刷形式を定義します。次のステップを完了して、プリンタ・ドライバの実行可能プログラムを登録します。
「プリンタ・ドライバ」フォームにナビゲートし、新しいプリンタ・ドライバ名を作成します。また、ユーザー名、摘要およびプラットフォームも追加します。
「SRWドライバ」フィールドに、Oracle Reportsの標準またはカスタマイズしたドライバ名を(.prt拡張子なしで)入力します。すべてのドライバが%FND_TOP%¥%APPLREP%ディレクトリに格納されている必要があります。
ドライバ方法として「プログラム」と入力します。
「スプール・ファイル」フィールドに「No」を入力します。
「標準入力」フィールドに「No」を入力します。
「プログラム名」フィールドに、実行可能プログラム名または実行可能プログラムをコールするコマンド・ファイル名を入力します。このファイルが%FND_TOP%¥binディレクトリにない場合は、フル・パス名も含めます。
Oracle Applicationsがプログラムまたはコマンド・ファイルに渡す引数を追加します。ドライバは、実行可能プログラムに次を渡す必要があります。
出力先プリンタ名
印刷部数
タイトル・ページのバナー
ファイル名
プログラムで初期化文字列およびリセット文字列がプリンタに送信されない場合は、該当するフィールドに初期化文字列およびリセット文字列を追加します。
関連トピック