ヘッダーをスキップ

Oracle Application Management Pack for Oracle E-Business Suiteガイド
リリース12.1.0.2.0
部品番号E52969-01
目次へ移動
目次
前のページへ移動
次のページへ移動

カスタマイズ・マネージャのコーディング標準

ファイル用のカスタマイズ・マネージャ・コーディング標準

カスタマイズ・マネージャには、カスタム・パッケージに含まれるファイルが一定のコーディング標準を満たしているかどうかを確認する標準チェッカが付属しています。このチェッカは、すべてのコードの標準準拠に関するテストを実行します。

一部の標準は必須であり、カスタマイズ・マネージャでパッケージを作成しようとすると失敗します。その他の標準は推奨事項であり、標準チェッカは警告を出力しますがパッケージは作成されます。

必須のファイル標準

次の表の標準には準拠している必要があります。ファイルがこれらの標準に準拠していない場合、カスタマイズ・マネージャではそれを含むパッケージが作成されません。

標準名 説明
ヘッダーのチェック 各ファイルには、Oracle準拠のソース・ヘッダーが存在する必要があります。
PLDファイルの場所の標準 PLDファイルは、resource、plsqlまたはgraphsディレクトリのいずれかに存在する必要があります。
CONNECTを使用するSQLの標準 connect文を使用するSQLファイルでは、ファイル内に有効なdbdrvヒントが提供されている必要があります。
Java宛先パスの標準 パッケージ内のJavaファイルでは、宛先パスがjavaで始まっている必要があります。
Javaパッケージ・パスの標準 パッケージ内のJavaファイルでは、Javaファイルの宛先パスがそのパッケージ構造に一致している必要があります。

その他のファイル標準

次の表に、準拠していない場合は警告されるがパッケージは作成される標準を示します。

