Oracle® Fusion Middleware Oracle WebCenter Contentでの開発 12c (12.2.1) E70070-01 |
|
前 |
次 |
ホーム > Oracle WebCenter Contentによる開発 > Idoc Scriptの関数および変数
この付録では、Oracle WebCenter Contentのカスタマイズに使用可能なIdoc Scriptの関数および変数について説明します。
Idoc Scriptには、多数のビルトイン・グローバル関数があります。関数は、文字列の比較、操作ルーチン、日付フォーマット化、ResultSetの操作といったアクションを実行します。いくつかの関数は、計算または比較の結果などの結果も返します。
関数名の後に情報をカッコで閉じることによって、情報が関数に渡されます。関数に渡される情報のピースをパラメータといいます。関数には、パラメータをとらないもの、パラメータを1つとるもの、複数のパラメータをとるものがあります。関数のなかには、その使用方法によってパラメータ数が異なるものもあります。
ビルトイン・グローバル関数の他に、カスタム・クラスを含む新規のグローバル関数を、Javaコードを使用して定義できます。詳細は、第12章「コンテンツ・サーバーのコンポーネントのスタート・ガイド」および第18章「カスタム・コンポーネントの作成」を参照してください。
Idoc Scriptは、ビルトイン関数とともに、様々な変数を使用します。Idocスクリプトの中で使用される変数には、動的変数、条件動的変数およびページ表示変数があります。これらの変数の多くは、スクリプトの中で使用したり、WebCenter Contentのconfig.cfg
ファイルとintradoc.cfg
ファイル内で個別に指定したり、WebブラウザのURLに使用したりすることもできます。
.cfg
ファイルまたはWebブラウザのURLでのみ使用される変数の詳細は、『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』を参照してください。
現在のページを中止して、エラー・メッセージを表示します。
この関数はStatusCode変数を評価し、負の数値(-1
)が返された場合は、現在のページにかえてエラー・ページを表示します。
StatusMessage変数は、エラー・メッセージ文字列として使用できます。
例
現在のページを中止し、エラー・メッセージとして「アクセスが拒否されました」
を表示します。
<$abortToErrorPage("Access Denied")$>
現在のページを中止し、エラー・メッセージとしてStatusMessage変数の値を表示します。
<$abortToErrorPage("<$StatusMessage$>")$>
メタデータ・フィールドのオプション・リストの最初のオプションが空白の値であることを指定します。
現在のユーザーが少なくとも1つのセキュリティ・グループに対して管理者
ロールを持っているかどうかを確認します。
現在のページがログインの直後に作成されたかどうかを指定します。
現在のユーザーがコンテンツ・アイテムのセキュリティ・グループに対してチェックイン権限を持っているかどうかを確認します。
現在のユーザーがコンテンツ・アイテムのセキュリティ・グループに対してチェックアウト権限を持っているかどうかを確認します。
現在のユーザーが現在のワークフロー・アイテムの承認または却下を実行できるかどうかを確認します。
コンテンツ・アイテムの作成者の電子メール・アドレスを指定します。
作成者が、セキュリティ・グループに対する削除権限を持っていなくても自分のリビジョンを削除できるようにします。
TRUE
に設定された場合、作成者はセキュリティ・グループに対する削除権限を持っていなくても自分のリビジョンを削除できます。
デフォルトは空の文字列です。
自動番号付けされたすべてのコンテンツIDに追加される接頭辞を定義します。
自動番号付け接頭辞を返します(構成設定の値を返します)。
文字列を返します。
デフォルトのバッチ・ロード・テキスト・ファイルへのパスを定義します。
文字列としてファイル・パスを返します。
ループの終了に多く使用されます。
ブレーク指示によって、一番内側のループが終了します。
ループの終了に続いて、最初の文で制御が再開されます。
クライアント・ブラウザのバージョン番号を取得します。
コメントをIdoc Scriptコードで指定します。
この関数は、inc()
Idoc Script関数と同じように動作します。includeName
に対応する動的HTMLインクルードを評価して、それをページに表示します。考えられる相違点は、レンダリングされたHTMLを再評価するかわりに、それをキャッシュからプルすることです。
詳細は、第 3.4.1章「キーワードと関数の比較」を参照してください。
パラメータ
3つの必須パラメータと2つのオプションのパラメータを取ります。次に例を示します。
cacheInclude(includeName, scope, lifeSpan[, cacheName][, key])
パラメータ | 説明 |
---|---|
includeName |
評価する動的HTML要素の名前。 |
scope |
ユーザーごとに異なるHTMLを表示する場合はsession に設定し、すべてのユーザーに同じものを表示する場合はapplication に設定します。 |
lifeSpan |
このインクルードのキャッシュ内での存続期間(秒単位)。 |
cacheName |
オプション: デフォルトのキャッシュのかわりに、データを名前付きキャッシュに入れる場合に使用。空の文字列が渡される場合は、インクルードをセッションのデフォルトのキャッシュに入れます。 |
key |
オプション: 競合を避けるためにキャッシュの名前-範囲の自動指定を行わない場合は、ここで一意のキーを指定できます。 |
メタデータ・フィールドの幅をパーセンテージで指定します。
メタデータ・フィールドのキャプションの幅をパーセンテージで指定します。
スキーマResultSetからデータをクリアします。
ページがODMAクライアントからアクセスされたかどうかを確認します。
この値は、クライアントにより指定された更新プロセスを制御するために、文字列により渡されます。
この関数は、ページのデータに基づいてコンテンツ・アイテムのURLを計算します。
たとえば、アイテムのResultSetをループするときに、この関数をコールしてアイテムのURLを生成することができます。
ページに次の情報が表示されている必要があります。
dDocAccount
(オプション)
dDocName
dDocType
dProcessingState
dRevLabel
dSecurityGroup
dWebExtension
指定されたレンディションのURLを返します。
クライアントにより指定されたようにリクエストされたコンテンツ・アイテムの長さをバイト数で取得します。
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
重要: この設定は、コンテンツ・サーバーのバージョン7.0以降では廃止されています。Webサーバー・フィルタでは、この情報は送信されなくなりました。 |
フォームのみを表示するには、この変数をサービス・リクエストのURLに設定します。std_page_begin
およびstd_page_end
の各インクルード・ファイルは表示されません。
ResultSetのどの行にいるかを評価します。
ResultSetの最初の行は行ゼロ(0)です。
現在の日付と時刻が戻されます。
現在の日付と時間をユーザーに返したり、日付評価を使用するコマンドを作成したりする場合に使用できます。
この関数は、コンテンツ・アイテムを変換するようにDynamic Converterが構成されているかどうかを検証します。戻り値は、アイテムのdFormat
の値に基づきます。
この関数は通常、条件付きでDynamic Converterリンクを表示するために「検索結果」ページで使用します。
この関数は、dynamicdata表をResultSetにロードします。これは、ddLoadIndexedColumnResultSet
とほとんど同じです。主な相違点は、Idoc Script ResultSetがすでに存在している場合、dynamicdata表から作成された新しいResultSetがそれに追加されることです。dynamicdata表にあってもターゲットのResultSetに存在しないフィールドは、自動的に追加されます。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
idocTableName |
dynamicdata表の追加先であるResultSetの名前。 |
indexColumn |
dynamicdata表の索引付き列の名前。 |
indexValue |
元の表のセクションの選択に使用する値。この値は、各行のindexColumn 値と照合して、大/小文字を区別しないで確認されます。一致した場合、その行はResultSetにロードされ、一致しない場合はスキップされます。 |
mappingTableName |
最後のResultSetの列名の変更に使用するdynamicdata表の名前。名前の変更は、指定したマッピング表の列名を同じ表の最初の行の値にマッピングして処理されます。これは、ddLoadResultSet での処理とまったく同じです。 |
例
<@dynamicdata MyDataTable@> <?commatable indexedColumns="fieldA"?> fieldA, fieldB, fieldC 1, 2, 3 4, 5, 6 1, 3, 9 <@end@> <$exec rsCreateResultSet("MyResultSet", "fieldA,fieldB")$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.fieldA = "first value"$> <$MyResultSet.fieldB = "second value"$> <$exec ddLoadIndexedColumnResultSet("MyDataTable", "MyResultSet", "fieldA", "1")$> <$exec rsFirst("MyResultSet")$> <$foo = MyResultSet.fieldB$> [[% (foo == 'second value') %]]<$exec rsNext("MyResultSet")$> <$bar = MyResultSet.fieldC$> [[% (bar == '3') %]]
この関数は、dynamicdata表をResultSetにロードします。これはddLoadResultSet
とほとんど同じです。主な相違点は、Idoc Script ResultSetがすでに存在している場合、dynamicdata表から作成された新しいResultSetがそれに追加されることです。dynamicdata表にあってもターゲットのResultSetに存在しないフィールドは、自動的に追加されます。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
idocTableName |
dynamicdata表の追加先であるResultSetの名前。 |
mappingTableName |
最後のResultSetの列名の変更に使用するdynamicdata表の名前。名前の変更は、指定したマッピング表の列名を同じ表の最初の行の値にマッピングして処理されます。これは、ddLoadResultSet での処理とまったく同じです。 |
例
<@dynamicdata MyDataTable@> field1, field2, field3 a, b, c d, e, f <@end@> <$exec rsCreateResultSet("MyResultSet", "field1,field2")$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.field1 = "first value"$> <$MyResultSet.field2 = "second value"$> <$exec ddAppendResultSet("MyDataTable", "MyResultSet")$> <$exec rsFirst("MyResultSet")$> <$foo = MyResultSet.field1$> [[% (foo == 'first value') %]] <$exec rsNext("MyResultSet")$> <$bar = MyResultSet.field3$> [[% (bar == 'c') %]]
この関数は、特定のdynamicdata表で定義されたルールを使用して既存のResultSetをソートします。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ソート・ルールに使用するdynamicdata表の名前。 |
resultSetName |
dynamicdata表の追加先であるResultSetの名前。 |
例
<@dynamicdata MyDataTable@> <?commatable sortcolumn="order" sortType="int" sortOrder="asc"?> user, service, order jane, DOC_INFO, 10 bob, GET_SEARCH_RESULTS, 20 annette, CHECKIN_NEW, 30 <@end@> <$exec rsCreate("MyResultSet")$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.user = "james"$> <$MyResultSet.service = "GET_FILE"$> <$MyResultSet.order = 75$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.user = "zoe"$> <$MyResultSet.service = "DOC_INFO_BY_NAME"$> <$MyResultSet.order = 20$> <$exec ddApplyTableSortToResultSet("MyDataTable", "MyResultSet")$>
この関数はdynamicdata表を取り込み、その表の列名が含まれているカンマ区切り文字列を返します。多くのdynamicdata表は、コンテンツ・サーバー・システムでコード化される値のカンマ区切りリストのみを指定するために、行を含まないフィールド名のみで構成されることが想定されています。
この関数はリソース・インクルードを実行しますが、dynamicdata表により指定された値は変更されないように保護します。データ表の列名は、保護する必要のある変数名のリストとして使用されます。これらの変数は、一時的にキャッシュされ、インクルードがコールされ、キャッシュされた値に変数を再設定することによって保護されます。変数がnullの場合は空白に設定されます。
表の列名の1つがドル記号($
)で始まる場合、後に続く文字列はResultSetの名前と見なされます。その場合、それはメモリーに一時的にキャッシュされたResultSetのポインタとなり、リソース・インクルードの実行終了後に置換されます。キャッシングの時点でそのResultSetが存在していなかった場合は、末尾にそのキーが指定されているResultSetが削除されます。ポインタがキャッシュされたときにResultSetがアクティブであれば、インクルードのコール中に同名のResultSetを新規に作成でき、それまでアクティブであったResultSetは、ループを妨げることなく適切に回復されます。サイド・エフェクトの1つとして、アクティブResultSetを一時的に置換するResultSetが新規に作成された場合、最初にアクティブResultSetから値を取得する変数置換アルゴリズムで、キャッシュされたアクティブResultSetから変数の値を検索することができます(その変数が、より優先度の高いアクティブResultSetにフィールドとして検索されないことを前提とします)。キャッシュされたアクティブResultSetは、アクティブResultSetのスタックに場所を保持します。
この関数は、dynamicdata表をResultSetにロードします。この関数は、indexColumn
の値がindexValue
と一致する行のみをロードする点を除き、ddLoadResultSet
と同じです。この列で行われる比較は、大/小文字を区別しません。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
idocTableName |
dynamicdata表のロード先であるResultSetの名前。 |
indexColumn |
dynamicdata表の索引付き列の名前。 |
indexValue |
元の表のセクションの選択に使用する値。この値は、各行のindexColumn 値と照合して、大/小文字を区別しないで確認されます。値が一致した場合、その行はResultSetにロードされ、一致しない場合、その行はスキップされます。 |
mappingTableName |
最後のResultSetの列名の変更に使用するdynamicdata表の名前。名前の変更は、指定したマッピング表の列名を同じ表の最初の行の値にマッピングして処理されます。これは、ddLoadResultSet での処理とまったく同じです。 |
例
<@dynamicdata MyDataTable@> <?commatable indexedColumns="fieldA"?> fieldA, fieldB, fieldC 1, 2, 3 4, 5, 6 1, 3, 9 <@end@> <$exec ddLoadIndexedColumnResultSet("MyDataTable", "MyResultSet", "fieldA", "1")$> <$exec rsFirst("MyResultSet")$> <$foo = MyResultSet.fieldB$> [[% (foo == '2') %]] <$exec rsNext("MyResultSet")$> <$bar = MyResultSet.fieldC$> [[% (bar == '9') %]]
この関数は、dynamicdata表をResultSetにロードします。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
idocTableName |
dynamicdata表のロード先であるResultSetの名前。 |
mappingTableName |
最後のResultSetの列名の変更に使用するdynamicdata表の名前。名前の変更は、指定したマッピング表の列名を同じ表の最初の行の値にマッピングして処理されます。これは、ddLoadIndexedColumnResultSet の処理とまったく同じです。 |
例
<@dynamicdata MyDataTable@> fieldA, fieldB, fieldC 1, 2, 3 4, 5, 6 1, 3, 9 <@end@> <$exec ddLoadResultSet("MyDataTable", "MyResultSet")$> <$exec ddLoadResultSet("MyDataTable", "MyAliasedResultSet")$> <$exec rsFirst("MyResultSet")$> <$exec rsFirst("MyAliasedResultSet")$> <$foo = MyResultSet.field1$> [[% (foo == 'a') %]] <$bar = MyAliasedResultSet.alias2$> [[% (bar == 'c') %]]
この関数は、dynamicdata表をResultSetにマージします。この関数は、indexColumn
の値がindexValue
と一致する行のみをマージする点を除き、ddMergeResultSet
と同じです。この列で行われる比較は、大/小文字を区別しません。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
idocTableName |
dynamicdata表のマージ先であるResultSetの名前。 |
indexColumn |
dynamicdata表の索引付き列の名前。 |
indexValue |
元の表のセクションの選択に使用する値。この値は、各行のindexColumnと照合して、大/小文字を区別しないで確認されます。一致した場合、その行はResultSetにロードされ、一致しない場合はスキップされます。 |
mergeType |
実行されるマージのタイプ。これをreplace に設定して、マージによって新規行が追加されるのを防ぎます。このパラメータのその他の値はすべて、append として扱われます。 |
mappingTableName |
最後のResultSetの列名の変更に使用する必要のあるdynamicdata表の名前。名前の変更は、このマッピング表の列名を同じ表の最初の行の値にマッピングして処理されます。これは、ddLoadResultSet での処理とまったく同じです。 |
例
<@dynamicdata MyDataTable@> fieldA, fieldB, fieldC 1, 2, 3 4, 5, 6 1, 3, 9 <@end@> <$exec rsCreateResultSet("MyResultSet", "fieldA,fieldB,fieldC")$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.fieldA = "4"$> <$MyResultSet.fieldB = "8"$> <$MyResultSet.fieldB = "23"$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.fieldA = "8"$> <$MyResultSet.fieldB = "21"$> <$MyResultSet.fieldB = "59"$> <$exec ddMergeIndexedColumnResultSet("MyDataTable", "MyResultSet", "fieldA", "4", "replace")$> <$exec rsFirst("MyResultSet")$> <$foo = MyResultSet.fieldB$> [[% (foo == '5') %]] <$exec rsNext("MyResultSet")$> <$bar = MyResultSet.fieldC$> [[% (bar == '59') %]]
この関数は、dynamicdata表を既存のResultSetにマージします。ターゲットResultSetが存在しない場合、この関数はddLoadResultSet
と同様に動作して、ターゲットResultSetが作成されます。そうでない場合は、新規のResultSetの最初の列をマージ・キーとして使用してマージが実行されます。デフォルトでは、既存のIdoc Script表のどの行とも一致しない行が、マージによって新規のResultSetから追加されます。例外として、mergeType
パラメータがreplaceに設定されている場合、新しい行はIdoc Script ResultSetに追加されません。
このマージによって、新規のResultSetの特定の行に一致したすべての行が置換されるのではなく、最初に検出された行のみが置換されることに注意してください。この一致では、大/小文字が区別されます。mergeTypeパラメータはオプションであり、デフォルトはnullです。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
idocTableName |
dynamicdata表のマージ先であるResultSetの名前。 |
mergeType |
実行されるマージのタイプ。これをreplace に設定して、マージによって新規行が追加されるのを防ぎます。このパラメータのその他の値はすべて、append として扱われます。 |
mappingTableName |
最後のResultSetの列名の変更に使用する必要のあるdynamicdata表の名前。名前の変更は、このマッピング表の列名を同じ表の最初の行の値にマッピングして処理されます。これは、ddLoadResultSet での処理とまったく同じです。 |
例
<@dynamicdata MyDataTable@> fieldA, fieldB, fieldC 1, 2, 3 4, 5, 6 <@end@> <$exec rsCreateResultSet("MyResultSet", "fieldA,fieldB,fieldC")$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.fieldA = "4"$> <$MyResultSet.fieldB = "52"$> <$MyResultSet.fieldC = "18"$> <$exec ddMergeResultSet("MyDataTable", "MyResultSet", "replace")$> <$exec rsFirst("MyResultSet")$> <$foo = MyResultSet.fieldB$> [[% (foo == 52) %]] <$bar = MyResultSet.#numRows$> [[% (bar == 1) %]]
この関数はdynamicdata表から選択的な行をプルし、それを使用してターゲットResultSetの特定行の値を置換します。ターゲットResultSetの特定の列の値は、dynamicdata表の索引参照の値として使用されます。取得された副表は、ターゲットResultSetで一致する列名のある列の値の置換に使用されます。dynamicdata表には、索引値で選択された行が副表に1つだけあるものと想定されます。複数の行がある場合は、最初の行のみを使用して値をターゲットResultSetにマージします。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
idocTableName |
dynamicdata表のマージ先であるResultSetの名前。 |
indexColumn |
dynamicdata表の索引付き列の名前と、dynamicdata表の副表を選択するために値が取得されるターゲットResultSetの列の名前。 |
mappingTableName |
最後のResultSetの列名の変更に使用する必要のあるdynamicdata表の名前。名前の変更は、このマッピング表の列名を同じ表の最初の行の値にマッピングして処理されます。これは、ddLoadResultSet での処理とまったく同じです。 |
例
<@dynamicdata MyDataTable@> <?commatable indexedColumns="fieldA"?> fieldA, fieldB, fieldC 1, 2, 3 4, 5, 6 7, 8, 9 <@end@> <$exec rsCreateResultSet("MyResultSet", "fieldA,fieldB,fieldC")$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.fieldA = "4"$> <$MyResultSet.fieldB = "8"$> <$MyResultSet.fieldB = "23"$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.fieldA = "7"$> <$MyResultSet.fieldB = "20"$> <$MyResultSet.fieldB = "41"$> <$exec rsAppendNewRow("MyResultSet")$> <$MyResultSet.fieldA = "8"$> <$MyResultSet.fieldB = "21"$> <$MyResultSet.fieldB = "59"$> <$exec ddMergeIndexedColumnResultSet("MyDataTable", "MyResultSet", "fieldA")$> <$exec rsFirst("MyResultSet")$> <$foo = MyResultSet.fieldB$> [[% (foo == '5') %]] <$exec rsNext("MyResultSet")$> <$bar = MyResultSet.fieldC$> [[% (bar == '9') %]] <$exec rsNext("MyResultSet")$> <$bar = MyResultSet.fieldC$> [[% (bar == '59') %]]
この関数はdynamicdata表を取り込んで全体を反復し、行ごとにローカル・データ値を設定します。表の最初の列はキーのリストとして使用され、2番目の列は値のリストとして使用されます。
この関数はdynamicdata表の最初の行を取り込み、列名をキーとして使用して、列ごとにローカル値とそれに対応する値を設定します。最初の行が存在しない場合、この関数は何も実行しません。これは、大量のローカル値を迅速に設定する場合に便利なメソッドです。dynamicdata表のプロパティ、filterInclude
およびincludeColumns
は無視されます。
この関数はdynamicdata表の最初の行を取り込み、列名をキーとして使用して、列ごとにローカル値とそれに対応する値を設定します。最初の行が存在しない場合、この関数は何も実行しません。この関数は、ddSetLocalByColumnsFromFirstRow()とほとんど同じです。唯一の相違点として、この関数は、dynamicdata表の第1行ではなく、索引付き列が指定されている最初の行を使用します。索引付き行が見つからない場合、この関数は何も実行しません。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
dataTableName |
ロードするdynamicdata表の名前。 |
indexColumn |
dynamicdata表の索引付き列の名前。 |
indexValue |
元の表の行の選択に使用する値。この値は、各行のindexColumnと照合して、大/小文字を区別しないで確認されます。一致した場合は、その行が使用され、表のその他の行は無視されます。 |
例
<@dynamicdata MyDataTable@> <?commatable indexedColumns="fieldB"?> fieldA, fieldB, fieldC 1, 2, 3 4, 5, 6 7, 8, 9 3, 5, 2 <@end@> <$exec ddSetLocalByColumnsFromFirstRowIndexed("MyDataTable", "fieldB", 5)$> <$tmpStr1 = #local.fieldA$> [[% (tmpStr1 == '4') %]] <$tmpStr2 = #local.fieldC$> [[% (tmpStr2 == '6') %]]
この関数はdynamicdata表を取り込んで全体を反復し、ローカル・データをクリアします。最初の列は、クリアするキーとして使用されます。
この関数はdynamicdata表を取り込み、列を使用してローカル・データの値をクリアします。
匿名ユーザーのデフォルトのアカウントを定義します。
アカウントのカンマ区切りリストを使用する必要があります。
アカウント別の権限を、アカウント名の後にカッコに入れて指定する必要があります。
#none
エントリは、アカウントが割り当てられていないコンテンツ・アイテムに権限を付与します。#all
エントリでは、すべてのアカウントに権限が与えられます。
デフォルトは#none(RWDA)
です。
文字列としてアカウントのリストを返します。
メタデータ・フィールドの表示に使用するインクルードを指定します。
標準的なオプション・リスト・フィールドを表示するIdoc Scriptを定義します。
例
optList
関数を使用して、オプション・リストを生成します。
<$if optionsAllowPreselect and fieldValue$> <$defaultOptionListScript = "<$optList " & optionListName & ":fieldValue$>"$> <$else$> <$defaultOptionListScript = "<$optList " & optionListName & ":noselected$>"$> <$endif$>
現在のオプション・リストResultSetをループして、オプション・リストを生成します。
<@dynamichtml compute_resultset_option_list_script@> <$if not optionListKey$> <$optionListKey = fieldName$> <$endif$> <$defaultOptionListScript = "<$loop " & optionListResultSet & "$>" & "<$inc('std_resultset_option_list_item')$>" & "<$endloop$>"$> <@end@>
現在のユーザーが属しているロールのカンマ区切り、コロン区切りリストを取得します。
現在ページの表示に使用するために、指定されたコンテンツ・アイテムのすべてのインクルードをロードします。
指定されたコンテンツ・アイテムのファイル拡張子が.idoc
になっている必要があります。
この関数は、サイド・エフェクトとしてStatusCodeを設定します。ページを正しく表示するために指定したファイルが正常にロードされる必要がある場合は、abortToErrorPage関数を使用してください。
パラメータ
コンテンツ・サーバーにチェックインされるコンテンツ・アイテムを指定するCGIエンコード形式のパラメータ・リストを取り込みます。次の表に、パラメータ・オプションを示します。
オプション・パラメータ | 説明 |
---|---|
dID |
dID が存在しない場合は、dDocName およびRevisionSelectionMethod が存在している必要があります。このIDを持つコンテンツ・アイテムのリビジョンのレンディションが存在し、かつRevisionSelectionMethod パラメータが存在しないか、その値がSpecific である場合は、そのレンディションが返されます。 |
dDocName |
dDocName は、dDocName が判明しているコンテンツ・アイテムのすべてのリクエストに存在していることをお薦めします。エラー・メッセージは、フォームなどの他の機能と同様に、これが存在しているという想定に基づいています。
|
RevisionSelectionMethod |
これが指定された場合は、dDocName も指定する必要があります。この変数の値は、指定されたdDocName 値からdID 値を計算するために使用されるメソッドです。RevisionSelectionMethod 値は、Specific 、Latest またはLatestReleased です。
|
Rendition |
|
注意: HCSPページに使用する場合、CGIエンコード形式のパラメータ・リストのアンパサンド文字(& )を& 文字に変更する必要があります。 |
拡張子またはディレクトリ・パスのないファイルのファイル名を取得します。
この関数は通常、コンテンツ・サーバーにより管理される静的URLのコンテンツID (dDocName
)部分の取得に使用されます。
現在のコンテンツ・アイテムのタイプがアクティブResultSetでのタイプと一致するかどうかを評価します。
weblayout/
ディレクトリにあるファイルのURLを取得します。この変数は、サービス・コールごとに1回ではなく、コンテンツ・アイテムごとに1回評価されます。
URLを現在のユーザーに公開できるかどうかを評価します。
複数ファイルのダウンロード・アプレットを有効にします。
TRUE
に設定されている場合、ダウンロード・アプレットが有効になって、複数のファイルが検索結果ページからダウンロード可能になります。
FALSE
に設定されている場合、ダウンロード・アプレットは無効です。
デフォルトはFALSE
です。
場所
「システム・プロパティ」、「オプション」タブ、「ダウンロード・アプレットの有効化」
「管理」、「管理サーバー」、「一般構成」メニュー・オプション、「ダウンロード・アプレットを有効にする」
IntradocDir
/config/config.cfg
ダウンロード中のファイルのデフォルト・パスと提案された名前を取得します。
提案された名前は、コンテンツ・アイテムの元のファイル名に基づいています。
dpSet
関数により設定された値を返すために使用する関数です。
dpGet
およびdpSet
の両方を使用して、表示するコンテンツ・プロファイル・ルールのロジックを制御します。一般に、ユーザーは指定されたキーの値を設定するアクティブ化条件を作成することもできます。条件がFALSEに評価された場合でも(つまり、ルールの実行に失敗)、キーは設定されます。別のルールでキーにアクセスして、そのアクティブ化条件を評価するときに値を取得できます。この2つの関数を使用することにより、ユーザーはルール間の依存性を作成できます。たとえば、先行するルールが評価される場合のみ、ルールを評価したい場合があります。
ルール評価コンテキストの値をリクエスト・コンテキストに昇格させるための関数です。すべてのルールの評価後に、この関数によって指定されたキーと値がローカル・データにプッシュされます。
dpPromote
と同様に、この関数によって、プロファイル・ルールで生成されるResultSetはリクエスト・コンテキストに昇格できます。ResultSetは、すべてのルールの評価後にDataBinderにプッシュされます。値は、ルール・アクティブ化または操作の間は評価されませんが、ページ表示用に使用可能です。
Idoc Scriptが評価される任意の場所で、アクティブ化条件またはルールの値の評価時に一時的な値の設定に使用される関数です。
値は作業領域に設定され、dpGet
関数のコールによって取得できます。設定されるキーと値は永続しませんが、評価されるプロファイルではグローバルに使用可能です。すべてのキー/値のペアは、プロファイルのルールによってアクセスできます。
dpGet
およびdpSet
の両方を使用して、表示するコンテンツ・プロファイル・ルールのロジックを制御します。一般に、ユーザーは指定されたキーの値を設定するアクティブ化条件を作成することもできます。条件がFALSEに評価された場合でも(つまり、ルールの実行に失敗)、キーは設定されます。別のルールでキーにアクセスして、そのアクティブ化条件を評価するときに値を取得できます。この2つの関数を使用することにより、ユーザーはルール間の依存性を作成できます。たとえば、先行するルールが評価される場合のみ、ルールを評価したい場合があります。
ワークフローの名前を取得します。
ワークフロー内の現在のステップの名前を取得します。
例
IdcHomeDir
/resources/core/templates/workflow_info.htm
テンプレート・ページにある次のコードは、「ワークフロー・ステップ情報」ページでの現在のステップ名の表示に使用します。
<td align=right><span class=infoLabel><$lc("wwCurrentStep")$>
</span></td>
<td><span class=tableEntry>
<$loop WorkflowStep$>
<$dWfStepName$>
<$exec RequiredUsers = dWfStepWeight$>
<$if isTrue(dWfStepIsAll)$><$exec RequiredUsers = 0$><$endif$>
<$endloop$></span>
</td>
アカウントをチェックイン・ページで指定する必要があるかどうかを確認します。
アカウントが指定されていない場合にエラー・メッセージを表示するために、「標準ページ・リソース」ページで使用します。
PDF、テキスト、HTMLの各ファイルでのフルテキスト検索条件の強調表示を有効化します。
TRUE
に設定されている場合、検索条件の強調表示が有効化されます。
FALSE
に設定されている場合、検索条件の強調表示は無効になります。
コンテンツ・サーバーのインストール後のデフォルトはFALSE
です。
PDF Converterのインストール後のデフォルトはTRUE
です。
無効な、または破損HTML構成に対するデータ入力のフィルタに使用するIdoc関数。デフォルトでは、この関数は、インストール時に使用可能なコンポーネントであるスレッド・ディスカッションで使用されます。
rule
パラメータのunsafe
値の使用時にコンテンツ・サーバーにより受信された入力データはすべて、定式の安全でないスクリプト・タグのみに適用されます。この機能を変更するには、HtmlDataInputFilterLevel
構成変数を使用して、実行されたフィルタリングを変更します。
パラメータ
2つの必須パラメータと1つのオプションのパラメータを取ります。
最初のパラメータは、エンコードする文字列です。
2番目のパラメータは、HTML構成のエンコード時に適用されるルールです。許容される値は次のとおりです。
none
: HTML構成は変換されません。
unsafe
: 定式の安全でないスクリプト・タグのみがエンコードされます。
exceptsafe
: 定式の安全なスクリプト・タグがエンコードされません。
lfexceptsafe
: 拡張コメントがユーザーによって入力され、元のテキストの改行を保持する必要があるときに使用します。
空白文字のない長い文字列を改行するかどうかと、適用する最大ワード・サイズを指定するオプションのパラメータも使用可能です。wordbreak
またはnowordbreak
のいずれかを指定します。
現在のワークフロー・ステップが現在のリビジョンによって入力された回数を取得します。
この変数は条件文の作成に使用できますが、ハードコード化したり変更したりしないようにしてください。
この変数はコンパニオン・ファイルの中でローカライズされ、キーに保持されます。
<step_name>@<workflow_name>.entryCount
変数定義をIdoc Scriptとして評価します。リテラル文字列の再帰的評価に使用できます。
例
変数oneには文字列CompanyName
が割り当てられ、変数twoには、Idoc Scriptデリミタ内に変数oneを組み込んだ文字列が割り当てられます。ページ上では、変数oneは文字列Company Name
を表し、変数twoは文字列Welcome to <$one$>
を表し、eval(two)
は文字列Welcome to Company Name
を表します。
<$one="CompanyName"$> <$two="Welcome to <$one$>"$> <$one$><br> <$two$><br> <$eval(two)$>
名前に接頭辞xPrefix
のあるメタデータ・フィールドをすべて除外するとします。eval()
関数をこの目的で次のように使用してIdoc Scriptを動的に作成し、評価することができます。
<$loop DocMetaDefinition$> <$if strIndexOf("xPrefix", dName) >= 0$> <$myScript = "<$" & dName & ":isExcluded=1$>"$> <$eval(myScript)$> <$endif$> <$endloop$>
別のユーザーにより作成されたコンテンツを、ユーザーがチェックアウトできるかどうかを判別します。
TRUE
に設定した場合、作成者、またはセキュリティ・グループの管理者権限を持つユーザーのみがコンテンツ・アイテムをチェックアウトできます。
FALSE
に設定した場合、セキュリティ・グループの書込み権限を持つユーザーが、別のユーザーにより作成されたコンテンツをチェックアウトできます。
デフォルトはFALSE
です。
場所
「システム・プロパティ」、「コンテンツ・セキュリティ」タブ、「元のコントリビュータにのみチェックアウトを許可する」
「管理」、「管理サーバー」、「コンテンツ・セキュリティ」メニュー・オプション、「元のコントリビュータにのみチェックアウトを許可する」
IntradocDir
/config/config.cfg
Idoc Script式を実行して、出力を抑制します(式をページに表示しません)。
旧バージョンのIdoc Scriptでは、exec
キーワードは変数の値を出力ファイルに表示しないようにするために必須でした。現行バージョンでは、exec
キーワードは式を出力ファイルに表示しないようにする場合のみ必要です。
次の例の最初の行は、最後の2行と同等です。
<$varA="stringA", varB ="stringB"$> <$exec varA="stringA"$> <$exec varB="stringB"$>
exec
キーワードは通常、あとでページで使用するインクルードの指定など、背景で実行されるコードの評価に使用します。
コンテンツ・サーバーのサービスを実行します。
この関数は、ページの作成中でも、指定されたサービスを実行できるようにします。通常、サービスはブラウザでIdcCommandまたはCGI URLなどのツールを使用して実行されます。
動的サーバー・ページで使用されます。
executeService
関数でコールできるサービスは、パラメータ入力が必要でないという意味で、スクリプト可能である必要があります。スクリプト可能なサービスのアクセス・レベルは32以上です。
出力
サービスが正常に実行された場合、StatusCode値として0
を返します。
サービス実行中にエラーが発生した場合、StatusCode値として-1
を返します。
実行されたサービスの出力はすべて抑制されますが、ResultSetとロードされた値はいずれも使用可能です。
外部ユーザー・ベース(NTLM、Active Directory、またはLDAP)により定義されたユーザーのデフォルトのロールを取得します。
外部ユーザー・ベース(NTLM、Active Directory、またはLDAP)により定義されたユーザーのデフォルトのロールを取得します。
メタデータ・フィールドのキャプション・ラベルを指定します。
メタデータ・フィールドのキャプションの表示に使用するインクルードを指定します。
メタデータ・フィールドのキャプションのスタイルを指定します。
次のSPANスタイルは通常、キャプションに使用します。これは、IdcHomeDir
/resources/core/std_page.htm
リソース・ファイル内のstd_style_declaration
インクルードで定義されています。
searchLabel
infoLabel
tableEntry
requiredField
例
キャプション・スタイルをrequiredField
に設定します。
<$if isRequired and not suppressCaptionHighlighting$> <$fieldCaptionStyle = "requiredField"$> <$endif$> Generates the standard field caption: <@dynamichtml std_field_caption@> <span class=<$fieldCaptionStyle$>><$fieldCaption$><$if not isFormSubmit$><$":"$><$endif$></span> <@end@>
メタデータ・フィールドのデフォルト値を指定します。
HTMLページでのメタデータ入力フィールドの文字幅を指定します。これは、リソースcompute_std_field_includes
.に含まれているcompute_namevalue_edit_widths
で設定されます。
メタデータ・フィールドの値の表示に使用するインクルードを指定します。
特定のメタデータ・フィールドに対して追加のJavaScript検証が含まれているインクルード・ファイルの名前を指定します。これは、リソースcompute_std_field_includes
に設定されています。
メタデータ・フィールドを表示するインクルードの名前を指定します。通常、このインクルード・ファイルはstd_namevalue_field
ですが、別のインクルードに設定することもできます。
これは通常、xFieldName:include
を使用してページの一番上に設定されますが、リソースcompute_std_field_includes
をオーバーライドして設定することもできます。
メタデータ・フィールドにオプション・リストがあるかどうかを指定します。
TRUE
に設定されている場合、フィールドにはオプション・リストがあります。
FALSE
に設定されている場合、フィールドにはオプション・リストがありません。
デフォルトはFALSE
です。
メタデータ・フィールドの最大長を指定します。これはフィールドのサイズではなく、フィールドに含めることのできる最大文字数です。これは通常、xFieldName:include
を使用してページの一番上に設定されますが、リソースcompute_std_field_includes
をオーバーライドして設定することもできます。
メタデータ・フィールドの内部名を指定します。
事前定義されたメタデータ・フィールドは、小文字のd
で始まります(例: dDocName
)。
カスタム・メタデータ・フィールドは、小文字のx
で始まります(例: xComments
)。
メタデータ・フィールドのオプション・リストのタイプを指定します。
この変数に使用可能な値は次のとおりです。
fieldOptionListTypeの値 | 構成マネージャで対応するオプション |
---|---|
strict |
「Vタイプの選択リスト」または「NVタイプの選択リスト」 |
combo |
「リストから1項目選択、もしくは項目の追加選択」 |
multi |
リストから1項目以上の選択、もしくは項目の追加選択 |
access |
なし(メンバー・アクセス・リスト用Collaboration Serverで使用) |
メタデータ・フィールドのタイプを指定します。
この変数に使用可能な値は次のとおりです。
fieldTypeの値 | 構成マネージャで対応するオプション |
---|---|
Text |
テキスト |
BigText |
ロング・テキスト |
Int |
整数 |
Date |
日付 |
Memo |
メモ |
メタデータ・フィールドの値を指定します。
メタデータ・フィールドの値のスタイルを指定します。
次のSPANスタイルは通常、値に使用します。これは、IdcHomeDir
/resources/core/std_page.htm
リソース・ファイル内のstd_style_declaration
インクルードで定義されています。
tableEntry
xxsmall
strongHighlight
メタデータ・フィールドの幅(単位: 文字数)を指定します。
現在の動的サーバー・ページ(HCSPまたはHCST)の相対URLを取得します。
この変数は通常、それ自身に転送するフォームなどの自己参照ページで使用します。
現在のリビジョン・ラベル・シーケンスの最初のリビジョン・ラベルを返します。
ファイルのチェックインに対して強制変換を適用するDynamic Converterルールを定義します。
これはカンマ区切りリストです。
コンテンツ・アイテムがチェックイン時に指定された変換ルールのいずれかと一致する場合、ファイルはそのルールに従って変換されます。各ファイルは、複数のレンディションに変換できます。
デフォルトはありません。
注意: 強制変換プロセスでは、同じDynamic Converterテンプレートを2回適用することはありません。たとえば、ForcedConversionRules=RuleA,RuleB を設定していて、RuleAとRuleBが異なるレイアウトで同じテンプレートを指定した場合、RuleBに準じた変換は行われません。(この場合のベスト・プラクティスは、レイアウトをマージし、Idoc Scriptを使用して適切なレイアウト要素を動的に選択することです。) |
この関数は、特定のインクルードのキャッシュを強制的に期限切れにするために使用できます。これは、新規メタデータ・フィールドを追加したり、ユーザーが新規問合せを保存したり、表示可能なリンクを変更する場合など、ページ表示の変更に役立ちます。
includeName
の値がnullであるか空の文字列である場合、キャッシュ全体が排除されます。これは、特定のページのインクルードがすべて同じキャッシュに入れられて、同時に期限切れにする必要がある場合に役立ちます。
キーワードと関数の比較の詳細は、第3.4.1章「キーワードと関数の比較」を参照してください。
パラメータ
2つの必須パラメータと2つのオプションのパラメータを取ります。次に例を示します。
forceExpire(includeName, scope [, cacheName, key])
パラメータ | 説明 |
---|---|
includeName |
評価する動的HTML要素の名前。 |
scope | ユーザーごとに異なるHTMLを表示する場合はsession に設定し、すべてのユーザーに同じものを表示する場合はapplication に設定します。 |
cacheName | オプション: このデータを、デフォルトのキャッシュのかわりに、名前付きキャッシュに入れる場合。空の文字列が渡される場合は、インクルードをセッションのデフォルトのキャッシュに入れます。 |
key | オプション: 競合を避けるためにキャッシュの名前-範囲の自動指定を行わない場合は、ここで一意のキーを指定できます。 |
例
これは、std_page_begin
インクルードの置換として使用できます。ユーザーが、標準的な左ナビゲーション・バーのリンク(問合せの保存、ポータル設計の変更)を変更するために、標準サービス・コールの1つを実行したかどうかが検証されます。実行した場合、標準ページ開始のキャッシュされたHTMLは無効になります。その後で、次のcacheInclude
関数によってインクルードが再評価され、キャッシュに戻されます。
<$if strEquals(IdcService, "PNE_SAVE_QUERY") or strEquals(IdcService, "PNE_UPDATE_PORTAL_INFO")$> <$forceExpire("std_main_page_begin", "session", "", "std_main_page_begin")$> <$endif$> <$cacheInclude("std_main_page_begin", "session", 600, "", "std_main_page_begin")$>
日付/時間のフォーマットをデフォルトの日付/時間フォーマットに変更します。
データベースでフォーマット化された日付(例: 2001-06-15)は評価できません。
長いフォーマットの日付(例: June 15, 2001)は評価できません。
出力
dateCurrentで使用するフォーマットで日付/時間を返します(例: 6/15/01 1:55 PM)。
パラメータが評価できない場合は、nullを返します。
時間が指定されていない場合は、デフォルト時間である12:00 AMを返します。
例
次の例では、日付と時間をフォーマット化して、それを12/14/99 2:00 PMとして表示します。
<$formatDate("12/14/1999 02:00 PM")$>
次の例では、日付と時間をフォーマット化して、それを9/15/03 12:00 AMとして表示します。
<$formatDate("09/15/2003")$>
次のスクリプトは、指定された日付と時間をフォーマット化し、表示します。1行目では、日付と時間の代替フォーマットを評価して、それをカスタム変数に割り当てます。2行目では、この日付をユーザーに表示します。
<$my_customDateTime = formatDate("06/14/2004 15:05:34")$> Final Approval: <$my_customDateTime$>
出力:
最終承認: 6/14/04 3:05 PM
SQL問合せの準備のために日付と時間をフォーマット化します。長いフォーマットの日付(例: May 22, 2000)は評価できません。
日付/時間のフォーマットをユーザーへの表示用の日付/時間フォーマットに変更します。「システム・プロパティ」の「表示日付フォーマット」を使用して、日付をフォーマット化します。
日付/時間のフォーマットをデフォルトの日付フォーマットに変更して、時間を削除します。
データベースでフォーマット化された日付(例: 2000-02-02)は評価できません。
長いフォーマットの日付(例: June 12, 2001)は評価できません。
例
現在の日付のみ(例: 9/12/01)を返します。
<$formatDateOnly(dateCurrent())$>
10日後の日付(例: 9/22/01)を返します。
<$formatDateOnly(dateCurrent(10))$>
日付と時間をフォーマット化し、日付のみを1/17/00として表示します。
<$formatDateOnly("01/17/2000 2:00 PM")$>
このスクリプトでは、現在の日付と100日後の日付が表示されます。1行目では、現在の日付のみがカスタム変数に割り当てられます。2行目では、100日後の日付が2番目のカスタム変数に割り当てられます。3行目では、これらの日付がユーザーに表示されます(たとえば、開始日: 10/12/01、終了日: 1/20/02)。
<$my_startDate = formatDateOnly(dateCurrent())$> <$my_endDate = formatDateOnly(dateCurrent(100))$> Start Date: <$my_startDate$> and End Date: <$my_endDate$>
日付のフォーマットをユーザーへの表示用の日付フォーマットに変更します。「システム・プロパティ」の「表示日付フォーマット」を使用して、日付をフォーマット化します。
formatDateDisplayと類似していますが、日付のみをフォーマット化します。
日付/時間のフォーマットを長い日付フォーマットに変更して、時間を削除します。データベースでフォーマット化された日付(例: 2000-02-02)は評価できません。
この設定は、バージョン5.1以降では非推奨です。formatDateWithPattern()を使用してください。
日付/時間のフォーマットをデ指定された日付/時間パターンに変更します。
この変数を(動的ページではなく)プログラムで使用している場合、!rfc
を日付パターンの最後に追加します。これにより、rfc
標準に準拠する日付フォーマットが提供されます。!rfc
が追加されないと、プログラムは日付文字列を作成するのにロケールを使用しようとしますが、定期的に更新されるイベントの場合、ロケールは指定されません。その結果、出力は日付と月に対し、文字列のかわりに整数を使用します。
日付/時間のフォーマットをデフォルトの時間フォーマットに変更して、日付を削除します。
時間のフォーマットをユーザーへの表示用の時間フォーマットに変更します。「システム・プロパティ」の「表示日付フォーマット」を使用して、時間をフォーマット化します。
formatDateDisplayと類似していますが、時間のみをフォーマット化します。
このサーバーが準拠しているCGI仕様のリビジョン・レベルを取得します。この変数はリクエスト固有ではなく、すべてのリクエストに対して設定されます。
この関数は、HTMLページの一意のIDを返します。これは、一意のIDを保証するために、HTML要素内でid
属性とともに使用されます。
ブラウザからCookieを取得します。
これは、情報をパーソナライズに格納する必要がない場合のユーザー・セッションの追跡に役立ちます。
最後に移動したページ、または最後に実行された検索の追跡に使用できます。
コンテンツ・アイテムのコピーの取得に必要なユーザーの権限を決定します。
TRUE
に設定した場合、ユーザーは読取り権限のみを持っているコンテンツ・アイテムのコピーを取得できます。
FALSE
に設定した場合、ユーザーは、コピーを取得できるようにするために、コンテンツ・アイテムの書込み権限を持っている必要があります。
デフォルトはFALSE
です。
デバッグ・トレースの出力を取得します。
エラー・トレースの出力を取得します。
エラー・トレースの出力は、HTMLページで表示するためにエンコードされます。たとえば、デリミタ< and >はHTMLエスケープであり、改行は<br>タグに変換されます。
この関数は、特定のフィールドの構成フラグを返します。フィールドが存在しない場合は、かわりにデフォルトが返されます。
「スキーマ」オプション・リストにあるアイテムの表示値を返します。
たとえば、Customer
というカスタム・メタデータ・フィールドに対してオプション・リストが存在すると仮定します。データベースには、CustomerName
列と一意のCustomerID
列を持つスキーマ表があります。チェックイン時にCustomerName
値がユーザーに表示されますが、CustomerID
値はデータベースに格納されます。getFieldViewDisplayValue
関数は、CustomerID
値に基づき、解読可能なCustomerName
値を抽出します。
この関数は、フィールドのコンテンツ・ルールの定義時に使用します。この関数を使用することにより、コンテンツ・プロファイルのフィールド値がビューに依存するように設定できます。フィールドにはデフォルト値と導出値の両方を設定できるため、ビューを使用してフィールド間の相互依存性を作成できます。
この関数は、Java Virtual Machine (JVM)内の空きメモリーの量を返します。これは、「システム監査情報」ページで使用されるパフォーマンス監査機能です。
この関数は、ページの名前に基づいてページをヘルプするために、相対URLを返します。
この関数は、オプション・リストのサイズを返します。これは、「ユーザー・プロファイル」ページにカスタム・ユーザー・メタデータ・フィールドを表示するかどうかの判別に使用します。
この関数は、スキーマ・ビューから親値を返します。これは、現在のフィールドの依存オプション・リストを生成する前に必要です。
多くのオプション・リストは親フィールドの一意のキーに対する依存性をトリガーするため、通常、この関数は内部の親値パラメータと同じ値を返します。ただし、これは、複合型の依存選択リストの要件ではありません。
この関数は、必要なエラー・メッセージを示すJavaスクリプトを移入するために、プレゼンテーション・ページで使用されます。エラー・メッセージは、必須として指定されたフィールドのコンテンツ・ルール・ユーザー・インタフェースに基づいて設定されます。次のアルゴリズムに基づいて、必要なメッセージを返します。
この関数は、fieldname:requiredMsg
値を検索します。
値が存在する場合は、ローカライズされます。
値が未定義であるか、メッセージが空の場合、デフォルトのメッセージは返されず、ローカライズも行われません。メッセージをローカライズするには、関数のコール元はlc
関数をデフォルト・メッセージに使用した後で、それをこの関数(getRequiredMsg
)に渡す必要があります。
テキスト・ファイルのWebバージョンを取得し、そのコンテンツを文字列に返します。
これは、text/html
、text/plain
またはtext/xml
などのテキストがフォーマットに含まれているファイルのみで使用できます。特に、コンテンツ・アイテムのdFormat
フィールドはtext
で始まる必要があります。たとえば、HCSPファイルをチェックインした場合、「コンテンツ情報」
画面に「Formats: text/hcsp
」が表示されるため、コンテンツはgetTextFile()
関数によって表示されます。
コンテンツ・アイテムのWeb URLを判別するのに十分な情報が存在する必要があります。dID
値のみが必須のメタデータ・フィールドです。
次の情報が存在している必要があります。
dDocName
、dWebExtension
、dSecurityGroup
、dRevLabel
およびdDocType
。
アカウントが有効化されている場合は、dDocAccount
も指定する必要があります。
この情報は、GET_SEARCH_RESULTS
のコール後またはDOC_INFO
のコール後に自動的に使用可能になります。
パフォーマンスを改善するには、この関数をcacheInclude
コールでラップします。ただし、こうすると、すべてのドキュメントを同じキャッシュに入れる場合にセキュリティの問題が生じることがあります。
この関数は、Java Virtual Machine (JVM)内の総メモリー量を返します。これは、サーバーの使用メモリー量を判別するために、「システム監査情報」ページで使用されるパフォーマンス監査機能です。
現在のユーザーのユーザー・メタデータ・フィールドの値を取得します。
パラメータは、Users
データベース表の列を参照する必要があります。グローバル参照をサポートしないユーザー・パーソナライズ関数とは異なり、Users
表でユーザーに割り当てられた情報はコンテンツ・サーバー・インスタンスが使用できます。
出力
現在のユーザーのメタデータ・フィールドの値を返します。
ユーザー値が取得された場合、TRUE
に評価します。
取得中にエラーが発生した場合、FALSE
に評価します。
値が未指定であったり、不明な場合には、StatusCode値として-1
を返します。
この関数には、次のように複数の使用法があります。
特定のメタデータ・フィールドの値をローカル・データ、アクティブ・データまたは環境データから取得します。
特定の列の値を特定のResultSetから取得します。
ResultSet行に関する情報を取得します。
パラメータ
次の2つのパラメータを取ります。
最初のパラメータは、データ型またはResultSetの名前のいずれかです。
2番目のパラメータは、メタデータ・フィールドの名前、列名またはResultSet行パラメータです。
バリエーション
getValue(arg1,arg2)
関数とまったく同じ結果を返す省略フォーマットを使用することもできます。このフォーマットは<$arg1.arg2$>
フォームを使用します。この場合のarg1
およびarg2
は、getValue
関数に対するリテラル文字列引数"arg1
"および"arg2
"です。
注意: データ型(local 、active およびenv )とResultSetパラメータは、番号記号の(# )記号で始まる必要があります。 |
次のパラメータの組合せが使用できます。
getValueおよび省略フォーマット | 説明 |
---|---|
getValue("#local", fieldName )
|
指定したメタデータ・フィールドの値をローカル・データから取得します。 |
getValue("#active" ,fieldName )
|
指定したメタデータ・フィールドの値をデータから次の順序で取得しようとします。
|
getValue("#env", fieldName )
|
指定したメタデータ・フィールドの値を環境設定から取得します。 |
getValue( ResultSetName , fieldName )
|
指定したメタデータ・フィールドの値を、指定したResultSetの現在行から取得します。 |
getValue( ResultSetName , columnName )
|
指定した列の値を、指定したResultSetの現在行から取得します。 |
getValue( columnName )
|
指定した列の値を、現在のResultSetの現在行から取得します。 |
getValue( ResultSetName ,"#row")
|
指定したResultSetの現在行の番号を取得します。
最初の行は0です。 |
getValue( ResultSetName ,"#numRows")
|
指定したResultSetの行の総数を取得します。 |
getValue( ResultSetName ,"#isRowPresent")
|
指定したResultSetに少なくとも1行が存在するかどうかを確認します。
これは、rsNextを使用して手動でループするときに役立ちます。 |
getValue( ResultSetName ,"#isEmpty")
|
指定したResultSetに行が含まれていないかどうかを確認します。 |
例
DOC_INFO
というResultSetからコンテンツIDを取得します。
<$name = getValue("DOC_INFO","dDocName")$>
または
<$name = <$DOC_INFO.dDocName$>
渡されたパラメータdDocType
(これはローカル・データにあります)がアクティブResultSetの値と等しいかどうかを確認します。
<$loop DocTypes$> <$if strEquals(#active.dDocType, getValue("#local","dDocType"))$> <!--do special HTML for selected document type--> <$endif$> <!-- additional statement--> <$endloop$>
特定のユーザーのユーザー属性の値を取得します。この関数は、拡張ワークフロー機能を定義する際に役立ちます。
「スキーマ」オプション・リストにあるアイテムの表示値を返します。
たとえば、Customer
というカスタム・メタデータ・フィールドに対してオプション・リストが存在すると仮定します。データベースには、CustomerName
と一意のCustomerID
を持つスキーマ表があります。チェックイン時にCustomerName
がユーザーに表示されますが、CustomerID
はデータベースに格納されます。getFieldViewDisplayValue
関数は、CustomerID
に基づき、解読可能なCustomerName
を抽出します。
この関数はスキーマ表をロードし、それをSchemaData.というResultSetとしてページに入れます。ResultSetの列名はデータベース表内の名前と同じです。
この関数は、親値に基づいて依存選択リストを取得する際に最も役立ちます。
例
国リストのスキーマ表とビューがあるとします。ビュー名はCountry_view
です。
その表のコンテンツをページに出力するために、次のコードを使用します。
<$getViewValuesResultSet("Country_View", "", "")$>
<$loop SchemaData$>
<$count = 0, num = rsNumFields("SchemaData")$>
<$loopwhile count < num$>
<$fieldName=rsFieldByIndex("SchemaData", count)$>
<$fieldName$> = <$getValue("SchemaData", fieldName)$>
<$count = count + 1$>
<$endloop$>
<$endloop$>
列名がわからなくても、表は出力されます。
次の例では、フィールドCountry
およびState
に対してDCLを持っていると仮定します。States
のリストは、選択されるCountry
に依存します。Country
がUSの場合にStates
リストを取得するには、次のコードを使用します。
<$getViewValuesResultSet("State_View", "Country_State", "US")$>
現在のユーザーが管理アプリケーションに対する権限を持っているかどうかを確認します。
出力
ユーザーが指定されたアプリケーションに対する権限を持っている場合、TRUE
を返します。
ユーザーが指定されたアプリケーションに対する権限を持っていない場合、FALSE
を返します。
値が未指定であったり、不明な場合には、StatusCode値として-1
を返します。
外部ユーザー・データベースが存在することをコンテンツ・サーバーに指示します。
TRUE
に設定した場合、システムは外部ユーザーを認識します。カスタム・コンポーネントが外部ユーザー統合(LDAPなど)をサポートするように作成されている場合は、これをTRUE
に設定します。
デフォルトはFALSE
です。
クライアント・コンピュータがダウンロード・ターゲット・ディレクトリにリクエストされたコンテンツ・アイテムのコピーを格納しているかどうかを確認します。
通常は、ダウンロード時に上書きするかどうかをユーザーに問い合わせるために使用します。たとえば、この変数はOracle ODMAクライアントによって使用されます。
メタデータ・フィールドにオプション・リストがあることを指定します。
リビジョンの元のファイルが存在するかどうかを確認します。
この変数は、dOriginalName
値を確認します。
コンテンツ・アイテムのチェックインは可能ですが、コンテンツ・アイテムが元のファイルを持つことはできません(たとえば、基本ワークフローが開始していても、最初のコントリビューション・ステップでファイルがチェックインされていない場合)。
現在のユーザーが事前定義アカウントに対する権限を持っているかどうかを確認します。事前定義アカウントとは、「ユーザー管理」ユーティリティで作成されたアカウントです。
現在のコンテンツ・アイテムのファイルがweblayout
ディレクトリに存在するかどうかを確認します。
チェックインがコンテンツ・サーバーのODMAクライアントまたはUploadアプレットを介しているかどうかを確認します。
DefaultHtmlRefreshTimeoutInSeconds
に類似しています。「処理中コンテンツ」ページ、「チェックアウト・コンテンツ」ページまたは「ワークフロー割当て」ページがリフレッシュする時間(単位: 秒)を定義します。
htmlRefreshTimeout
は、URLまたはサービスのデータ・バインダに設定できます。これは、ページごとに異なるリフレッシュ時間の設定に使用できます。これが必要な場合、config.cfg
ファイルにDefaultHtmlRefreshTimeoutInSeconds
を設定するかわりに、URLまたはデータ・バインダにhtmlRefreshTimeout
を設定します。
「処理中コンテンツ」ページ、「チェックアウト・コンテンツ」ページまたは「ワークフロー割当て」ページのリフレッシュ後にロードするページのURLの設定に使用します。デフォルトは現在のページです。この変数は、ページのURLまたはサービスのデータ・バインダに設定できます。
コンテンツ・サーバーのCGIパスを完全なURLとして取得します。
この変数は直接変更できません。パスを変更するには、『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』に説明するHttpAbsoluteCgiRoot構成設定を使用します。
コンテンツ・サーバーのCGIパスを相対URLとして取得します。
この変数は、アプレットおよびコンテンツ・サーバー・インスタンスのCGIパスの構成に対する明示的な制御の設定に使用します。
コンテンツ・サーバーは、ブラウザのアドレス・バーでHTTPアドレスを評価します。HttpIgnoreWebServerInternalPortNumber
構成エントリでは評価を十分に支援できない場合、HttpBrowserFullCgiPath
を明示的な回答とともに設定できます。
コンテンツ・サーバー・インスタンスへの相対パス(次の例では、idc1
)を指定します。
コンテンツ・サーバーのCGIパスを取得します。
次の構造設定は、この変数の値の決定に使用します。
変数 | 説明 |
---|---|
UseSSL | TRUE に設定した場合、Secure Sockets Layer (SSL)が使用されます(http ではなく、https を使用)。 |
isAbsoluteCgi | 相対パスのかわりに完全なURLを使用するかどうかを定義します。これはコンテンツ・サーバー・インスタンスにより設定される内部フラグであり、ユーザー構成を対象としていません。 |
commonディレクトリのURLを取得します。
1つのコンテンツ・サーバーのインストールのリソースを複数のコンテンツ・サーバー・インスタンスで共有できます。この変数は、共有中のリソースを持つコンテンツ・サーバー・インスタンスのDomainHome
/ucm/cs/common/
ディレクトリへのURLパスを定義します。たとえば、HttpCommonRootは、Webアプレットが置かれている共有の共通ディレクトリへのアクセスに使用する接頭辞を定義します。
コンテンツ・サーバー・インスタンスのCGIパスを相対URLとして取得します。
helpディレクトリのURLを取得します。
1つのコンテンツ・サーバーのインストールのオンライン・ヘルプ・ファイルを複数のコンテンツ・サーバー・インスタンスで共有できます。この変数は、共有中のヘルプ・ファイルを持つコンテンツ・サーバー・インスタンスのDomainHome
/ucm/cs/weblayout/help/
ディレクトリへのURLパスを定義します。
imagesディレクトリのURLを取得します。
1つのコンテンツ・サーバーのインストールのユーザー・インタフェース・イメージを複数のコンテンツ・サーバー・インスタンスで共有できます。この変数は、共有中のイメージ・ファイルを持つコンテンツ・サーバー・インスタンスのDomainHome
/ucm/cs/weblayout/images/
ディレクトリへのURLパスを定義します。
現在のレイアウト・ファイルが含まれているフォルダのURLを取得します。これは、現在のレイアウトに固有の追加JavaScriptリソースを持っている場合に役立ちます。
コンテンツ・サーバー・インスタンスに対する相対URLを取得します。
インストール時のデフォルトは/cs-admin/
です。
Webサーバー・ルート・ディレクトリを相対URLとして定義します。
完全ルート(http://www.mycomputer.com/domain/.など)ではなく、相対ルート(/domain/など)を使用します。
文字列として相対Webルート・ディレクトリを返します。
デフォルト値はありません。
Webサーバー・アドレスを部分URLとして定義します。
完全アドレス(http://www.mycomputer.com/
など)ではなく、部分URL (mycomputer
など)を使用します。
文字列としてWebサーバー・アドレスを返します。
デフォルト値はありません。
HttpHelpRoot
変数と類似していますが、この変数はデフォルトのシステム言語に対してヘルプ・ファイルへのパスを返す点が異なります。
weblayout/
ディレクトリのURLパスを取得します。
1つのコンテンツ・サーバーのインストールのリソースを複数のコンテンツ・サーバー・インスタンスで共有できます。この変数は、共有中のリソース・ファイルを持つコンテンツ・サーバー・インスタンスのDomainHome
/ucm/cs/weblayout/
ディレクトリへのURLパスを定義します。
次の構成設定は、この変数の値を決定します。
変数 | 説明 |
---|---|
UseSSL | TRUE に設定した場合、Secure Sockets Layer (SSL)が使用されます(http ではなく、https を使用)。 |
isAbsoluteWeb | 相対パスのかわりに完全なURLを使用するかどうかを定義します。これはコンテンツ・サーバー・インスタンスにより設定される内部フラグであり、ユーザー構成を対象としていません。 |
ブラウザが受け入れられるコンテンツ・タイプのリストを取得します。
ブラウザがサポートする圧縮エンコーディングのリストを取得します。
コンテンツ・サーバーのバージョン7.0以降、HTMLファイルは配信用に圧縮されています。GZIP圧縮がデフォルトです。
ブラウザ用に設定されているISO言語のリストを取得します。
この変数は、新規ユーザーまたはゲスト・ユーザー用にどのユーザー・ロケールが設定されるかを推定する場合に便利です。
HTTPリクエスト・ヘッダー内のCookieの名前と値のペアを取得します。
Webサーバーの名前を取得します。
システムがユーザーを設定できるようにWebサーバーのセキュリティ・フィルタからシステムに渡されるCGIパラメータを取得します。
この変数が設定されない場合は、REMOTE_USER変数の値が使用されます。
HTTP_INTERNETUSER変数とREMOTE_USER変数が設定されない場合、ユーザーは匿名になります。
ローカル・サーバー上で参照されるディレクトリの完全なURLを取得します。
クライアントのブラウザ・タイプ、バージョン番号、ライブラリおよびブラウザが構成されているプラットフォームを取得します。
Webサーバーのプラグインの値をローカル・データから取得し、リクエストのヘッダーに入れて送信するように指定します。
たとえば、Webサーバー・フィルタのプラグインを使用してユーザーの属性を取得し、それをローカル値に入れる場合、IdcAuthExtraRequestParams
の中に属性名を指定すると、データをコンテンツ・サーバー・インスタンスに渡すこともできます。
この設定は、Idoc Scriptを使用して余分なHTTPヘッダー値にアクセスする場合にも使用できます。これらの変数は、データ・バインダ環境変数セットに組み込まれます。
IdcAuthExtraRequestParams
リスト内の名前は、大/小文字に関係なくヘッダー名と一致している必要があります(大/小文字を区別しない一致)。
Idoc Script変数として使用している場合、IdcAuthExtraRequestParams
内の名前は正確に一致している必要があります(大/小文字を区別する一致)。
デフォルト値はありません。
IdcCommandの詳細は、第28章「コンテンツ・サーバーにアクセスするためのIdcCommandユーティリティの使用」を参照してください。
この関数は、dynamichtmlリソースが存在するかどうか確認するためにテストします。
インクルード・リソースのコードをページに追加します。
この関数は、パラメータとしてIdoc Script変数を取れる点を除き、include
キーワードと同じ動作をします。詳細は、第 3.4.1章「キーワードと関数の比較」を参照してください。
例
たとえば、カスタム・メタデータ・フィールドの全部ではなく、一部に対してIdoc Scriptを実行するとします。次のIdoc Scriptを実行することにより、フィールド名(specific_include_xComments
など)に基づいてインクルードを動的に作成することもできます。
<$loop DocMetaDefinition$> <$myInclude = "specific_include_" & dName$> <$exec inc(myInclude)$> <$endloop$>
inc
関数によって指定されたインクルードの出力を抑制するexec
キーワードの使用に留意してください。inc関数の前にexec
を使用しない場合、指定されたインクルードの内側のHTMLはページに表示されます。
specific_include_xComments
フィールドが存在しない場合は、出力が表示されないため、このコードによってエラーがスローされることはありません。
Dynamic Converterの特定の変換ルールに関連付けられているテンプレートとレイアウトを使用して、ドキュメントのLatestReleased
リビジョンの変換結果を返します。
強制変換によって作成されたフラグメントは、この関数を使用して直接参照することができます。
テキスト・ファイルのコンテンツ全体を現在のページの表示に含めます。
この関数は、デフォルトのポータル・ページの生成に使用します。
グローバル・インクルード・ファイルは、HTMLコード、 Idoc Scriptコードまたはその両方が含まれているテキスト・ファイルです。これは、サーバー起動時にロードされます。
グローバル・インクルード・ファイルには.inc
拡張子が付いていて、DomainHome
/ucm/cs/data/pages/
ディレクトリに置かれる必要があります。
インクルード・リソースのコード(<@dynamichtml include_name@>
により定義)をページに追加します。
このキーワードは、コードの小さいチャンクを複数のテンプレート・ページで再使用できるため、Idoc Scriptで最もよく使われるコマンドでです。
詳細は、第3.3.1項「インクルード」を参照してください。
Idocスクリプトの評価後に、コンテンツ・サーバー・テンプレートのコンテンツをページに追加します。
この関数を使用して、テンプレート全体のコンテンツをインクルードすることができます。ただし、リソース・インクルードは通常、Idoc Scriptをページ間で共有するためのすべての要件に十分柔軟に対応できるため、これを使用する必要はありません。
この関数は、検索インデクサのロジックを変更します。この関数は、索引コレクションに関する累積統計が計算できるように作成されています。
インスタンスの説明を定義します。
インスタンスの説明はコンテンツ・サーバー・インスタンスで使用されます。
コアでセクションがトレースされているかどうかを確認します。
現在のページがチェックイン・ページかどうかを指定します。
TRUE
に設定した場合、現在のページがチェックイン・ページとして特定されます。
FALSE
に設定した場合、現在のページはチェックイン・ページとして特定されません。
セキュリティ・トークンを取得することにより、現在のチェックインがチェックイン・アプリケーションで事前認可されているかどうかを確認します。
定義されたコンポーネントが有効になっているかどうかを確認します。
ユーザーがコントリビュータであるかどうかの評価に使用します。通常は、ページに特殊なリンクを表示するかどうかの決定に使用します(たとえば、std_page
はこれを使用して、コンテンツ・マネージャ・リンクを表示するかどうかを決定します)。
コンテンツ・アイテムのサブスクリプションが、コンテンツID (dDocName
)に基づくのではなく、基準に基づくかどうかを評価します。
現在表示中のページが、検索結果ページで次/前のナビゲーションの作成中にループされるページと同じであるかどうかを確認します。
例
ナビゲーションが現在のページと同じページでループしている場合、ページ番号はプレーン・テキストとして表示されます。ナビゲーションが現在のページと同じページでループしている場合、ページ番号はハイパーテキスト・リンクとして表示されます。
<$loop NavigationPages$> <$if IsCurrentNav$> <$HeaderPageNumber$> <$else$> <a href="<$strRemoveWs(inc("searchapi_navigation_specific_page"))$>"> <$HeaderPageNumber$></a> <$endif$> <$endloop$>
現在のページがメタデータを表示するページ(検索、チェックイン、コンテンツ情報などの各ページ)であるかどうかを指定します。
TRUE
に設定した場合、現在のページがドキュメント・ページとして特定されます。
FALSE
に設定した場合、現在のページはドキュメント・ページとして特定されません。
ページがユーザーに動的に表示されるかどうかを確認します。
ユーザーによって表示されるページのほとんどは動的です。ただし、いくつかの静的ページは、変更せずにユーザーに配信されるように作成されています。例として、ゲスト・ポータル・ページや、自動生成される電子メールのコンテンツなどがあります。
Dynamic Converterを有効にします。
この値は、WebCenter Contentの初期インストール中はFALSE
に設定されています。
この値は、Dynamic Converterのインストール中はTRUE
に設定されています。
デフォルトはFALSE
です。
場所
「システム・プロパティ」、「オプション」タブ、「Dynamic Converterを有効にする」
「管理」、「管理サーバー」、「一般構成」メニュー・オプション、「Dynamic Converterを有効にする」
IntradocDir
/config/config.cfg
例
構成設定として、Dynamic Converter機能を有効にします。
IsDynamicConverterEnabled=true
Idoc Scriptとして、Dynamic Converterの機能が有効になっているかどうかの評価に使用します。
<$if IsDynamicConverterEnabled and isTrue(IsDynamicConverterEnabled)$> <tr> <td align="center" width="75"> <a href="<$HttpCgiPath$>?IdcService=GET_TEMPLATE_CONVERSIONS"> <img src="<$HttpImagesRoot$><$admin_conversion_image$>" border="0" width="<$adminImageWidth$>" height="<$adminImageHeight$>"></a> </td> <td width="10"> </td> <td width="245"><span class=largeTableEntry> <a href="<$HttpCgiPath$>?IdcService=GET_TEMPLATE_CONVERSIONS"> <$lc("wwTemplateConversions")$></span></a> </td> </tr> <$endif$>
現在のページのメタデータ・フィールドが編集可能かどうかを指定します。
この変数は、チェックイン・ページとコンテンツ情報更新ページに設定されます。
TRUE
に設定した場合、現在のページのメタデータ・フィールドが編集可能になります。
FALSE
に設定した場合、現在のページのメタデータ・フィールドは編集できません。
現在のリビジョンがワークフロー内のエディタ・ステップにあるかどうかを確認します。
TRUE
に設定した場合、レビューアはリビジョンのチェックアウト、編集およびチェックインを実行できます。
この変数は、ワークフロー・ステップを「ワークフロー管理」ツールでエディタ・ステップとして定義することによって設定されます。この変数はチェックイン・ページで評価されます。
メタデータ・フィールドをページから完全に除外します。
例
現在のメタデータ・フィールドをページから除外します。
<$isExcluded=1$>
現在のメタデータ・フィールドに対するisExcludedのアクティブ値に応じて、カスタム変数を設定します。
<$isCustomExcluded = getValue("#active", fieldName & ":isExcluded")$> $isCustomRelocated = getValue("#active", fieldName & ":isRelocated")$> <$if isCustomExcluded or (isCustomRelocated and not isRelocated) or isExcluded or (isFieldHidden and not isFormSubmit)$> <$isFieldExcluded = 1$> <$endif$>
ユーザーが、外部システム(LDAPシステムなど)からコンテンツ・サーバー・インスタンスにアクセスしているかどうかを確認します。
Oracle WebCenter Content: Inbound Refineryシステムがコンテンツ・アイテムの変換に失敗したかどうかを確認します。
インデクサがコンテンツ・アイテムの索引付けに失敗したかどうかを確認します。
文字列または式がFALSE
として評価されるかどうかを確認します。
出力
パラメータが文字列の場合:
文字列がF
、f
、N
またはn
で始まるか、0
の場合、TRUE
を返します。
文字列がその他の文字で始まる場合、FALSE
を返します。
パラメータが文字列以外の場合:
値が0の場合、TRUE
を返します。
値が0以外の場合、FALSE
を返します。
メタデータ・フィールドが除外されることを指定します。
メタデータ・フィールドが非表示になることを指定します。
メタデータ・フィールドが情報専用フィールドあることを指定します。
メタデータ・フィールドがメモ・フィールドあることを指定します。
現在表示中のページが、コンテンツ情報ページでRevision History表の作成中にループされるリビジョンを対象としているかどうかを確認します。
例
現在のリビジョンでループしている場合、リビジョン番号はプレーン・テキストとして表示されます。現在のリビジョン以外でループしている場合、リビジョン番号はアクティブ・ボタンとして表示されます。
<@dynamichtml doc_rev_info@> <$if IsFilePresent$> <td width=10% align=center><span class=strongHighlight><$dRevLabel$></span></td> <td nowrap width=30%><span class=strongHighlight><$dInDate$></span></td> <td nowrap width=30%><span class=strongHighlight> <$if dOutDate$><$dOutDate$><$else$><$lc("wwNone")$><$endif$></span></td> <td width=20%><span class=strongHighlight> <$rptDisplayMapValue("StatusList", dStatus)$></span></td> <$else$> <td width=10%><form action="<$HttpCgiPath$>" method=GET> <input type=hidden name=IdcService value="DOC_INFO"> <input type=hidden name=dID value="<$dID$>"> <input type=hidden name=dDocName value="<$dDocName$>"> <input type=submit value=" <$dRevLabel$> "> </form></td> ... <@end@>
現在のページが送信可能なHTMLフォームであるかどうかを指定します。
TRUE
に設定した場合、現在のページは送信可能なHTMLフォームです。
FALSE
に設定した場合、現在のページは送信可能なHTMLフォームではありません。
インデクサがコンテンツ・アイテムを全文索引作成したかどうかを確認します。
メタデータ・フィールドをユーザーに対して非表示にしますが、フィールドは非表示データとしてページにインクルードされます。
現在のページが情報専用ページであるかどうかを指定します。
TRUE
に設定した場合、現在のページは情報専用ページとして特定されます。
FALSE
に設定した場合、現在のページは情報専用ページとして特定されません。
メタデータ・フィールドを、入力フィールドとしてではなく、情報専用として表示します。
コンテンツ・サーバーWebページのローカル・データを表示します。
この変数は、ページのフラグとして、またはサービス・コールのパラメータとして設定できます。
特定のレイアウトがインストールされ、有効になっているかどうかの判別に使用します。
ユーザー名などの指定された条件に基づいて、チェックインまたは検索に対するプロファイルの表示にこのプロファイルを含めるかどうかを判別するために、Idoc Scriptによって使用されます。指定された条件がtrueに評価される場合、isLinkActive
の値はtrue (1
)に設定されて、プロファイルは使用可能なプロファイルのリストに含まれます。
コンテンツ・アイテムがローカル検索コレクションにあるかどうかを確認します。ローカル検索コレクションの中でコンテンツ・アイテムのコンテンツIDを検索します。
現在のユーザーがログインしているかどうかを確認します。
クライアント・ブラウザがMacintoshオペレーティング・システムで実行しているかどうかを確認します。
「処理中コンテンツ」ページまたは「レポート」ページにMaxQueryRows
設定の許容値を超える結果が表示されているかどうかを確認します。詳細は、『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』のMaxQueryRowsに関する項を参照してください。
メタデータ・フィールドのオプション・リストで複数の値が選択できることを指定します。
例
フィールドが複数選択オプション・リストであることを指定します。
<$isMultiOption=1$>
オプション・リストのタイプを決定します。
<$if #active.fieldOptionListType like "*multi*"$> <$exec isMultiOption=1$> <$elseif #active.fieldOptionListType like "access*"$> <$exec isAccessList=1$> <$exec isStrictList=1$> <$elseif not (#active.fieldOptionListType like "*combo*")$> <!--Strict choice--> <$exec isStrictList=1$> <$endif$>
検索結果に対して複数のページが必要かどうかを確認します。この変数は、ResultCount
入力変数により定義される1ページ当たりの表示行数(デフォルトは25)に依存します。
コンテンツ・アイテムが新規であるか、またはリビジョンであるかどうかを確認します。この変数は、CHECKIN_NEW_FORM
およびCHECKIN_SIMILAR_FORM
の各標準サービスによってTRUE
に設定されます。
例
コンテンツ・アイテムが新規である場合、指定されたサービスが実行されます。
<$if isNew$> <input type=hidden name=IdcService value="CHECKIN_NEW"> <$endif$>
コンテンツ・アイテムがリビジョンである場合、元のコンテンツ・アイテム作成者が使用されます。
<$if not isNew$>value="<$dDocAuthor$>"<$endif$>
コンテンツ・アイテムが新規である場合、現在のユーザーのデフォルト・アカウントが使用されます。
<$if isNew$> <$defaultAccounts$> <$endif$>
リビジョンがチェックイン対象の最後のリビジョンであるかどうかを確認します。これは、必ずしも最後にリリースされたリビジョンとはかぎりません。
リビジョンID (dID
)の比較を実行することにより、クライアント・コンピュータのファイルが最新のリビジョンと一致するかどうかを確認します。
この変数は通常、コンテンツ・アイテムのローカル・コピーが最新リビジョンに更新されていない場合に、エラー・メッセージを表示するために使用します。
この変数は、クライアント側の製品(Desktopなど)とのインタフェースとして使用します。
ユーザーがチェックイン時に別の変換フォーマットを選択できるようにします。
TRUE
に設定した場合、チェックイン・ページの「プライマリ・ファイル」および「代替ファイル」に対して「フォーマット」
オプション・リストが表示されます。
デフォルトはFALSE
です。
すべてのインクルードのトレースを有効にして、Idoc Scriptのeval
関数をコールします。
eval
関数のコンテンツと動的に割り当てられたすべてのインクルードも、トレースの一部として表示されます。トレースは、include
コールまたはeval
コールのネストされたレベルごとに1つの+文字ずつインデントされます。トレースでは、すべてのエラー・メッセージ(ネストされた場所情報を含まない)と、Idoc Scriptのすべてのtrace
関数コールの出力も表示されます。
注意: この設定は、Internet Explorerバージョン6ではサポートされていません。 |
出力
トレースの結果は、Webページの一番下に表示されるデバッグ・トレースからアクセス可能なデバッグ・メニュー・ツールバー・オプションを介して表示できます。
デバッグ・トレースをクリックしてデバッグ・メニュー・ツールバーを表示し、次のオプションのいずれかをクリックします。
要素 | 説明 |
---|---|
「すべて非表示」 | 開いているデバッグ・ポップアップをすべて非表示にします。 |
「Idocスクリプト・トレース」 | コールされるすべてのインクルードのツリー構造ビューを表示します。 |
「リクエスト・バインダ」 | ローカル・データおよびResultSetに関する情報を表示します。リクエスト・バインダはサーバーに送信されるDataBinder、つまり、サービス名とすべてのサービス固有のパラメータです。見出しをクリックして、詳細情報のビューを展開します。 |
「レスポンス・バインダ」 | ローカル・データおよびResultSetに関する情報を表示します。レスポンス・バインダは、サービスの処理直後、ただしレスポンス・ページ生成前のDataBinderです。見出しをクリックして、詳細情報のビューを展開します。 |
「最終ページ・バインダ」 | ローカル・データおよびResultSetに関する情報を表示します。最終ページ・バインダは、ページの生成中にDataBinderで変更された内容を反映しています。見出しをクリックして、詳細情報のビューを展開します。 |
「JavaScriptログ」 | デフォルト設定値Verboseが指定されているロガー・コンソール・ウィンドウを表示します。チェックボックスを選択して、次の各オプション、「情報」、「警告」、「エラー」、「時間」、「ウィンドウ」、「トレース」、「グローバル」、「スキーマ」、「JavaScript」、「LogReader.」を表示します。「一時停止」または「クリア」をクリックして、ロガー・コンソールに表示される情報の速度と量を制御します。 |
コンテンツ・サーバーとのAPIレベルの相互作用については、リクエスト・バインダとレスポンス・バインダを参照してください。たとえば、SOAPリクエストを実行したり、その他のサービスに基づくAPIを使用するときには、最終ページ・バインダの情報は意味がなくなります。IsJava=1
をリクエストに追加すると、レスポンス・バインダがHDAフォーマットで返されます。
カスタマイズ、ページの生成などに関しては、最終ページ・バインダを参照して、レスポンス・バインダとの相違を判別することもできます。
コンテンツ・サーバー・インスタンスがログインを確認するように設定されているか、またはログインがプログラムによって処理中であるかどうかを確認します。
Cookieログイン・ページでユーザーがまだログインしていないために最後のリクエストが失敗したような状況で、この変数はTRUE
に設定されます。
現在のページが検索ページかどうかを指定します。
TRUE
に設定した場合、現在のページが検索ページとして特定されます。
FALSE
に設定した場合、現在のページは検索ページとして特定されません。
インクルードの評価中にローカル変数がTRUE
に設定されていないかぎり、メタデータ・フィールドを除外します。
この変数は通常、メタデータ・フィールドにカスタムの場所を設定するために使用します。フィールドをページ上で複数回定義することができ、実際に生成されるフィールドの場所はこの変数の値に依存します。
例
現在のメタデータ・フィールドをページにインクルードします。
<$isRelocated=1$>
現在のメタデータ・フィールドに対するisRelocatedのアクティブ値に応じて、カスタム変数を設定します。
<$isCustomExcluded = getValue("#active", fieldName & ":isExcluded")$> <$isCustomRelocated = getValue("#active", fieldName & ":isRelocated")$> <$if isCustomExcluded or (isCustomRelocated and not isRelocated) or isExcluded or (isFieldHidden and not isFormSubmit)$> <$isFieldExcluded = 1$> <$endif$>
StatusCode変数を評価することにより、コンテンツ・サーバー・インスタンスにリクエスト・エラー状態が存在するかどうかを確認します。
StatusCode
が負の数値(-1)に設定された場合、コンテンツ・サーバー・インスタンスにリクエスト・エラー状態が存在します。
リクエスト・エラー状態が存在する場合の標準的な動作は、現在のページの表示を中止して、エラー・ページを置換することです。
メタデータ・フィールドの値が必須であるかどうかを指定します。
TRUE
に設定した場合、メタデータ・フィールドは必須です。
FALSE
に設定した場合、メタデータ・フィールドはオプションです。
問合せが現在のユーザーのポータル・ナビゲーション・バーに保存されたかどうかを確認します。
コンテンツ・サーバーWebページのローカルSOAPデータを表示します。
この変数は、ページのフラグとして、またはサービス・コールのパラメータとして設定できます。
メタデータ・フィールドのオプション・リストでは複数の値が選択できないことを指定します。
例
フィールドが複数選択オプション・リストではないことを指定します。
<$isStrictList=1$>
オプション・リストのタイプを決定します。
<$if #active.fieldOptionListType like "*multi*"$> <$exec isMultiOption=1$> <$elseif #active.fieldOptionListType like "access*"$> <$exec isAccessList=1$> <$exec isStrictList=1$> <$elseif not (#active.fieldOptionListType like "*combo*")$> <!--Strict choice--> <$exec isStrictList=1$> <$endif$>
現在のユーザーが少なくとも1つの管理アプリケーションに対して副管理者権限を持っているかどうかを確認します。
クライアント・ブラウザがSunシステムで実行しているかどうかを確認します。
現在のユーザーがsysmanager
ロールを持っているかどうか、つまり、コンテンツ・サーバー管理へのアクセス権を持っているかどうかを確認します。この変数は通常、特定のナビゲーション・リンクを条件付きで表示するために使用します。
文字列または式がTRUE
として評価されるかどうかを確認します。
出力
パラメータが文字列の場合:
文字列がT、t、Y、yで始まるか、1の場合、TRUE
を返します。
文字列がその他の文字で始まる場合、FALSE
を返します。
パラメータが文字列以外の場合:
値が0以外の場合、TRUE
を返します。
値が0の場合、FALSE
を返します。
現在のページがコンテンツ情報更新ページかどうかを指定します。
TRUE
に設定した場合、現在のページがコンテンツ情報更新ページとして特定されます。
FALSE
に設定した場合、現在のページがコンテンツ情報更新ページとして特定されません。
JavaScript内でインクルードが使用中であることを指定します。メタデータ・フィールドのアップロード方法の決定に使用します。
TRUE
に設定した場合、インクルードがJavaScript内で使用中です。
FALSE
に設定した場合、インクルードがJavaScript内で使用中です。
例
JavaScript Wrapperを定義するインクルードに設定します。
<@dynamichtml std_upload_java_script@> <script language="JavaScript"> // Java script for uploading. <$isUploadFieldScript = 1$> <$include std_upload_info_script$> <$isUploadFieldScript = ""$> </script> <@end@>
スクリプトとしての使用例:
<$if isUploadFieldScript$> <$defaultFieldInclude = "std_file_entry"$> <$else$> <$defaultFieldInclude = "std_nameentry_row"$> <$fieldCaptionInclude = "std_field_caption"$> <$fieldEntryInclude = "std_file_entry"$> <$endif$>
アップロード・ソケットを使用する必要があるかどうかを判別するために、Uploadアプレットによって使用されます。
これは内部フラグであり、ユーザー構成を対象としていません。
現在のユーザーに対して電子メール・アドレスが定義されているかどうかを確認します。
ユーザーが他のユーザー向けにコンテンツをチェックインできるようにします。
これは、チェックイン・ページの「作成者」オプション・リストに影響します。デフォルトでは、管理者のみが、チェックイン時に別のユーザーを作成者として指定できます。
Upload
アプレットのパラメータとして使用されます。この変数は、アップロードするファイルが存在することを検証します。使用するには、std_page.htm
リソース・ファイル内のstd_multiupload_applet_definition
インクルードに定義されているアプレットの定義を上書きするコンポーネントを作成する必要があります。
コアでセクションがトレースされているかどうかを確認します。詳細トレースによって、完全なレポートが生成されます。
クライアント・ブラウザがWindowsオペレーティング・システムで実行しているかどうかを確認します。
チェックイン・ページのコンテンツ・アイテムがワークフロー内にあるかどうかを確認します。
URLでTRUE
に設定されたときのHTMLフォームのRawダンプをHCSPファイルまたはHCSFファイルに表示します。これは、フォーム・データを抽出したり、フォームをリモート・アプリケーションから送信したりする場合に役立ちます。
この関数は、全文検索用のフィールドの指定に使用します。
"..." JavaScriptリテラル文字列宣言で使用するように文字列をフォーマット化します。
この関数は、二重引用符を一重引用符に変更するなどの文字列操作を実行します。
スキーマで使用されます。オペレーティング・システムとJava Script(エンコード機能を実行)で必要とされる有効なファイル名文字列の中に非ASCII文字が含まれている可能性のある文字列をエンコードします。
コンテンツ・サーバーWebページのローカル・データを表示します。
この変数は、ページのフラグとして、またはサービス・コールのパラメータとして設定できます。
ワークフロー・ステップに最後に入った時間のタイムスタンプを取得します。
この変数は条件文の作成に使用できますが、ハードコード化したり変更したりしないようにしてください。
最後のエントリ時間がコンパニオン・ファイルの中でローカライズされ、キーに保持されます。
<step_name>@<workflow_name>.lastEntryTs
現在のユーザーのロケールに基づいてローカライズ文字列の値を取得します。
パラメータ
1つの必須パラメータと任意の数のオプション・パラメータを取ります。
最初のパラメータはローカライズ・キー(apLabelHelp
またはwwMyString
など)です。
オプション・パラメータは、ローカライズされた文字列内の中カッコで囲まれた引数(たとえば、{1}
)に従って解決される式です。
例
検索ページでメタデータ検索演算子のオプションを取得します。
<select name="op" > <option value="Contains"><$lc("wwContains")$> <option value="Matches"><$lc("wwMatches")$> <option value="Starts"><$lc("wwStarts")$> <option value="Ends"><$lc("wwEnds")$> <option selected value="Substring"><$lc("wwSubstring")$> </select>
通知電子メールworkflow startedの件名行を設定します。ワークフローの名前(dWfName)がMarketingである場合、英語の結果値はWorkflow 'Marketing' has been startedとなります。
<@dynamichtml wf_started_subject@> <$lc("wwWfStarted", dWfName)$> <@end@>
文字列をキャプションに折り返す機能。この場合は通常、文字列の右にコロンが1つ入ります。右から左に読む言語の場合(ヘブライ語、アラビア語など)、コロンは文字列の左に入ります。
使用するデフォルトのレイアウト(「トレイ」
、「トップ・メニュー」
など)を定義します。
デフォルトのインストール値は「トレイ」
です。
使用するデフォルトのスキン(Oracle、Oracle2など)を定義します。
ユーザーにより選択されたレイアウト(「トレイ」
、「トップ・メニュー」
など)を取得します。
ユーザーにより選択されたスキンを取得します。
検索コレクションのメタデータをロードします。
検索コレクションに関するメタデータをロードするために、検索サービスで使用されます。
この関数は、ユーザー構成を対象としていません。
DocMetaDefinition
データベース表をResultSetとしてアクティブ・データにロードします。
DocMetaDefinition
データベース表は、ロードした後でループできます。
ページ表示のトリガー値で指定されたように、コンテンツ・プロファイルをロードします。これは、「検索」、「チェックイン」、「情報」および「更新」の各ページの表示中にコールされます。この関数はリクエストに応じてコールされるため、コールされたときのページによってアクション(検索、情報など)が決定します。
この情報はコンテキストに依存します。isCheckin
、isUpdate
、isQuery
またはisInfo
の各変数はローカル・データに設定され、ロードおよび表示されるページにloadDocumentProfile
関数を送ります。
スキーマResultSetのデータを現在のデータ・バインダのローカル・データにロードします。
パラメータ
この関数は、ゼロ、1つまたは2つのパラメータを取ることができます。
渡された引数がゼロの場合は、データ・バインダにアクティブResultSetの行のデータを入力します。戻り値はありません。
渡される引数が1つの場合、その引数は現在行から値を取得するResultSetの名前です。戻り値はありません。
2つの引数が渡される場合は、最初の引数としてResultSetの名前、2番目の引数としてロードするデータ・オブジェクトを特定するキーが渡されます。データが存在しない場合は0を返し、データが存在する場合は1を返します。戻り値に基づいてスクリプトを条件付きで実行するために、True()またはFalse()を使用します。
演算子名の完全なセットと検索構文との間のマッピングをロードします。「検索」ページで使用します。
この関数は、カスタム・ユーザー・メタデータ定義をロードします。これは、ResultSetとしてページに置かれるUserMetaDefinition
表に存在します。これは、管理者がユーザー・メタデータをコンテンツ・サーバー・インスタンスにマップできるように、LDAP管理ページで使用されます。
この関数は、ライブラリ・フォルダにあるページのページ・タイプを返します。これはディレクトリまたは問合せページである場合があります。この関数は通常、Layout Manager APIで使用されます。「トレイ」
が選択されたレイアウトの場合、この関数はライブラリのページのツリー・ビューの構築に使用されます。
リビジョン番号のメジャー・シーケンスを定義します。
メジャー・リビジョンのラベル・シーケンスを返します(構成設定の値を返します)。
文字列を返します。
デフォルトは1から99です。
1度のバッチでインデクサに渡すファイル数を定義します。
有効範囲は1から65535です。
大型の索引コレクションの場合は、値2000をお薦めします。値が小さくなると、索引作成のパフォーマンスが非効率になります。
1度のバッチで処理されるファイル数を返します。
デフォルトは25です。
メタデータ・フィールドで許容される最大文字数を設定します。
リビジョン番号のマイナー・シーケンスを定義します。
マイナー・リビジョンのラベル・シーケンスを返します(構成設定の値を返します)。
文字列を返します。
クライアント・ブラウザがMicrosoft Internet Explorerであるかどうかを確認します。
複数ファイルのアップロード・アプレットを有効にします。
TRUE
に設定した場合、アップロード・アプレットが有効になり、複数のファイルを1つのコンテンツ・アイテムとして圧縮してチェックインできるようになります。
FALSE
に設定した場合、アップロード・アプレットは無効になります。デフォルトはFALSE
です。
「チェックイン」ページでアップロード・アプレットを表示するには、「ユーザー・プロファイル」ページで「アップロード・アプレットを有効にする」
を選択し、「更新」をクリックします。チェックインが始まると、アプレットに進行状況バーが表示されます。
config.cfg
ファイルのDisableHttpUploadChunking
は、デフォルトでtrue
に設定されています。チャンクを有効にするには、DisableHttpUploadChunking=false
に設定します。ただし、チャンクが有効な場合、requestaudit
トレースでは、アップロードされたすべてのチャンクに対して次の出力が表示されます。
requestaudit 11.15 15:55:47.835 IdcServerThread-32 CHUNKED_UPLOAD dUser=sysadmin][IsJava=1] 8.361(secs)
チャンクをトリガーするために必要なファイルの大きさを指定するには、AppletChunkThreshold
を設定します。このデフォルトは、1MB
で、1MBで十分であれば設定する必要はありません。
AppletChunkThreshold=10000000
チャンク・サイズを指定するには、AppletChunkSize
を設定します(この値もデフォルトは1MB
です)。1MBのチャンクでよい場合は、設定する必要はありません。
AppletChunkSize=10000000
チャンクを有効にしてアップロード・アプレットからアップロードするには、CHUNKED_UPLOADサービスが使用されます。このサービスでは、アップロードの各チャンクを取得し、ucm/vault/~temp
ディレクトリに配置します。チャンクがアップロードされると、各チャンクはメイン・ファイルに追加されます。アップロードが完了すると、ファイルはボールトの適切な場所に移動されます。
大きなファイルのアップロードのチャンクは、アップロード時にネットワークの問題が発生した場合に障害が発生した時点から再試行できる利点があります(アップロード全体を最初から開始する必要がありません)。
CHUNKED_UPLOAD POSTリクエスト本体のサンプルを次に示します。
注意: 大カッコで囲まれている部分は説明であり、実際のリクエストの一部ではありません。このリクエスト本体は、1つのファイルのアップロードのみを行います。 |
コンテンツ・サーバーの出力にchunkedrequest
トレースを表示するには、config.cfg
ファイルの設定を有効にして、「システム監査情報」ページでトレース・セクションのchunkedrequest
を有効にします。
ChunkedRequestTrace=true
chunkedrequest
トレース出力は次の例のような出力になります。TranedSize
は、「トランザクションされたサイズ」またはこれまでにアップロードされたサイズの合計を示すことに注意してください。
chunkedrequest 11.15 15:55:47.780 IdcServerThread-32 In doUpload() chunkedrequest 11.15 15:55:47.780 IdcServerThread-32 TranedSize: 15000000 chunkedrequest 11.15 15:55:47.780 IdcServerThread-32 Retrieve Session: 983887704 chunkedrequest 11.15 15:55:47.831 IdcServerThread-32 Leaving doUpload() chunkedrequest 11.15 15:55:47.831 IdcServerThread-32 Register new entry in ChunkSessionManager. chunkedrequest 11.15 15:55:47.831 IdcServerThread-32 SessionID: 983887704TimeOut: 213222ms. chunkedrequest 11.15 15:55:47.831 IdcServerThread-32 Session 983887704 is inserted in timeout queue at index 0 requestaudit 11.15 15:55:47.835 IdcServerThread-32 CHUNKED_UPLOAD [dUser=sysadmin][IsJava=1] 8.361(secs)
検索問合せから一致が見つかったかどうかを確認します。
通常、検索結果ページでのメッセージの表示に使用します。
MultiCheckinコンポーネントでメタデータ・フィールドに事前移入する必要がないことを指定します。
この変数は、カスタムHCSTページやコントリビューション・フォルダのコンポーネント・ページなどの特殊なページで使用できます。
TRUE
に設定した場合、MultiCheckinコンポーネントはメタデータ・フィールドに事前移入しません。
FALSE
に設定した場合、MultiCheckinコンポーネントによってメタデータ・フィールドが事前移入されます。
この設定によって、期限切れコンテンツを検索する自動問合せの条件を定義します。
NotificationQuery
が設定されていない場合、デフォルト値は、次の7日間で期限が切れるすべてのコンテンツです。
パラメータ
使用する問合せがパラメータになります。この問合せには、次のいずれかが使用できます。サンプルの問合せの詳細は、次の例の項を参照してください。
Idoc Scriptから作成されたIdoc Script問合せ。
URLエンコードによる問合せ。これは、検索を実行したときにWebブラウザのアドレスに表示されるURLを使用します。
検索変数を定義するプレーン・テキスト問合せ。
例
Idoc Scriptの例
データベースの索引付けとともに使用した場合、次の問合せでは、7日間のうちに期限が切れるすべてのドキュメントについて電子メールで通知されます。
NotificationQuery=dOutDate < '<$dateCurrent(7)$>'>
URLエンコードによる例
次の問合せでは、2007年8月1日をすぎると期限が切れるすべてのコンテンツが返されます。QueryText
部分で始まるブラウザのアドレス行のURLがコピーされます。
NotificationQuery=QueryText=dOutDate+%3C+%608%2F1%2F06%60&SearchProviders= [...}
プレーン・テキスト問合せ
次の問合せでは、2007年8月1日をすぎると期限が切れるすべてのコンテンツが返されます。
NotificationQuery=8/1/07
関連項目
『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』のEnableExpirationNotifierに関する項
『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』のNotificationIntervalInDaysに関する項
『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』のNotificationMaximumに関する項
『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』のNotifyExtrasに関する項
『Oracle Fusion Middleware Oracle WebCenter Content構成リファレンス』のNotifyTimeに関する項
検索問合せから一致が1つだけ見つかったかどうかを確認します。
通常、検索結果ページでのメッセージの表示に使用します。
オプション・リストの値が含まれているResultSet
列の名前を指定します。
例
dFormat
をDocFormats
ResultSetの列として指定し、チェックイン・ページの標準のFormat
フィールドに対してオプション・リストの値を取得します。
<@dynamichtml std_override_format_field@> <$if not isInfo and IsOverrideFormat$> <$fieldIsOptionList = 1, optionListResultSet = "DocFormats", optionListKey = "dFormat", optionListValueInclude = "std_override_format_option_value", addEmptyOption = 1, emptyOptionLabel = lc("wwEmptyFormatOption")$> <$include std_display_field$> <$endif$> <@end@>7
オプション・リストの名前を指定します。
標準のメタデータ・フィールドの場合、これは内部オプション・リストの名前になります。詳細は、第3.6.3.1項「内部オプション・リスト」を参照してください。
カスタム・メタデータ・フィールドの場合、これは接尾辞.options
の付いたフィールドの名前になります。
例
フィールドが1人だけのユーザーに制限されていない場合、オプション・リスト名はdocAuthors
に設定されます。
<$if SingleUser$> <$isInfoOnly = 1$> <$else$> <$fieldIsOptionList = 1, optionListName = "docAuthors"$> <$if HasExternalUsers$><$fieldOptionListType= "combo"$> <$endif$> <$endif$>
デフォルトのオプション・リスト・スクリプトを定義します。
<$if optionsAllowPreselect and fieldValue$> <$defaultOptionListScript = "<$optList " & optionListName & ":fieldValue$>"$> <$else$> <$defaultOptionListScript = "<$optList " & optionListName & ":noselected$>"$> <$endif$>
オプション・リストの値が含まれているResultSetの名前を指定します。
例
DocFormatsを検索ページの標準のFormatフィールドに対するオプション・リストResultSetとして指定します。
<@dynamichtml std_format_fields@> <$if ClientControlled or dFormat or dExtension$> <$fieldName = "dFormat", fieldCaption = lc("wwNativeFormat"), optionListResultSet = "DocFormats"$> <$include std_display_field$> <$fieldName = "dExtension", fieldCaption = lc("wwNativeExtension"), fieldWidth = 10$> <$include std_display_field$> <$endif$> <@end@>
ResultSetをループすることにより、オプション・リストが作成されます。
<@dynamichtml compute_resultset_option_list_script@> <$if not optionListKey$> <$optionListKey = fieldName$> <$endif$> <$defaultOptionListScript = "<$loop " & optionListResultSet & "$>" & "<$inc('std_resultset_option_list_item')$>" & "<$endloop$>"$> <@end@>
この変数が空以外の値に設定されている場合、フィールドのオプション・リストを表示する際にeval関数が使用されます。この変数によって、オプション・リスト(defaultOptionListScript
変数により定義)の標準的な実装をオーバーライドすることができます。
オプション・リストの値を定義するインクルードを指定します。
例
オプション・リストの値のインクルードとしてstd_override_format_option_value
を指定します。
<@dynamichtml std_override_format_field@> <$if not isInfo and IsOverrideFormat$> <$fieldIsOptionList = 1, optionListResultSet = "DocFormats", optionListKey = "dFormat", optionListValueInclude = "std_override_format_option_value", addEmptyOption = 1, emptyOptionLabel = lc("wwEmptyFormatOption")$> <$include std_display_field$> <$endif$> <@end@> <@dynamichtml std_override_format_option_value@> <$dDescription$> <@end@>
ResultSetのオプション・リストでのオプションの表示に使用するインクルードを指定します。
<@dynamichtml std_resultset_option_list_item@> <$curValue = getValue("#active", optionListKey)$> <option value="<$curValue$>" <$if optionsAllowPreselect and strEquals(curValue, fieldValue)$>selected<$endif$>> <$if optionListValueInclude$> <$inc(optionListValueInclude)$> <$else$> <$curValue$> <$endif$> <@end@>
メタデータ・フィールドのオプション・リストに最後の値を事前設定できることを指定します。
例
オプション・リストが事前設定できることを指定します。
<$optionsAllowPreselect=1$>
オプション・リストが事前設定されるかどうかを判別します。
<$if optionsAllowPreselect and fieldValue$> <$defaultOptionListScript = "<$optList " & optionListName & ":fieldValue$>"$> <$else$> <$defaultOptionListScript = "<$optList " & optionListName & ":noselected$>"$> <$endif$>
オプション・リストを生成します。
この関数は、コンテンツ・サーバー・ページでのオプション・リストの作成に広範に使用されます。
この関数は、loadMetaOptionsList
をコールするサービスとともに使用した場合のみ、出力を生成します。
パラメータ
1つのパラメータと、そのパラメータに対する1つのオプションの引数を取ります。
唯一のパラメータはフィールド名、オプション・リスト・キーまたは変数です。
フィールド名の構文は<$optList fieldName$>
です。カスタム・メタデータ・フィールドの場合、フィールド名は<$optList xFieldName.options$>
に解決されます。または、接尾辞.options
を直接指定することもできます。
オプション・リスト・キーの構文は<$optList ListName$>
です。
標準のメタデータ・フィールドの場合、ListName
は内部オプション・リスト(docAuthors
など)の名前になります。詳細は、第3.6.3.1項「内部オプション・リスト」を参照してください。
カスタム・メタデータ・フィールドの場合、ListName
はオプション・リスト・キー(FieldNameList
など)の名前になります。
変数の構文は<$optList variable$>
です。変数は、フィールド名またはオプション・リスト・キーに解決される必要があります。
次のいずれかのオプションの引数がパラメータに追加できます。
:noselected: オプション・リストが表示されるときに、値は選択されません。
:fieldValue: fieldValue変数により指定された値がオプション・リストのデフォルト値として選択されます。
例
次のスクリプトでは、内部のdocAuthorsリストから指定可能な作成者のリストが生成されます。
<$optList docAuthors$>
次のスクリプトでは、xRegion列のメタデータ・フィールドで指定されたオプションのリストが生成されます。
<$optList xRegion.options$>
次のスクリプトでは、変数optionListNameからオプション・リストが生成されて、デフォルト値が指定されます。
<$if optionsAllowPreselect and fieldValue$> <$defaultOptionListScript = "<$optList " & optionListName & ":fieldValue$>"$> <$else$> <$defaultOptionListScript = "<$optList " & optionListName & ":noselected$>"$> <$endif$>
ライブラリ内のディレクトリ・ページに親ページがあるかどうかを確認します。
日付を解析しますが、代替解析フォーマットを使用するためにフェイルオーバー・ロジックを適用します。
日付は、標準の比較演算子とともに使用した場合にミリ秒に変換されます。たとえば、式(60*60*1000)
は1時間と同等です。
この関数は通常、多数の秒、分、時、日を表す乗算式を使用して現在の時刻を調節する場合に使用します。
日付/時間を解析して算術評価が実行できるようにします。
日付は、標準の比較演算子とともに使用した場合にミリ秒に変換されます。たとえば、式(60*60*1000)
は1時間と同等です。
この関数は通常、多数の秒、分、時、日を表す乗算式を使用して現在の時刻を調節する場合に使用します。
例
次の式はそれぞれ、過去のある1日の日付と時間を返します。
<$parseDate(dateCurrent(-1))$> <$parseDate(dateCurrent()-(24*60*60*1000))$> <$dateCurrent(-1)$> <$dateCurrent()-(24*60*60*1000)$>
1時間後の時刻を返します。1行目では、時間乗算式を使用して1時間が加算され、カスタム変数に時間と日付を割り当てて、出力を抑制します。2行目では、カスタム変数を参照して、時間のみを表示することを定義します。
<$exec my_customParseTime parseDate(dateCurrent()+(1000*60*60))$> <$formatTimeOnly(my_customParseTime)$>
1年後の日付を返します。1行目では、時間乗算式を使用して1年が加算され、カスタム変数に時間と日付を割り当てて、出力を抑制します。2行目では、カスタム変数を参照して、日付のみを長いフォーマットで表示することを定義します。
<$exec my_customParseTime parseDate(dateCurrent()+(1000*60*60*24*365))$> <$formatTimeOnly(my_customParseTime)$>
このスクリプトでは、7日後の日付が有効期限日より大きいかどうかを評価し、trueの場合はユーザーにメッセージを返します。
<$if dOutDate$> <$if dateCurrent(7) > parseDate(dOutDate)$> Content item expires in one week. <$endif$> <$endif$>
このスクリプトでは、カスタマイズされたワークフローのジャンプに対して条件文の中でparseDate
を使用します。このスクリプトでは、このステップに最後に入ったのが4日前であった場合、ワークフローwf_late
の最初のステップに進んで、戻りステップが次のステップになるように設定することを指定します。
<$if parseDate(wfCurrentGet("lastEntryTs")) < dateCurrent(-4)$> <$wfSet("wfJumpName", "lateJump")$> <$wfSet("wfJumpTargetStep", "step_1@wf_late")$> <$wfSet("wfJumpReturnStep", wfCurrentStep(1))$> <$wfSet("wfJumpEntryNotifyOff", "0")$> <$endif$>
日付/時間を指定された日付/時間パターンに解析します。
日付は、標準の比較演算子とともに使用した場合にミリ秒に変換されます。たとえば、式(60*60*1000)
は1時間と同等です。
この関数は通常、多数の秒、分、時、日を表す乗算式を使用して現在の時刻を調節する場合に使用します。
パラメータ
次の2つのパラメータを取ります。
最初のパラメータは、コンテンツ・サーバー・インスタンスにより使用される日付文字列、または、parseDate関数またはdateCurrent関数を使用して作成された日付オブジェクトです。
2番目のパラメータは日付/時間パターン(例: MM/dd/yyyy
)であり、これは標準的なJava SimpleDateFormat
パターン文字列です。
この設定は廃止されています。Webサーバー・フィルタでは、この情報は送信されなくなりました。
CGIコンピュータへのファイル・システム・パスに関する追加情報を取得します。
仮想パスがPATH_TRANSLATED変数によって返されるときに、このパスの末尾にある追加情報もすべてPATH_INFOとして返されます。
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
たとえば、CGIコンピュータへのファイル・システム・パスを取得します。
c:/domain/weblayout/idcplg/idc_cgi_isapi-idcm1.dll.
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
左のサイドバー・ナビゲーションを有効にします。
問合せに関してURLのデリミタ?の後に続く文字列を取得します。
この変数は、現在のCGIリクエストに固有のものです。
一致を実行する正規表現を使用して、特定のパターンの文字列を検索します。正規表現の構成には、文字、文字クラスおよびその他のクラスと限定子を含めることができます。クラス・パターンのJava APIの詳細は、http://www.oracle.com/technetwork/java/index.html
を参照してください。
この機能は、JVM 1.4以降のみで使用可能です。これは、WebCenter Contentバージョン7.0以降のデフォルト・バージョンになります。
一致および置換を実行する正規表現を使用して、特定のパターンの文字列を検索します。正規表現の構成には、文字、文字クラスおよびその他のクラスと限定子を含めることができます。クラス・パターンのJava APIの詳細は、http://www.oracle.com/technetwork/java/index.html
を参照してください。
この機能は、JVM 1.4以降のみで使用可能です。これは、WebCenter Contentバージョン11.1.1.7.0以降のデフォルト・バージョンになります。
正規表現のすべてのインスタンスを置換文字列に置き換えます。
一致および置換を実行する正規表現を使用して特定のパターンの文字列を検索し、最初のインスタンスを置換文字列に置き換えます。正規表現の構成には、文字、文字クラスおよびその他のクラスと限定子を含めることができます。クラス・パターンのJava APIの詳細は、http://www.oracle.com/technetwork/java/index.html
を参照してください。
この機能は、JVM 1.4以降のみで使用可能です。これは、WebCenter Contentバージョン11.1.1.7.0以降のデフォルト・バージョンになります。
リクエストを行うリモート・ホストのIPアドレスを返します。
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
リクエストを行うリモート・ホストの名前を返します。
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
リクエストの作成に使用されたメソッドを取得します。
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
チェックイン時に必須メタデータ・フィールドに値が指定されていない場合に表示されるエラー・メッセージを指定します。
検索結果ページのタイトルを定義します。
Webレイアウト・エディタはこの変数を使用して、検索結果ページに名前を付け、そのページの一番上に見出しを表示します。
この関数は内部使用専用です。
この関数は、内部キー・コードのローカライズされた文字列表記を返します。これらのキー・コードは、コンテンツ・アイテムのステータスおよび状態フラグの格納に使用されます。この関数は、内部状態の説明を表示するために、「コンテンツ情報」ページと各ワークフロー・ページで使用されます。
この関数は、ResultSetの名前が付けられているResultSetを返します。実際に返されるオブジェクトがResultSetであるため、他の関数の戻り値に対して実行できないアクションが、この戻り値では実行可能になります。特に、ループ構文を結果に適用することができます。
例
MyResultSet
がResultSetの名前であるとした場合、次の構文を使用してResultSetでループすることができます。
<$loop rs("MyResultSet")$>... Script inside loop ...<$endloop$>
この関数は、Idoc Script関数のコール時に変数を一時的に割り当てる際にも使用できます。特に、次の例では、コール中にMyResultSet
によりポイントされたものと同じResultSetをポイントするために一時的に変数rsParam
を割り当てて、リソース・インクルードmy_include
をインクルードします。rs
関数の結果が変数に割り当てられた場合、その変数にはResultSetに対する共有ポインタが指定されて、rsCreateReference
をコールした場合と同じ効果が得られます。
<$inc("my_include", rsParam=rs("MyResultSet"))$>
新しいフィールドをResultSetに追加します。この関数は、フィールドがまだ存在していない場合のみフィールドを追加します。setValue(...)でも新しいフィールドを追加できますが、これはResultSetが空ではなく、現在の有効行にある場合のみに使用できることに注意してください。
新しいフィールドを既存のResultSetに追加します。rsAddFields
とは異なり、この関数には、追加されるどのフィールドに対してもデフォルト値を指定できる機能があります。rsAddFieldsWithDefaults
では、フィールド内の既存のデータが上書きされることはありません。新しいフィールドがResultSetに追加されるだけです。
パラメータ
次の表に、この関数のパラメータを示します。
パラメータ | 説明 |
---|---|
resultSetName |
ResultSetの名前。 |
newFields |
ResultSetに追加するフィールドのカンマ区切りリスト。指定されたフィールドのうち、ResultSet内に既存のものはすべて無視されます。 |
defaultValues |
各行の新規フィールドに対して設定されたデフォルト値のオプションのカンマ区切りリスト。このリストの値はそれぞれ、newFieldsリストの同じ位置にある新規フィールドに対応しています。デフォルト値を設定するときにカンマを入れる必要がある場合は、カンマとして'^'が使用できます。defaultValuesリストがnewFieldsリストよりも長いまたは短い場合、この関数は余分のデフォルト値を無視するか、未指定のデフォルト値に対して空の文字列を使用します。 |
例
フィールドの追加
<$rsCreateResultSet("MyList", "field1,field2,field3")$><$rsAppendRowValues("MyList", "A,B,C,D,E,F")$><$rsAddFieldsWithDefaults("MyList", "field4,field5,field6")$>
この基本的な例では、MyList
というResultSetを作成し、いくつかの値を設定した後で、さらに3つのフィールドを、デフォルト値を設定せずにMyList
に追加します。この結果得られる表は次のようになります。
field1 | field2 | field3 | field4 | field5 | field6 |
---|---|---|---|---|---|
A | B | C | |||
D | E | F |
デフォルトを指定したフィールドの追加
<$rsCreateResultSet("MyList", "field1,field2,field3")$><$rsAppendRowValues("MyList", "A,B,C,D,E,F")$><$rsAddFieldsWithDefaults("MyList", "field4,field5,field6", "X,Y,Z")$>
ここでは、新規フィールドのデフォルト値を定義します。この結果得られる表は次のようになります。
field1 | field2 | field3 | field4 | field5 | field6 |
---|---|---|---|---|---|
A | B | C | X | Y | Z |
D | E | F | X | Y | Z |
フィールドがすでに存在する場合
<$rsCreateResultSet("MyList", "field1,field2,field3")$><$rsAppendRowValues("MyList", "A,B,C,D,E,F")$><$rsAddFieldsWithDefaults("MyList", "field1,field4,field5", "X,Y,Z")$>
この場合は、すでにMyList
に存在するフィールドを追加しようとしています。このアクションは完全に無視され、旧フィールドの値が保存されます。この結果得られる表は次のようになります。
field1 | field2 | field3 | field4 | field5 |
---|---|---|---|---|
A | B | C | X | Y |
D | E | F | X | Y |
指定したデフォルト値が少ない場合
<$rsCreateResultSet("MyList", "field1,field2,field3")$><$rsAppendRowValues("MyList", "A,B,C,D,E,F")$><$rsAddFieldsWithDefaults("MyList", "field4,field5,field6", "X,Y")$>
この例では、すべてのフィールドに対して十分なデフォルト値がデフォルト値リストにないことに留意してください。この場合は、未指定の列に対して空白が入力されるだけです。
field1 | field2 | field3 | field4 | field5 | field6 |
---|---|---|---|---|---|
A | B | C | X | Y | |
D | E | F | X | Y |
この関数では、それぞれの行の値がその行の行カウントである新規フィールドを追加します。カウントは0から始まります。この関数は、XMLデータ・アイランドのResultSet(.hcsp
ファイル内)に対してrsSort(...)
を使用する直前に使用して、元の行の場所を保存する場合に役立ちます。
この関数はrsMerge
と同様の特性を備えていますが、マージおよびテスト条件がない点が異なります。ResultSet rsNameSource
のすべての行がResultSet rsNameTarget
に追加されます。さらに、rsNameTarget
にはなく、rsNameSource
にあるすべてのフィールドがrsNameTarget
に追加されます。ResultSetの簡単な組合せを実行する場合に役立ちます。
ResultSetの末尾に新しい行を追加します。現在の行は影響を受けません。
ResultSetに新しい行を追加するユーティリティ関数。値リストは、行に分割される値のカンマ区切りリスト(各値をエンコードするためにエスケープ規則、',' -> '^', '^' -> '#^', '#' -> '##'を使用)です。n個のフィールドはResultSet内のフィールド数であると仮定します。n個のフィールドの値をカウントして新しい行を作成し、次のn個のフィールドの値を取り込んで次の1行を作成するというようにして、値リストが行に分割されていきます。値の数がn個のフィールドの正確な倍数でない場合は、最後の行のフィールド値が空の文字列でパディングされます。この関数は、Idoc Scriptを使用してResultSetを簡潔にハードコード化する場合に役立ちます。
例
<$rowValues = "a1, b1, a2, b2"$> <$rsCreateResultSet("ResultSet1", "ColumnA,ColumnB")$> <$rsAppendRowValues("ResultSet1", rowValues$> <table border=2> <tr><td>ColumnA</td><td>ColumnB</td></tr> <$loop ResultSet1$> <tr><td><$ColumnA$></td><td><$ColumnB$></td> </tr> <$endloop$> </table>
この結果得られるHTMLは次のようになります。
列A | 列B |
---|---|
列A | 列B |
A1 | B1 |
A2 | B2 |
この関数は、1つのResultSetから選択された行のみをコピーして、別のResultSetを作成します。名前がrsNameTarget
である前出のResultSetはすべて置換されます。filterPattern
のパターンに対するテストを使用してfilterField
の各行の値をテストすることにより、行が選択されます。パターン一致は、Idoc Scriptのlike
演算子で使用するものと同じです。
この関数は、リクエスト・データ内の既存のResultSetに対する共有参照のあるIdoc Script変数を設定します。
fieldList
内のフィールドのリストを使用して初期化されたResultSetを作成します。すべてのフィールドはstring
型として設定されます。
ResultSet内の現在の行を削除します。現在の行が次の行に進みます(または、ResultSetの末尾行が削除された場合、ResultSetの末尾の後をポイントします)。
ResultSetの現在行により参照されるコンテンツ・アイテムのURLの表示が現在のユーザーに許可されるかどうかを確認します。
この関数は、コンテンツ・アイテムの問合せによって生成されたResultSetのURLを選択的に表示する場合に役立ちます。
ResultSetが存在するかどうかを確認します。
ゼロから始めて、指定された列索引にあるフィールドの名前を取得します。
指定されたResultSetに特定のフィールドが含まれているかどうかを確認します。
一致する値を見つけるために、ResultSetの最初の列を検索します。
ResultSet内の最初の行に移動します。
操作中のResultSetの現在行の直前に行を挿入します。新しい行が現在行になります。
ResultSetの現在行のステータスを確認します。
この関数は、1行ごとに1回リソース・インクルードを実行しながら、ResultSetでループします。このインクルードの実行中、ResultSetは一時的にアクティブになります(標準的な<$loop ...$>
構成の場合と同じです)。
この関数は、1つのリソース・インクルードを実行する間に、ResultSetを一時的にアクティブにプロモートします。これはrsLoopIncludeと非常によく似た動作をしますが、ResultSetの現在行に対してインクルードが実行されるのは1回のみです。
オプション・リストから単一列のResultSetを作成します。
パラメータ
2つの必須パラメータと1つのオプションのパラメータを取ります。
最初のパラメータは、作成されるResultSetの名前です。
2番目のパラメータは、既存のオプション・リストの名前です(例: docAccounts
またはxMyCustomField.options
)。
3番目のオプションのパラメータは、ResultSet列の名前です。値が指定されていない場合、列名のデフォルトはrow
になります。
例
2つのResultSet、ListA
およびListB
をsecurityGroups
およびdocAuthors
の各オプション・リストから作成します。
<$lista = "securityGroups"$> <$rsMakeFromList("ListA", lista)$> <$rsMakeFromList("ListB", "docAuthors", "name")$> <table border=2> <tr><td>Security Groups</td><td>Authors</td></tr> <tr> <td><$loop ListA$><$row$><br> <$endloop$></td> <td><$loop ListB$><$name$><br> <$endloop$></td> </tr> </table>
ResultSetsは次のようになります。
@ResultSet ListA 1 row Public Secure @end @ResultSet ListB 1 name hchang pkelly sysadmin user1 @end
この結果得られるHTMLは次のような表になります。
ListA | ListB |
---|---|
セキュリティ・グループ | Authors |
hchang | |
パブリック | okelly |
セキュア | sysadmin |
user1 |
文字列から単一列のResultSetを作成します。
パラメータ
2つの必須パラメータと1つのオプションのパラメータを取ります。
最初のパラメータは、作成されるResultSetの名前です。
2番目のパラメータは、解析される文字列のカンマ区切りリスト(例: a,b,c,d
)、または値としてカンマ区切り文字列を持つ変数です。
3番目のオプションのパラメータは、ResultSet列の名前です。値が指定されていない場合、列名のデフォルトはrow
になります。
例
2つのResultSet、StringA
およびStringB
を作成します。
<$stringa = "a,b,c,d"$> <$rsMakeFromString("StringA", stringa)$> <$rsMakeFromString("StringB", "A,B,C,D", "name")$> <table border=2> <tr><td>StringA</td><td>StringB</td></tr> <tr> <td><$loop StringA$><$row$><br> <$endloop$></td> <td><$loop StringB$><$name$><br> <$endloop$></td> </tr> </table>
ResultSetsは次のようになります。
@ResultSet StringA 1 row a b c d @end @ResultSet StringB 1 name A B C D @end
この結果得られるHTMLは次のような表になります。
Stringa | Stringb |
---|---|
A | A |
B | B |
C | C |
D | D |
1つのResultSetの行を別のResultSetにマージします。rsCommonField
フィールドにあるrsNameSource
ResultSetの値がrsNameTarget
の行にある同じフィールドの値と一致する場合、その行は置換されます。そうでない場合は、rsNameSourceの行が追加されます。rsNameTarget
に同じ値で一致する行が複数存在する場合は、最初の行のみが置換されます。その行は、一致する行のあるrsNameSource
の最後の行によって置換されます。ResultSet rsNameSource
のフィールドのうち、rsNameTarget
に存在しないフィールドはすべてrsNameTarget
の新しいフィールドとして追加されます。この関数は、複数の一致による問題が生じるのを避けるために、rsCommonField
フィールドで一意の値のみを持つResultSetで最もよく機能します。
rsMergeReplaceOnly
と類似していますが、ResultSet rsNameTarget
の一致する行が置換されるのではなく、削除される点が異なります。これは、別のResultSetにすでに存在する行をResultSetから削除する場合に役立ちます。
rsMerge
と類似していますが、行は置換されるだけであり、ResultSet rsNameTarget
に追加されません。さらに、rsNameSource
の新規フィールドはrsNameTarget
に追加されません。
ResultSet内の次の行に移動します。
ResultSetにあるフィールド数を示します。これは、rsFieldByIndex
と併用する場合に役立ちます。
ResultSetにある行数を示します。
ResultSetを削除します。
ResultSetの名前を変更します。
変数を使用して新しいResultSet名を定義する場合は、rsFirst
、rsNext
および#isRowPresent
を使用して新しいResultSet変数を手動でループする必要があります。次に例を示します。
<$rsNewName="MySearchResults"$> <$rsRename("SearchResults", rsNewName)$> <$rsFirst(rsNewName)$> <$loopwhile getValue(rsNewName, "#isRowPresent")$> <!--output code--> <$rsNext(rsNewName)$> <$endloop$>
ResultSetのフィールド名を変更します。
ResultSet内の指定された行に移動します。
ResultSetを特定の列でソートします。
XMLデータ構造(ノード、親ノード、深さ属性のあるもの)の表現であるResultSetをソートします。
パラメータ
7つのパラメータを取ります。次に例を示します。
rsSortTree(rsName,itemIdCol,parentIdCol,nestLevelCol,sortCol,sortType,sortOrder)
パラメータ | 説明 |
---|---|
rsName | ResultSetの名前。 |
itemIdCol | 各ノードの一意のIDが含まれている列の名前。 |
parentIdCol | 親ノード(存在する場合)のIDが含まれている列の名前。 |
nestLevelCol | 各ノードのネスト・レベル(深さ)が含まれている列の名前。 |
sortCol | ソート基準となる列の名前。 |
sortType | ソートのタイプ(デフォルトはint):
string: アルファベット順にソート int: 数値でソート date: 日付別にソート |
sortOrder | ソート順(デフォルトはasc):
asc: 昇順 desc: 降順 |
余分のコンテンツ・サーバー・ファイルがContent Serverアナライザ・ユーティリティによって移動される場所を取得します。
デフォルトは、IdcAnalyzeLogDir
設定により指定されたログ・ディレクトリにあるサブディレクトリです。
この変数は設定可能ではありません。
CGIリンク・ファイルへの相対パスを取得します。
CGIリンク・ファイルは、オペレーティング・システムおよびWebサーバーごとに異なるWebサーバー・セキュリティ・フィルタの実行可能ファイルです。たとえば、Solarisの場合のファイル名はnph-idc_cgi.exe
です。
自己登録ユーザーに指定されるデフォルトのアカウントと権限を定義します。
これはカンマ区切りリストです。
アカウント別の権限を、アカウント名の後にカッコに入れて指定する必要があります。
#none
エントリは、アカウントが割り当てられていないコンテンツ・アイテムに権限を付与します。#all
エントリでは、すべてのアカウントに権限が与えられます。
デフォルト値はありません。
文字列としてアカウントのリストを返します。
自己登録ユーザーに指定されるデフォルトのロールを定義します。
これはカンマ区切りリストです。
デフォルト値はありません。
文字列としてロールを返します。
自己参照URLに表示されるようなホスト名、DNSエイリアスまたはWebサーバーのIPアドレスを取得します。
この変数はリクエスト固有ではなく、すべてのリクエストに対して設定されます。
リクエストが送信されたWebサーバーのポート番号を取得します。
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
受信リクエストのプロトコルとリビジョンを返します。
この変数は、現在のゲートウェイ・プログラム・リクエスト固有のものです。
この設定は、バージョン7.0以降では廃止されています。
Webサーバー・フィルタでは、この情報は送信されなくなりました。
リクエストに回答しているWebサーバー・ソフトウェアの名前とバージョンを返します。
これは、ゲートウェイを実行しているサーバーでもあります。
この変数はリクエスト固有ではなく、すべてのリクエストに対して設定されます。
返されたページに対してコンテンツ・タイプを設定し、ブラウザがそのページを適切にレンダリングできるようにします。たとえば、text/plain、application/excelまたはtext/xmlというコンテンツ・タイプ(ファイル形式タイプまたはMIMEタイプ)です。
ブラウザにCookie値を設定します。
セッション情報、または匿名ユーザーに関する情報の保持に使用します。
有効期限を渡して、指定した時間にCookieが期限切れになるようにすることもできます。
重要: セキュア・データをCookieに格納しないでください。悪質なユーザーによってサイトにCookieが設定されるリスクがあるため、Cookieの使用を制限してください。 |
パラメータ
この関数は、次の3つのパラメータを取ることができます。
最初のパラメータは、Cookieの名前です。
2番目のパラメータは、設定される値です。
3番目のパラメータは、Cookieの期限切れを指定する有効期限インジケータです。
この関数は、ページの有効期限の絶対時間の設定に使用できます。これは、存続期間が長く、頻繁にリクエストされる可能性のあるページで使用するのが最適です。クライアントとサーバー間の時間同期化の問題により、特に存続期間の短いキャッシュの場合は全面的に信頼できるわけではありません。データは、受入れ可能なHTTP日付フォーマットの1つに従って設定する必要があります。
詳細は、次のW3プロトコルを参照してください。
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3
この関数は、任意のHTTPヘッダーの設定に使用できます。値にはCache-Control
、Content-Type
、Last-Modified
またはその他の受入れ可能なHTTPヘッダーがありますが、これに限られるものではありません。
詳細は、次のW3プロトコルを参照してください。
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3
パラメータ
次の2つのパラメータを取ります。次に例を示します。
setHttpHeader(headerName, headerValue)
パラメータ | 説明 |
---|---|
headerName | 有効なHTTPヘッダーの名前。 |
headerValue | ヘッダーの値。 |
この関数は、ページの有効期限の絶対時間の設定に使用できます。これは、存続期間が長く、頻繁にリクエストされる可能性のあるページで使用するのが最適です。クライアントとサーバー間の時間同期化の問題により、特に存続期間の短いキャッシュの場合は全面的に信頼できるわけではありません。データは、受入れ可能なHTTP日付フォーマットの1つに従って設定する必要があります。
詳細は、次のW3プロトコルを参照してください。
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3
インクルードを定義します。
この関数により、動的に構成されたスクリプトをインクルードに割り当てることができます(eval関数でこのようなスクリプトを解析し、評価できる場合と同様です)。
指定されたインクルードがすでに存在している場合は、新しいスクリプトでsuperキーワードを使用して既存のインクルードを参照することができます。
パラメータ
次の2つのパラメータを取ります。
最初のパラメータは、インクルードの名前です。
2番目のパラメータは、インクルードのコンテンツを定義する文字列です。この文字列には、Idocスクリプトを含めることができます。
例
文字列「My name is resource include」を使用して、スクリプトを動的に構成します。
<$setResourceInclude("my_name","My name is <$my_name$>")$>
super
キーワードを使用して、std_display_field
インクルードを変更します。
<$myInclude="<span class='field'><$include super.std_display_field$></span>" <$setResourceInclude("std_display_field",myInclude)$>
次の例では、返される結果が抑制されます。
<$exec setResourceInclude("std_display_field",myInclude)$>
ターゲットとして、#local
またはResultSetの名前のいずれでも使用できます。ターゲットが#local
である場合、パラメータnameは、パラメータvalueによって設定される値のあるローカル・データ変数の名前を識別します。ターゲット領域が空ではなく、#local
ではない場合、パラメータtargetによって指定されたResultSetのフィールドが設定されます。ResultSetが存在していて、現在有効な現在行にある場合、その行にある特定の列の値(パラメータnameにより指定された列)はパラメータvalueの値を使用して設定されます。フィールドが現在ResultSetの一部でない場合、そのフィールドは新しい列としてそのResultSetに追加され、値が設定されます。ターゲットResultSetが有効な行にない場合、この関数の効果はありません(ただし、内部例外がサーバー出力で報告されます)。この関数はgetValue()と対照的である必要があります。
現在のリビジョンがBasicワークフロー内のコントリビュータ・ステップにあるかどうかを評価します。
現在の動的サーバー・ページのコンテンツIDを指定します。
この変数は、ref:dID
と同じ値を返します。詳細は、第 3.6.4項「動的サーバー・ページのメタデータ参照」を参照してください。
最後の関数コールが成功したか、または失敗したかを指定します。この変数は、サービス・コールの終わりに設定されます。
一部の関数では、成功した場合にこの変数をゼロ(0)に設定します。
一部の関数では、失敗した場合にこの変数を負の数値(-1)に設定します。通常はabortToErrorPage関数をコールして、最新の関数コールによるStatusMessage値とともにエラー・ページが表示されます。
最後の関数コールに対するエラー・メッセージを定義します。この変数はサービス・コールの終わりに設定されますが、サービス・コール中の設定が可能です。
この変数は通常、abortToErrorPage関数のコール時にエラー・ページに表示されます。
標準のセキュリティ・モデルに基づき、現在のユーザーがリクエストされたコンテンツ・アイテムへのアクセス権を持っているかどうかを確認します。
標準の(または、デフォルトの)セキュリティ・モデルでユーザーに対してコンテンツ・アイテムへのアクセス権が許可されるかどうかを判別するために、アクティブなデータが確認されます。これにより、セキュリティのカスタム実装では標準のセキュリティ・モデルがベースラインとして引き続き実行可能になります。
文字列の両サイドに同等のスペースを埋め込みます。文字列のそれぞれのサイドに同数のスペースを追加して、文字列が少なくとも指定された長さになるようにします。必要に応じて、文字列の長さに1文字が追加されます。
例
フォーム<space><space>inf<space><space>
を使用して、それぞれのサイドに同数のスペースを埋め込み、7文字の長さの文字列を作成します。
<$strCenterPad("inf", 7)$>
フォーム<space><space><space>inf<space><space><space>
を使用して、それぞれのサイドに同数のスペースを埋め込み、9文字の長さの文字列を作成します。
<$strCenterPad("inf", 8)$>
フォーム<space><space><space>inf<space><space><space>
を使用して、それぞれのサイドに同数のスペースを埋め込み、9文字の長さの文字列を作成します。
<$strCenterPad("inf", 9)$>
この関数は、既存の文字列に新しいトークンを追加します。カンマ1つと新しいトークンを加えた文字列が返されます。文字列にトークンがすでに存在している場合、トークンは追加されません。
文字列を最大長に制限し、必要に応じてパディングを追加します。
文字列が指定された長さと等しいか、それより短い場合は、影響を受けません。
文字列が指定された長さよりも長い場合は短縮され、指定された長さに等しくなるように3つのパディング文字が追加されます。パディングに使用する文字は、StrConfineOverflowChars
変数を変更することによって指定できます。
例
文字列を制限し、フォームin<dot><dot><dot>
を使用して3つのパディング文字(ドット)を追加し、5文字の長さの文字列を作成します。
<$strConfine("inform", 5)$>
文字列を制限し、フォームi<dot><dot><dot><dot>
を使用してパディング文字(ドット)を追加し、5文字の長さの文字列を作成します。
<$strConfine("i", 5)$>
文字列を最大10文字の長さに制限して、この6文字の文字列が影響を受けないようにします。
<$strConfine("inform", 10)$>
文字列を最大6文字の長さに制限して、この6文字の文字列が影響を受けないようにします。
<$strConfine("inform", 6)$>
文字列のパディング文字を定義します。
strConfine
Idoc Script関数によってパディング用に使用される文字を定義します。
デフォルトはピリオド(ドット)です。
2つの文字列が、大/小文字の区別も含めて同等であるかどうかを確認します。
2つの文字列が、大/小文字の区別を含めないで同等であるかどうかを確認します。
この関数は、16進文字のランダム文字列を生成します。length
パラメータによって指定された数の文字を出力します。長さが指定されていない場合は、16文字がデフォルトになります。
文字列が別の文字列の部分文字列であるかどうかを判別します。
出力
2番目の文字列が最初の文字列の部分文字列である場合は、最初の文字列内で部分文字列が始まる箇所を示した索引値を返します。最初の文字の索引値は 0です。
2番目の文字列が最初の文字列の部分文字列でない場合は、-1の値を返します。
例
xy
がxyz
の部分文字列であるかどうかを評価して、索引値0を返します。
<$if strIndexOf("xyz","xy") >=0$> check for substring <$endif$>
yz
がxyz
の部分文字列であるかどうかを評価して、索引値-1を返します。
<$if strIndexOf("xyz","yz") >=0$> check for substring <$endif$>
ab
がxyz
の部分文字列であるかどうかを評価して、索引値-1を返し、これが部分文字列ではないことを示します。
<$if strIndexOf("xyz","ab") >=0$> check for substring <$endif$>
文字列の左サイドに文字を充填して、文字列を指定された長さにします。
文字列の左に余分のスペースを埋め込んで、文字列を指定された長さにします。
文字列の長さを評価します。
文字列をすべて小文字でフォーマット化します。
文字列から空のスペースを削除します。
既存の部分文字列を別の部分文字列に置換します。
置換する部分文字列が複数存在する場合、それらはすべて新しい部分文字列に置換されます。
既存の部分文字列を別の部分文字列に置換して、大/小文字を区別せずに検索を実行します。
置換する部分文字列が複数存在する場合、それらはすべて新しい部分文字列に置換されます。
文字列の右サイドに文字を充填して、文字列を指定された長さにします。
文字列の右に余分のスペースを埋め込んで、文字列を指定された長さにします。
文字列から部分文字列を取得します。
最初の文字の索引値は0です。
出力
部分文字列を返します。
終了索引パラメータが指定されている場合は、開始索引の文字で始まり、終了索引の前の文字で終わる部分文字列が返されます。
終了索引パラメータが指定されていない場合は、開始索引から文字列の終わりまでの部分文字列が返されます。
文字列の最初と最後からスペースを削除します。
文字列をすべて大文字でフォーマット化します。
システム管理者の電子メール・アドレスを定義します。
これは、ワークフロー内と、コンテンツ・サーバー・インスタンスから送信されるサブスクリプション通知電子メールで使用されるアドレスです。
文字列を返します。
デフォルト値はありません。
現在のページに対するテンプレートの分類を取得します。
この変数により、テンプレートのアイデンティティに基づいてテンプレートに条件付きコンテンツを作成できます。この変数をテンプレート・ページの中で使用して、サーバーにより配信されたページの配信元を判別します。
標準テンプレートの場合、この変数は、templates.hdaファイル内のIntradocTemplates
表のclass
列で定義されます。
検索結果テンプレートの場合、この変数はResults
に評価します。
レポート・テンプレートの場合、この変数はReports
に評価します。
動的サーバー・ページの場合、この変数は通常はIdcDynamicFile
です。
テンプレートの実際のロード元のパスを取得します。
この変数により、テンプレートのアイデンティティに基づいてテンプレートに条件付きコンテンツを作成できます。この変数をテンプレート・ページの中で使用して、サーバーにより配信されたページの配信元を判別します。
現在のページに対するテンプレートの内部名を取得します。たとえば、DOC_INFOまたはCHECKIN_NEW_FORMです。
この変数により、テンプレートのアイデンティティに基づいてテンプレートに条件付きコンテンツを作成できます。この変数をテンプレート・ページの中で使用して、サーバーにより配信されたページの配信元を判別します。
現在のページのテンプレート・タイプを指定します。
この変数により、テンプレートのアイデンティティに基づいてテンプレートに条件付きコンテンツを作成できます。この変数をテンプレート・ページの中で使用して、サーバーにより配信されたページの配信元を判別します。
標準テンプレートの場合、この変数は、templates.hda
ファイル内のIntradocTemplates
表のformtype
列で定義されます。
検索結果テンプレートの場合、この変数は、templates.hda
ファイル内のSearchResultTemplates
表のformtype
列で定義されます。
レポート・テンプレートの場合、この変数は、reports.hda
ファイル内のIntradocReports
表のdatasource
列で定義されます。
動的サーバー・ページの場合、この変数はhcsp
またはhcsf
のいずれかです。
文字列を整数に変換します。
デバッグまたはトレース・メッセージのログをIsPageDebug
出力に記録できるようにします。メッセージをコンソールまたはシステム・ログに出力することもできます。
パラメータ
1つの必須パラメータと2つのオプションのパラメータを取ります。
最初のパラメータは、出力されるメッセージです。この値は次のいずれかです。
文字列。文字列が唯一のパラメータとして渡される場合は、この関数を実行するためにIsPageDebug変数を設定する必要があります。文字列は累積デバッグ・トレースに追加されます。
#local
: 現在のすべてのローカル変数のダンプを準備します。
#all
: すべてのローカル・データ、ResultSetおよび環境データの完全なHDAダンプを準備します。
2番目の(オプションの)パラメータは、メッセージがリレーされる場所です。次の値が指定できます。
#console
: コンソールに表示します。
#log
: メッセージのログをHTMLログ・ファイルに記録します。
変数の名前(StatusMessageなど)。この場合、メッセージは現在の値に追加されます。
3番目の(オプションの)パラメータは適切なトレーシング・セクション用であり、場所パラメータが#console
に設定されている場合のみ関連します。
例
次の例では、文字列message
が、常にログされるシステム・コンソールにログとして記録されます。
<$trace("message", "#console")$>
次の例では、文字列message
が、pagecreation
トレーシング・セクションにあるシステム・コンソールにログとして記録されます。
<$trace("message", "#console", "pagecreation")$>
次の例では、文字列message
がHTMLコンテンツ・サーバーのログ・ファイルにログとして記録されます。
<$trace("message", "#log")$>
次の例では、すべてのローカル変数とその値がシステム・コンソールにダンプされます。
<$trace("#local", "#console")$>
次の例では、すべてのローカル変数、ResultSetおよび環境変数がシステム・コンソールにダンプされます。
<$trace("#all", "#console")$>
次の例では、すべてのデータが変数MyTraceDump
にダンプされ、あとでページに表示できます。これは、HCSP開発者がコンソール・ログの表示に際して適切なアクセス権を持っていない場合などに役立ちます。
<$trace("#all", "MyTraceDump")$> <$MyTraceDump$>
複数ファイルのアップロード・アプレットを有効にします。
重要: この設定は、Uploadアプレットのカスタム・レガシー・バージョン専用です。標準のMultiUpload変数が有効になっているときには、これを有効にしないでください。 |
TRUE
に設定した場合、アップロード・アプレットが有効になり、複数のファイルを1つのコンテンツ・アイテムとして圧縮してチェックインできるようになります。
FALSE
に設定した場合、アップロード・アプレットは無効になります。
デフォルトはFALSE
です。
URLで使用するように文字列をフォーマット化します。
この関数は、空白と予約文字をエスケープ・シーケンスに変換します。
この関数は、文字列パラメータのURLエンコード化バージョンを返します。これはurl
関数と類似していますが、7ビット・クリーン(ASCII)以外の文字のみをエンコードします。したがって、この関数は同じ文字列上で繰り返しコールできます。
url
関数を使用して文字列をダブル・エンコードする場合、すべての%文字は%25にエンコードされます。
全文検索キーワードの強調表示が有効になっているかどうか、およびこのファイル形式(PDF、HTMまたはTXTなど)で強調表示がサポートされているかどうかを確認します。
EnableDocumentHighlight
の設定がTRUE
である場合、キーワードの強調表示は有効になっています。
現在のユーザーが割り当てられているアカウントのカンマ区切りリストを取得します。
#none
エントリは、アカウントが割り当てられていないコンテンツ・アイテムに対する権限を示します。
#all
エントリは、すべてのアカウントに対する権限を示します。
現在のユーザーの電子メール・アドレスを取得します。
現在のユーザーのアプリケーション権利を確認します。
出力
ユーザーの権利を指定するビット・フラグ番号を返します。
管理アプリケーション | ビット・フラグ |
---|---|
ユーザー管理 | 1 |
Webレイアウト・エディタ | 2 |
リポジトリ・マネージャ | 4 |
ワークフロー管理 | 8 |
構成マネージャ | 16 |
Archiver | 32 |
現在のユーザーのデフォルトのアカウントを取得します。
現在のユーザーのフルネーム。
ユーザーが特定の権限レベルで名前付きアカウントへのアクセス権を持っている場合、この関数はTRUE
を返します。権限は、次のようにアクセス・レベルを1文字で表記したものです。
R: 読取り。1として指定されます。
W: 書込み。2として指定されます。
D: 削除。4として指定されます。
A: 管理。8として指定されます。
ユーザーが指定されたグループに対して指定された権限を持っている場合、TRUE
を返します。権限は、次のようにアクセス・レベルを1文字で表記したものです。
R: 読取り
W: 書込み
D: 削除
A: 管理
現在のユーザーが特定のロールを持っているかどうかを確認します。
現在のユーザーが管理アプレットの権利を持っているかどうかを確認します。
ユーザーの優先言語を表す2文字のコード(たとえば、en
は英語、fr
はフランス語、ja
は日本語)を返します。
これは、ローカライズ・コンテンツのURLを構成する場合に役立ちます。
ユーザーのロケールのフルネーム(たとえば、English-US
、English-UK
、Japanese
など)を返します。
ロケールには、言語、日付、数値フォーマットに関する情報が含まれています。
現在のユーザーのユーザー名を取得します。
現在のユーザーが属しているロールのカンマ区切りリストを取得します。
Secure Sockets Layer (SSL)を有効にします。
この設定は、変数HttpWebRoot
およびHttpCgiPath
に影響します。
SSL対応のWebサーバーを使用している場合のみ、Secure Sockets Layerを使用します。
TRUE
に設定した場合、SSL (http
ではなくhttps
)が使用されます。
デフォルトはFALSE
です。
検索キーワードの強調表示がXMLドキュメントに対して有効になっているかどうかを確認します。TRUE
に設定した場合、キーワード検索の実行時にXML URLが構成されます。
指定されたパーソナライズ(ユーザー・トピック)ファイルからユーザー・プロパティの値を返します。
ユーザー・トピック・ファイルは、IntradocDir
/data/users/profiles/
us
/
username
/
ディレクトリに置かれているHDAファイルです。
パーソナライズ(ユーザー・トピック)ファイルをロードして、utGetValue関数とutLoadResultSet
関数で使用できるようにします。
ユーザー・トピック・ファイルは、IntradocDir
/data/users/profiles/
us
/
username
/
ディレクトリに置かれているHDAファイルです。
コンテンツ・プロファイルに対するユーザーの現在のMy Check InリンクおよびMy Searchリンクに関する情報の取得に使用します。
パーソナライズ(ユーザー・トピック)ファイルで指定されたResultSetをDataBinderにロードします。
ユーザー・トピック・ファイルは、IntradocDir
/data/users/profiles/
us
/
username
/
ディレクトリに置かれているHDAファイルです。
パラメータ
次の2つのパラメータを取ります。
最初のパラメータは、ユーザー・トピックHDAファイルの名前です。
2番目のパラメータは、ユーザー・トピック・ファイルで定義されたResultSetの名前です。
メタデータ・フィールドの値のスタイルを指定します。
次のSPANスタイルは通常、値に使用します。これらは、WC_CONTENT_ORACLE_HOME/shared/config/resources/std_page.htm
リソース・ファイルにあるstd_style_declaration
インクルードで定義されます。
tableEntry
xxsmall
strongHighlight
例
値スタイルを設定します。
<$if isFieldInfoOnly$> <$if valueStyle$> <$fieldValueStyle = valueStyle$> <$else$> <$fieldValueStyle = "tableEntry"$> <$endif$> <$endif$>
Downloadアプレットが使用されるときに、フィールド値にxxsmall
スタイルを使用します。
<$if useDownloadApplet$> <$valueStyle="xxsmall", fieldValue = strTrimWs(inc("download_file_by_ applet_form_content"))$> <$else$> <$fieldValue = strTrimWs(inc("doc_file_get_copy"))$> <$endif$>
現在リビジョンで実行されているアクションを取得します。
この変数はワークフロー・ステップの終了イベント後に設定されるため、通常は次のステップの入力イベントの際に評価されます。
設定可能なアクションは、次のとおりです。
APPROVE
REJECT
CHECKIN
CONVERSION
META_UPDATE
TIMED_UPDATE
RESUBMIT
例
リビジョンが却下されている最中である場合、元の作成者に通知します。
<$if wfAction like "REJECT"$>
<$wfSet("wfJumpName", "notifyAuthor")$>
<$wfSet("wfJumpEntryNotifyOff", "0")$>
<$wfNotify(dDocAuthor, "user")$>
<$endif$>
リビジョンが現在承認中であっても、xDept
のメタデータ値がHRでない場合は、承認が終了して、エラー・ページが表示されます。
<$if wfAction like "APPROVE" and not(xDept like "HR")$>
<$abortToErrorPage("The revision is not in HR.")$>
<$endif$>
イベントをワークフローのコンパニオン・データ内のWorkflowActionHistory
表に挿入します。この関数には、3つのパラメータが必須です。行のその他の値は、計算されるか、ローカル・データから継承されます。
パラメータ
次の3つのパラメータをとります。
最初のパラメータはワークフロー・アクションです。
2番目のパラメータは、アクションに関連付けられたメッセージです。
3番目のパラメータは、現在のワークフロー・ステップのユーザーのカンマ区切りリストです。現在のリストを計算する関数については、wfComputeStepUserList()を参照してください。
現在のステップに定義されている終了条件を取得します。
ワークフロー・ステップのレビューア・リストにユーザー、エイリアスまたはワークフロー・トークンを追加します。この関数はトークン内でのみ使用できます。
ワークフロー内の現在のステップからユーザーのリストを計算します。
コンパニオン・ファイルからローカル状態値を取得します。
コンパニオン・ファイルのキーのローカル状態値を設定します。
現在のステップに関連するステップ名を取得します。
ワークフロー・ステップの終了条件を取得します。
例
IdcHomeDir
/resources/core/templates/workflow_info.htm
テンプレート・ページにある次のコードは、「ワークフロー・ステップ情報」ページでの終了条件の表示に使用します。
<$wfDisplayCondition(dWfName, currentStepName, "wfAdditionalExitCondition")$>
ここで:
dWfName
は、ワークフロー名の内部変数です。
currentStepName
は、ステップ名の内部変数であるdWfName
と同等になるように、前もってテンプレート・ページに設定されます。
wfAdditionalExitCondition
は、終了条件式の内部変数です。標準的な終了条件の出力は、次のようになります。
dSecurityGroup like "Secure"
ワークフロー・ステップを終了します。この関数では、関数のパラメータに従ってワークフロー内の特定のステップにリビジョンを移動させ、親リスト情報をリセットします。ワークフローを完全に終了するには、wfExit(100,100)
または、リビジョンが親ワークフローに戻った後でワークフロー内の最後のステップを確実に通過するパラメータを使用します。
コンパニオン・ファイルから状態値を取得します。
この関数は内部ワークフローのステップタイプを取得し、判読可能なラベルに変換します。たとえば、:C:CA:CE:
は3つの状態、:C:
(コントリビューション)、:CA:
(自動コントリビュートまたは元の作成者ステップ)および:CE:
(リビジョンの編集)を示しています。このIdoc Script関数の適用後、ラベルがAuto Contributor, Edit Revision
になる場合があります。
指定可能な現在の状態は、次のとおりです。
状態 | 説明 |
---|---|
:CA: | 自動コントリビューション・ステップ、またはすべての管理者定義ワークフロー・ステップの前に発生するステップ(元の作成者がドキュメント却下を処理)。 |
:CE: | 現在のリビジョンを編集します。すべての編集が現在のリビジョンに置き換わります。 |
:CN: | 新規リビジョンを作成します。すべての編集によって新規リビジョンが作成されます。 |
:R: | レビューします。ドキュメントの承認または却下が可能です。 |
:C: | コントリビューション。ドキュメントの編集が可能です。 |
ワークフローのドキュメント・ステップの状態には、そのステップに対してtrueであるすべての状態が、複数の値をコロン(:)で区切って(余分のコロンは削除されます)1つのフィールドとして結合されて指定されています。したがって、新規リビジョンを作成するコントリビュータ/レビューアのステップには、状態:R:C:CE:
が指定されます。順序は関係ありませんが、:C:
は、 :CE:
の存在によって推定できる場合であっても、存在している必要があります(ステップがコントリビュータ・ステップであることも含意しています)。値:C:
は現在のワークフロー・ステップの機能を正確に表し、コンテンツ・サーバーは含意のルール(:CE: -> :C:
)を追求しないため、ワークフロー・ステップではコア・コントリビュータ・タイプのアクティビティ(チェックアウトまたはチェックアウトを元に戻すなど)が許可されないという文により、コンテンツ・サーバー・システムは、:C:
は存在しないものと判断します(:CE:
が存在している場合でも)。
現在のアクションの終了後にドキュメントがGENWWWにないかどうかを示します。
このIdoc Script関数がtrueを返した場合、変換プロセスが終了して、コンテンツ・アイテムはGENWWWに存在しなくなります。
このワークフローが現在、特定のワークフロー・イベントに対してすべてのワークフロー通知を抑止している場合、TRUE
を返します。現在のアクションが終了するまで、またはwfSetSuppressNotification
関数を使用して通知が再有効化されるまで、キュー内のワークフローと電子メールへの通知も抑止の対象となります。
通知の抑止は一時的なものです。後続のワークフロー・アクションに対して通知が有効になっていたり、存続が許可されている場合、現在のステップ用に送信されていない通知がすべて送信され、キュー内のワークフローは適宜更新されます。
ドキュメントが、ワークフローに関するかぎり、リリースされるかどうかを示します。ドキュメントがまだGENWWにあるかDONEになっている場合でも、このIdoc Script関数がtrueを返す場合、ワークフローはドキュメントのリリースを妨げません。falseが返される場合、ドキュメントはワークフローからリリースするように許可されるまでリリースされません。このIdoc Script関数はパラメータを取りません。存在している可能性のあるすべてのドキュメント情報のアクティブなリリース状態値を評価します(Idoc Scriptの条件では、#active.dReleaseState
が値E
ではないかどうかを確認します)。
ジャンプ開始通知のオンとオフを切り替えます。
この変数がTRUE
の場合、ジャンプの開始時にレビューアに通知されません。
この変数がFALSE
の場合、ジャンプの開始時にレビューアに通知されます。
ジャンプに入ったときにユーザーに送信される通知電子メールに含まれるメッセージを定義します。
メッセージが指定されていない場合、電子メールのメッセージには電子メール・テンプレートの情報のみが含まれます。
ジャンプ・メッセージには、eval関数を使用して実行する必要のあるIdocスクリプトを含めることができます。次に例を示します。
<$eval(dDocName)$> is ready for your review.
現在のジャンプの名前を取得します。
現在のジャンプの後でワークフローが終了すると同時にリビジョンが戻る親ワークフロー内のステップの名前を返します。
この戻りステップは、リビジョンがジャンプ先であるワークフロー内の最後のステップを適切に完了し、ワークフローを通常に終了した場合のみ、適用されます。したがって、この戻りステップは、リビジョンが別のワークフローにジャンプするときには適用されません。
コンパニオン・ファイルでは、戻りステップはローカル・キーに格納されます。
<step_name>@<workflow_name>.returnStep
条件が満たされた場合にリビジョンがジャンプするステップの名前を取得します。
ターゲット・ステップは、シンボルを使用して(wfCurrentStep(1)
など)、または明示的に(MyStep@MyWorkflow
など)参照できます。ステップ・イベント・スクリプトではシンボルによる参照を使用することを強くお薦めします。こうすることで、スクリプトの変更と再使用が容易になります。
この関数は、ワークフローの既存ステップまたはワークフローの終了条件に関する情報の取得に使用します。
この関数はIntradocDir
/data/workflow/design/
workflowname
.hda
ファイルをロードして、ワークフローに関する設計情報が含まれているResultSetを返します。The workflowname
の値はdWfName
変数の値に対応しており、通常はワークフロー・ページ、電子メール・テンプレート、ジャンプ・スクリプトで使用できます。
ワークフローの電子メール通知の件名行を定義します。
件名行が指定されていない場合、電子メールでは、通知のタイプ(レビュー、却下またはワークフロー開始)に応じたデフォルトの件名が使用されます。
件名文字列にIdocスクリプトをインクルードすることができます。
ワークフローの電子メール通知に含まれるメッセージを定義します。
メッセージが指定されていない場合、電子メールでは、通知のタイプ(レビュー、却下またはワークフロー開始)に応じたデフォルトのメッセージが使用されます。
メッセージ文字列にIdocスクリプトをインクルードすることができます。
指定されたユーザー、エイリアスまたはワークフロー・トークンに電子メール・メッセージを送信します。
変数wfMailSubjectおよびwfMessageを設定して、通知メッセージをカスタマイズすることができます。
パラメータ
2つのパラメータと、3番目として1つのオプションのパラメータを取ります。
最初のパラメータは、通知の対象となるユーザー名、エイリアスまたはトークンを指定します。
2番目のパラメータは、タイプとしてユーザー、エイリアスまたはトークンのいずれかを指定します。
オプションの3番目のパラメータは、メッセージの作成に使用する電子メール・テンプレートの名前を指定します。(テンプレートの定義については、IdcHomeDir
/resources/core/templates/templates.hda
ファイルを参照してください。)
これまでにリビジョンがアクセスしたワークフロー・ステップのリスト(親リスト)を取得します。これにより、ジャンプが発生した場所と、エラー、却下または終了時のステップの巻き戻し方法をシステムに通知します。
この変数は条件文の作成に使用できますが、ハードコード化したり変更したりしないようにしてください。
エラー、却下または終了によって親リストが巻き戻された場合はステップがリストから削除されるため、親リストは完全なステップ履歴を反映していないことがあります。
親リストはグローバルであり、ステップ名でローカライズされることはありません。
親リスト内のステップは、最新のステップを最初にして表示されます。ステップはシャープ記号(#)で区切られています。ステップ名の前にあるアスタリスク(*)は、ジャンプ・ステップであることを示します。次に例を示します。
Step_B@Workflow_2#*Step_A@Workflow_2#Step_1@Workflow_1
現在ワークフローによってロックされているドキュメントについて、ワークフローにすべての未処理のドキュメント・リビジョンをリリースさせます。このようにリリースされたリビジョンは索引作成エンジンによって自由に評価できるため、リリースされたリビジョンの1つを全文索引作成することもできます。
この関数は、ワークフロー・イベント全体を実行するワークフロー・ステップをIdoc Scriptで評価するというコンテキストでのみ使用できます。ドキュメントがワークフローによってすでにリリースされている場合、この関数は効果を発揮しません。この関数でドキュメントがワークフローを終了することはありません。
ドキュメントに対して作成された新規リビジョンはすべて、「ロックされた」(リリース不可の)状態に戻ります。つまり、この関数は現在のリビジョンをリリースしますが、新規に作成されるリビジョンには適用されません。この関数はパラメータを取らず、結果を返すことはありません。これは、現在アクティブなワークフロー・ドキュメントに作用します。
コンパニオン・ファイルに特定の値のキーを設定します。
ワークフロー通知が現在のアクション(チェックイン、更新、再送信など)の実行時に送信されるかどうかを示す内部フラグを設定します。
この抑止は、電子メールおよびキュー内のワークフローの更新に適用されます。この関数のもう1つの使用法として、ドキュメントの変換が終了するまでワークフロー通知を抑止することができます。これにより、ドキュメントの変換終了時にドキュメントが自動コントリビュータ・ワークフローのステップを越えないようにすることができます。
リビジョンを現在のワークフローの最初のステップに送信します。この変数は大文字のWで始まることに注意してください。
ワークフローの現在のコンテンツ・アイテム・リビジョンのメタデータ値を定義します。
wfUpdateMetaData
関数は、カスタム・メタデータ・フィールドの更新のみに使用できます。この関数を使用して、標準の、事前定義フィールドを更新することはできません。
XMLで使用するように文字列をフォーマット化します。
この関数は、英数字以外の文字を、文字を表す適切なXMLシーケンスに置換します。たとえば、アンパサンド"&"文字は"&"シーケンスに置換されます。
文字列の中に二重引用符文字を使用する場合、バックスラッシュ"\"を二重引用符の前に付けてそれを文字として表示する必要があります。エスケープ・フラグとしてバックスラッシュを使用しない場合、二重引用符は文字列の終わりとして解釈されます。