HTMLテンプレート(HTMPLフォーム)

この記事には、以下のトピックが含まれています。
casm173
この記事には、以下のトピックが含まれています。
Web インターフェースのフォームは、HTML テンプレートとして、.htmpl のサフィックスを持つファイルで配布されます。 本書ではこれを「HTMPL フォーム」と呼びます。
HTMPLフォームには、標準HTML(JavaScriptを含む)と言語拡張が含まれます。この言語拡張は、標準HTMLをブラウザに配布するWebエンジンを呼び出した サーバ デーモン(またはサービス)によって解釈されたものです。 このような拡張には、以下のものがあります。
  • サーバ変数の参照。 これは、名前の前のドル記号で示されます。 データベースの列の値、Webエンジン設定プロパティの参照、またはその他のサーバ情報です。
  • サーバ上でのタスク( データベースからの情報の読み取りなど)の実行をWebエンジンに命令する特別なタグ。 これらのタグの名前は、<PDM_...> または <pdm_...> の形式になります。
WSP を使用して CA SDM フォームをカスタマイズするために、HTMPL 拡張や HTML 自体について理解している必要はありません。
テンプレートの命名規則
基本的な 4 種類の HTMPL ファイルを識別するために、以下の命名規則が使用されます。
xxx
は、オブジェクトを表しています。
テンプレート タイプ
名前
リスト(検索フィルタと結果)
list_
xxx
.htmpl
読み取り専用の詳細フォームと詳細編集フォームを組み合わせたもの(アナリスト用インターフェース)
detail_
xxx
.htmpl
読み取り専用の詳細フォーム
detail_
xxx
_ro.htmpl
詳細編集フォーム
detail_
xxx
_edit.htmpl
オブジェクトの定義およびプロパティは、以下の場所にあります。
  • (UNIX) $NX_ROOT/bopcfg/majic/*.maj
  • (Windows)
    installation-directory
    \bopcfg\*.maj
CA SDM を定義するオブジェクトおよび属性の詳細については、「CA Service Desk Manager 参照コマンド」を参照してください。
HTMPL ディレクトリ
これらのインターフェースを実装するために使用する一連のHTMPLファイルは、以下の表に示すようにオペレーティング システムごとに用意されています。
オペレーティング システム
HTMPLファイルがあるディレクトリ
Windows
Installation-directory
\bopcfg\www\htmpl\web\
interface
UNIX
$NX_ROOT/bopcfg/www/htmpl/web/
interface
この表で
interface
はインターフェースの名前(アナリスト、顧客、または従業員)を示しています。
ゲスト用インターフェース ファイルの個別のディレクトリはありません。デフォルトでは、このインターフェースでは従業員用インターフェース ファイルが使用されます。 ゲスト ユーザ用インターフェースを変更するには、ユーザのSystem_Anonymousに関連付けられているアクセス タイプを変更します。 現在のユーザが既知のユーザであるか、またはゲストであるかに応じて、顧客用のファイルと従業員用のファイルはこのドキュメントで説明されている <PDM_IF> テンプレート コマンドを使用して動的に変更されます。
htmplディレクトリには、以下の3つのサブディレクトリが含まれます。
  • default
    すべてのインターフェースに共通のHTMPLファイルが含まれています。 Webエンジンは、ファイルの検索時に、現在のユーザのインターフェースに対応するディレクトリを最初に検索し、その後でdefaultディレクトリを検索します。
  • pda/analyst: (UNIX)
  • pda\analyst: (Windows)
    モバイル デバイス用インターフェースで使用するHTMPLファイルが含まれています。 CA Service Desk Manager r11.0 のモバイル デバイス用インターフェースは、アナリストのみを対象として提供しています。
  • web
    /interface
    /legacy: (UNIX)
  • web\
    interface
    \legacy: (Windows)
    現在はもう使用されていない、以前のリリースの のHTMPLファイルが含まれています。 のインストール時に以前のリリースからアップグレードすると、このディレクトリが自動的に作成されます。 カスタマイズしたファイルが、legacyディレクトリ内のどのファイルも参照しない場合は、legacyディレクトリを削除できます。
提供されているHTMPLファイルに直接変更を加えることは決してしないでください。 変更する場合は、WSP を使用するか、対象ファイルを site/mods ディレクトリに手動でコピーしてから変更を加えてください。 Webサーバは新規フォームを検索するときに、適切なsite/modsディレクトリを検索してから、配布ディレクトリを検索します。 各インターフェースの標準のsite/modsディレクトリは、以下のとおりです。
オペレーティング システム
サイトで変更したHTMPLファイルのディレクトリ
Windows
installation-directory\site\mods\www\htmpl\interface\interface
UNIX
$NX_ROOT/site/mods/www/htmpl
/interface/interface
フォームを変更して
install directory\site\mods\www\htmpl\interface
ディレクトリに保存すると、ユーザが属するフォーム グループとは無関係に、フォームはすべてのユーザに公開されます。 変更したフォームを
install directory
\site\mods\www\htmpl\interface\
interface
ディレクトリに保存すると、そのフォーム グループに属していると定義されている連絡先のみが変更されたフォームを参照できます。
上記の表で
interface
はインターフェースの名前(アナリスト、顧客、または従業員)を示しています。 ゲスト用インターフェース ファイルのディレクトリはありません。このインターフェースでは従業員用インターフェース ファイルが使用されます。 変更した HTMPL ファイルを site/mods ディレクトリに保存することには、 のメンテナンス リリースや新規リリースをインストールしてもこのディレクトリがそのまま保持されるという利点があります。 また、オリジナル ファイルを残したまま、変更後のファイルをsite/modsディレクトリに保存することで、最初に配布されたHTMPLファイルの正確なコピーが常に確保された状態になります。
以下の表に、主なHTMLテーブルを示します。各 Web インターフェース ページには、それぞれ主要な機能があります。 ただし、<PDM_FORM> ブロックを任意のテンプレートに追加して、Web インターフェースでサポートされる操作に直接アクセスできます。 たとえば、メイン メニューを変更して、中間ページを介さずに案件をサブミットするフィールドを含めたり、検索基準フィールドや検索ボタンをリスト フォームに追加したりできます。
Webページ
HTMLテンプレート
メイン フォーム
menu_frames.htmpl
変更要求の表示/作成/更新
detail_chg.htmpl
変更要求のリストの表示
list_chg.htmpl
案件の表示/作成/更新
detail_iss.htmpl
案件のリストの表示
list_iss.htmpl
リクエストの表示/作成/更新
detail_cr.htmpl
リクエストのリストの表示
list_cr.htmpl
アナウンスメントの詳細情報の表示
detail_cnote_html
アナウンスメントのリストの表示
list_cnote.html
Login
login.htmpl
テンプレートの完全なリストについては、このセクションの最初の表に記載されているディレクトリの内容を確認してください。
Web フォーム グループ
カスタマイズしたWebページを1つまたは複数のフォーム グループにまとめることができます。 フォーム グループのディレクトリは、以下のディレクトリに含まれます。
  • Windows
    install-directory\site\mods\www\htmpl\web\
    interface
    install-directory\site\mods\www\wwwroot\subdirectory
  • UNIX
    $NX_ROOT/site/mods/www/htmpl/web
    /interface
    $NX_ROOT/site/mods/www/wwwroot/subdirectory
各フォーム グループは、これらのディレクトリのサブディレクトリになります。 カスタマイズしたフォームのディレクトリは、アクセス タイプの[カスタム フォーム グループ]フィールドで指定します。
ユーザがフォームをリクエストすると、Webエンジンは最初に、カスタム フォーム グループの適切なディレクトリを検索します。次に、ユーザのWebインターフェースの標準ディレクトリを検索し、最後にdefaultディレクトリを検索します。 1つのWebインターフェースに対して複数のアクセス タイプを定義し、それぞれに異なるカスタム フォーム グループを指定できます。 このようにすると、標準インターフェースのフォームの大部分を利用しながら、ユーザ タイプごとに特別なフォームを定義できます。
wwwroot のいずれかのサブディレクトリ(css、html、img、または scripts)にあるファイルが Web ページからリクエストされた場合も、同様のプロセスが発生します。 Web エンジンはフォーム CAisd/img/xxx.gif の HTMPL 参照を調べて、以下のいずれかの gif ファイルに変換します(最初に見つかった xxx.gif が選択されます)。
  • /CAisd/sitemods/img/formgroup/xxx.gif
  • /CAisd/sitemods/img/xxx.gif
  • /CAisd/img/xxx.gif
Web フォームグループの作成方法
フォーム グループを作成して、グループのメンバーが表示できるフォームを指定できます。
以下の手順に従います。
  1. 事前定義済みのアナリスト、顧客、または従業員フォーム グループ以外にフォーム グループが必要な場合は、WSP の[ファイル]メニューから[名前を付けて保存]を選択し、[フォームに名前を付けて保存]ダイアログ ボックスで[フォーム グループを追加]ボタンをクリックして、フォーム グループを作成します。 たとえば、アナリスト用インターフェースに2つのカスタマイズ フォームを追加する場合は、Analyst1およびAnalyst2というフォーム グループを作成します。 定義するインターフェースが事前定義済みのフォーム グループに当てはまらない場合にも、新規フォーム グループを作成できます。
  2. Web インターフェース( のプレビュー セッションではない)で、[管理]メニューから[セキュリティ]-[アクセス タイプ]を選択します。 次に、アクセス タイプをクリック(またはアクセス タイプを作成)し、[アクセス タイプの詳細]ウィンドウの[カスタム フォーム グループ]ドロップダウン リストを使用して、アクセス タイプにフォーム グループを割り当てます。 は、連絡先のログイン時にアクセス タイプを判別し、カスタム フォーム グループを使用して、site/modsディレクトリ構造のどこからカスタム フォームを検索するかを特定します。 フォーム グループのディレクトリ内でフォームが見つからない場合、最初にユーザのアクセス タイプの標準ディレクトリ内が検索され、次にdefaultディレクトリが検索されます。
  3. WSP で、[ファイル]メニューから[保存]を選択するか、カスタマイズした HTMPL ファイルを手動で以下のディレクトリにコピーしてください。
    Windows:
    installation-directory
    \site\mods\www\htmpl\web\
    form_group_name
    ディレクトリ
    UNIX: $NX_ROOT/site/mods/www/htmpl/web
    /form_group_name
新規 Web フォーム グループを設定し、適切なサブディレクトリにサポート ファイルをコピーしたら、Web サービスを再起動して変更を反映させる必要があります。