標準名 説明
Java SOPのチェック JavaファイルではSystem.out.printを使用できません。
Java System.gc()のチェック JavaファイルではSystem.gcを使用できません。
SQL dual参照のチェック SQLファイルではSystem.dualを使用できません(かわりにdualを使用します)。
PERLモジュールの場所 Perlモジュールは、perlディレクトリ以下のいずれかの場所に存在する必要があります。
PERLファイルの場所 Perlファイルは、bin、patch/[release]/bin、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
SQLコメントの標準 SQLファイルでは、--をコメントとして使用しないでください。
SQLファイル(!)のチェック SQLファイルには!文字を含めないでください。
PLS (!)のチェック PLSファイルには!文字を含めないでください。
JRAD halignのチェック JRAD XMLファイルにはhAlignを含めないでください。
Javaパッケージ名のチェック すべてのJavaクラスは、oracle.apps.[prod_name]で始まるパッケージに含まれる必要があります。
Java System.errチェックの標準 JavaファイルではSystem.errを使用できません。
SQLファイルの場所のチェック SQLファイルは、admin/sql、admin/template、admin/template/*、patch/ [some dir]/sqlまたはsqlディレクトリのいずれかに存在する必要があります。
Drvxファイルの場所のチェック Drvxファイルは、patch/[some dir]/driver、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
ドライバ・ファイルの場所の標準 ドライバ・ファイルは、admin/driver、patch/[some dir]/driver、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
LCTファイルの場所の標準 LCTファイルは、admin/import、patch/[some dir]/import、upgrade/[some dir]/import、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
LDTファイルの場所の標準 LDTファイルは、admin/import、patch/[some dir]/import、help、admin/template、admin/template/*ディレクトリのいずれかに存在する必要があります。
PKGファイルの場所の標準 パッケージ・ファイルは、admin/sql、patch/[some dir]/sql、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
RTFファイルの場所の標準 RTFファイルは、patch/115/publisher/templatesに存在する必要があります。
XSSの場所の標準 XSSファイルは、html、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
HCTの場所の標準 HCTファイルは、patch/[some dir]/import、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
HDTの場所の標準 HDTファイルは、patch/[some dir]/import、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
PDTの場所の標準 PDTファイルは、patch/[some dir]/import、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
JavaScriptの場所の標準 JavaScriptファイルは、html、patch/[some dir]/html、upgrade/[some dir]/html、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
PrintStackTraceのチェック printStackTraceの使用は推奨されません。
Workflowの場所の標準 Workflowファイルは、admin/import、patch/[some dir]/import、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
XDFの場所の標準 XDFファイルは、admin/xdf、patch/[some dir]/xdfまたはpatch/[some dir]/xdf/aw/USディレクトリのいずれかに存在する必要があります。
絶対URLチェックの標準 絶対URLをチェックします。
ReportプリンタDefファイル Reportプリンタ・ファイルは、reports、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
Formの場所の標準 Formファイルは、forms、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
JARの場所の標準 Jarファイルは、java/3rdparty、java/3rdparty/stdalone、admin/template、admin/template/またはpatch/115/jar/bpelディレクトリのいずれかに存在する必要があります。
JSPの場所の標準 JSPファイルは、html、html/jsp/[PROD]、html/jsp/[PROD]/[MOD]、html/jsp/[PROD]/[MOD]/[sub MOD]、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
依存性ファイルの場所の標準 依存性ファイルは、java/make、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
Cmdファイルの場所の標準 CMDファイルは、admin/template、admin/template/*またはbinディレクトリのいずれかに存在する必要があります。
XMLの場所の標準 XMLファイルは、html、java、mds、patch/115/publisher/defs、admin/template、admin/template/*またはpatch/115/manualstepsディレクトリのいずれかに存在する必要があります。
XGMの場所の標準 XGMファイルは、patch/[some dir]/xml/US、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
XSLの場所の標準 XSLファイルは、html、admin/xdf/xsl、patch/[some dir]/xdf/xslまたはpatch/[someディレクトリのいずれかに存在する必要があります。
ForceViewのチェック ビューの作成スクリプトでは、CREATE文でFORCEを使用する必要があります。
Show Errorのチェック SQLスクリプトにShow errorsコマンドを含めることはできません。
絶対URLのチェック 絶対URLの使用は推奨されません。
パッケージのReplaceのチェック パッケージ作成ではCREATE OR REPLACE PACKAGEを使用します。OR REPLACEを省略しないでください。
パッケージ作成のISのチェック パッケージ作成ではISは使用できません。かわりに常にASを使用する必要があります。
Xml解析の標準 XMLファイルは整形式である必要があります。
コントロールMの標準 テキスト・ファイルにはコントロールM [^M]文字を含めないでください。
SQL NoLoggingのチェック SQLスクリプトでのNOLoggingの使用は推奨されません。
SQL Serveroutputのチェック SQLスクリプトでのset serveroutput onの使用は推奨されません。
Wfxファイルのネーミング標準 WFXファイル名は、s、e、aで終わっている([s|e|a].wfx)必要があります。
16.3ファイル・ネーミング標準 ファイル名は、16.3ネーミング標準に準拠している必要があります。
Set Scan Offの標準 アンパサンドを含むパッケージの作成スクリプトには、SET SCAN OFFが含まれる必要があります。
Drop Tableのチェック Drop tableは、データが損失する可能性があるため、SQL/PLSQLファイルでは使用しないでください。
SQL行の最大長の標準 SQLファイルの行は、255文字より長くすることはできません。
FNDSLOADチェックの標準 FNDSLOADは現在使用されていません。dbdrv: hintsではFNDSLOADを参照しないでください。
Drop Columnのチェック Drop Columnは、SQL/PLSQLファイルでは使用しないでください。
Long Rawのチェック LONGまたはLONG RAW列は使用しないでください。
列の挿入のチェック INSERT SQL文では、挿入する列を明示的にリストする必要があります。
FNDLOAD/FNDLOADSOの構文のチェック FNDLOAD/FNDLOADSOの構文が適切である必要があります。
Admin Dbdrv noneのチェック [PROD_TOP]/admin以下のすべてのファイルは、dbdrv: noneのみを含む必要があります。
NLADD Sqlのチェック R12パッチでは[PROD]NLADD.sqlファイルを配置しないでください。
FNDLOAD ldtフェーズ dbdrv: FNDLOAD ldtファイルには適切なフェーズが含まれる必要があります。
メニュー・ファイルの場所 メニュー・ファイルは、resource、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
WFXファイルの場所のチェック WFXファイルは、patch/[some dir]/xml、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
単一行の作成のチェック SQLファイルでは、CREATEコマンドは1行のみに出現する必要があります。
SQL exitのチェック SQLファイルは、exitで終わっている必要があります。
パッケージ仕様部と本体が同ファイル パッケージの仕様部と本体は別のファイルに存在する必要があります。
SQL絶対パスのチェック SQLファイルでは、@または@@文に絶対パスを含めないでください。
SQLスクリプトのコールのチェック SQLスクリプト内でSQLスクリプトをコールする場合はstartまたは@を使用します。@@は使用しないでください。
Applsyspubスキーマのチェック カスタム・スクリプトでは、APPLSYSPUBスキーマを変更できません。
カスタム・ファイルのネーミング標準 パッケージに含まれるすべてのファイルでは、製品に接頭辞xxが付けられている必要があります。
パッケージ本体の作成の標準 パッケージ本体の作成スクリプトは、pkhファイルに配置しないでください。
パッケージ仕様部の作成の標準 パッケージ仕様部の作成スクリプトは、pkbおよびplbファイルに配置しないでください。
マテリアライズド・ビューのBuild deferredの標準 マテリアライズド・ビューは、BUILD DEFERREDオプションで作成する必要があります。
マテリアライズド・ビューのParallelの標準 マテリアライズド・ビューは、parallelコマンドで作成しないでください。
マテリアライズド・ビューのprebuiltの標準 マテリアライズド・ビューは、ON PREBUILT TABLEオプションでは作成できません。
Reportの場所の標準 Reportファイルは、reports、admin/templateまたはadmin/template/*ディレクトリのいずれかに存在する必要があります。
Import文のチェック Java import文では、完全修飾クラス名を参照する必要があります。
宛先パスでの言語のチェック パッケージ作成プロセスでのファイル・エントリの宛先パスには、接尾辞として言語コードを含めないでください。言語は、個別に指定する必要があります。
JRAD XMLファイル・タイプ パッケージの作成プロセス中に、XMLファイルがJRAD XMLというファイル・タイプで含まれる場合(ファイル・タイプIDは1005)、宛先パスはmdsで始まる必要があります。
PLDファイルのコントロールM文字 PLDファイルにコントロールM文字が含まれる場合、そのPLDファイルを含むパッチを適用する場合に問題が発生する可能性があります。
SQL whenever sqlerror exit failure rollback SQLスクリプトには、WHENEVER SQLERROR EXIT FAILURE ROLLBACK;を含める必要があります。
Javaファイルの空のcatchブロック 空のcatchブロックでは例外が捕捉されたインスタンスが検出されますが、何も実行されません。
finallyブロックからの返却の回避 Javaコードでは、finallyブロックからの返却は避ける必要があります(これにより例外が破棄される可能性があります)。finallyブロックからのreturn文は配置しないでください。
nullポインタ例外の捕捉の回避 Javaコードでは、nullポインタ例外を捕捉しないでください。catchブロックによって元のエラーが隠蔽され、より理解しにくい他のエラーが発生する可能性があります。
Javaのfinallyブロックでの例外のスロー Javaでは、finallyブロックでの例外のスローは混乱の原因となります。これによって、コードでの例外や不具合が隠蔽されたり、コードのクリーンアップが不安定になる可能性があります。
Javaのthrowableの捕捉 Javaでは、throwableの捕捉は避ける必要があります。このような捕捉はOutOfMemoryErrorなどの他のエラーを捕捉する可能性があるため、このアクションは危険です。
Javaクラスではエラーを拡張しない エラーはシステム例外です。クラスではそれらを拡張しないでください。
Javaファイルはrcs_idを含む必要がある すべてのJavaファイルには、ソース・コントロールIDについて次のものが含まれる必要があります。
public static final String RCS_ID = $Header$ 
Javaクラス名のチェック すべてのJavaファイルには、ファイル名と同じ名前を持つクラスが含まれる必要があります。
Javaの空のifのチェック Javaコードに空のif文を配置しないでください。空のif文では条件が確認されたインスタンスが検出されますが、それについて何も実行されません。
Javaの空のwhileのチェック Javaコードに空のwhile文を配置しないでください。
Javaの空のfinallyブロック Javaコードに空のfinallyブロックを配置しないでください。空のfinallyブロックは避けてください(これらは削除される可能性があります)。
Javaのカッコのないif Javaでは、if文で中カッコを使用する必要があります。中カッコのないif文の使用は避けてください。
Javaのカッコのないwhile Javaでは、while文で中カッコを使用する必要があります。中カッコを使用しないwhile文の使用は避けてください。中カッコのない書式では、エラーが発生しやすくなります。
Javaのswitchはデフォルト・ラベルを持つ必要がある Javaファイルでは、switch文はデフォルト・ラベルを持つ必要があります。
Javaの空のsynchronized 空のsynchronizedブロックを配置しないでください。
Javaの空のstaticイニシャライザ 空のstaticイニシャライザ・ブロックを配置しないでください。
JRADファイルの言語はUS英語である必要がある JRAD XMLファイルでは、XMLファイルの言語はUS英語である必要があり、xml:lang = 'en-US'として指定します。
Javaパラメータの(INI)拡張子および場所の標準 Javaパラメータ・ファイルは次の標準に準拠する必要があります。
  -Identified by file extension: .ini
  -Location standard:
    1.$<PROD_TOP>/admin/template
    2.$<PROD_TOP>/admin/template/*
JDBCタイムスタンプ準拠 DATE列を送信またはフェッチする場合、適切な列のバインド・タイプを使用する必要があります。Types.TIMESTAMPまたはOracleTypes.TIMESTAMPは使用しないでください。
.drvxファイルで~FILEまたは~PATHを使用しない ~FILEおよび~PATHは、checkfile内であっても.drvxファイルのdbdrv: commandで使用できません。.drvxファイルは、データベースにロードされません。
dbdrv: fdfcmpはコールしない データベース・ドライバではfdfcmpをコールしないでください。
.drvx拡張子を持つファイルはdbdrv: commandを含む必要がある 各ドライバ例外(.drvx)ファイルには、dbdrv: commandが存在する必要があります。コマンドはすべて小文字である必要があります。dbdrv: none行のコマンドも失敗します。
drvxファイルにはXDOLoaderを含めない Oracle XML Publisherファイルを含むすべての新しいパッチでは、個別のdrvxファイルを使用するかわりにdbdrvコマンドをファイルに直接追加する必要があります。
drvxファイルにはdbdrv: PYLOADを含めない PYLOADは、自動的に生成されたデータベース・ドライバに配置しないでください。
dbdrv: FFXBCPの構文が適切である必要がある dbdrv: FFXBCPの構文が適切である必要があります。
exec ff bin FFXBCP bin &phase=last(+##) &ui_apps 0 Y( -S | -U | -SU | )
dbdrv: FFXMLCの構文が適切である必要がある FFXMLCコマンドは次の構文を含む必要があります。
exec ff bin FFXMLC bin (&phase=dat(+##)) &ui_apps 0 [yY]
dbdrv: FNDLIBRの構文が適切である必要がある FNDLIBRコマンドは次の構文を含む必要があります。
exec fnd bin FNDLIBR bin <phase> FND FNDCPBWV &ui_apps
SYSADMIN 'System Administrator' SYSADMIN
dbdrv: java htmlLoad.classの構文が適切である必要がある Java htmlLoad.classコマンドは次の構文を含む必要があります。
exec java oracle/apps/per htmlLoad.class java -username &un_apps -password
&pw_apps -database &jdbc_db_addr -file <.html file>
dbdrv: java UnzipFile.classの構文が適切である必要がある Java UnzipFile.classコマンドは次の構文を含む必要があります。
exec java oracle/apps/ad/jri UnzipFile.class java  

ファイルは.zip拡張子を持つ必要もあります。
dbdrv: LoadMap.classの構文が適切である必要がある LoadMap.classは次の構文に従っている必要があります。
exec java oracle/apps/ecx/loader LoadMap.class java &phase=dat &un_apps 
&pw_apps &jdbc_db_addr &fullpath_prod_path_file
JRAD XMLファイルはfile-version属性を持つ必要がある JRAD XMLファイルは、ファイルのバージョンを示すfile-version属性を持つ必要があります。次に、file-versionのサンプル定義を示します。
<page xmlns:jrad='http://xmlns.oracle.com/jrad' 
xmlns:oa='http://xmlns.oracle.com/oa' xmlns:ui='http://xmlns.oracle.com/uix/ui' 
version='9.0.3.7.0_428' xml:lang='en-US' file-version='$Header: 
AkTestAttachLinkPG.xml 115.0 2003/02/10 18:18:10 tmak noship $' 
xmlns='http://xmlns.oracle.com/jrad'>

file-version属性には、適切なファイル名およびバージョンが含まれる必要があります。
JRADファイルの変換の標準 JRAD xmlファイルでは、エンコーディングはUTF-8である必要があり、encoding = 'UTF-8'として指定します。
コメントを-文字で終わらせない コメントは-文字で終わらせないでください(これはSql*Plusのデフォルトの行継続文字であるため)。一連の-を含む行に対しては、+記号で行を終わらせます。

データベース・オブジェクト用のカスタマイズ・マネージャ・コーディング標準

次の表に、Oracle E-Business Suite Release 12.2オンライン・パッチ適用のみに適用可能な標準を示します。

オブジェクト・タイプ 説明 ファイル・タイプ
列タイプはROWIDにできません。 .xdf、.odf
列タイプはLONGにできません。 .xdf、.odf
列タイプは、組込み型または非エディション・ユーザーが所有するユーザー定義型にする必要があります。 .xdf
ベース列名は、表内で最初の27バイト以内で一意である必要があります。 .xdf、.odf
ベース列名で#を使用できるのは、列バージョンとの区別を目的とする場合だけです(例: <col_name>#<version>)。 .xdf、.odf
表は、APPSではなく、Oracle E-Business Suite製品スキーマが所有している必要があります。 .xdf
表名に#は使用できません。 .xdf、.odf
マテリアライズド・ビュー(MV) XDFを使用してマテリアライズド・ビューの定義を作成または変更します。 .sql、.pkb、.pkh
制約 XDFまたはODFを使用して制約の定義を作成または変更します。 .sql、.pkb、.pkh、.pls
索引 ODFまたはXDFを使用して索引の定義を作成または変更します。 .sql、.pkb、.pkh、.pls
ODFまたはXDFを使用して表の定義を作成または変更します。 .sql、.pkb、.pkh、.pls
オンライン・パッチでアプリケーション管理表を変更しないでください。 .xdf、.odf
制約 制約名には、アンダースコア(_)を含める必要があります。 .xdf
索引 索引名には、アンダースコア(_)を含める必要があります。 .xdf、.odf
トリガー 表トリガーは、表ではなくエディショニング・ビューで作成する必要があります。 .sql、.pkb、.pls
DMLは、表シノニムまたはエディショニング・ビューを介して表にアクセスする必要があります。 すべてのコード
VPD VPDポリシーは、表ではなくエディショニング・ビューまたは表シノニムで作成する必要があります。 .sql
シノニム 表シノニムは、表ではなくエディショニング・ビューを示す必要があります。 .sql、.pkb、.pls
シノニム 非エディション・スキーマにシノニムをインストールしないでください。 .xdf、.odf