次に、Oracle Data Relationship Managementオブジェクト、およびそのメソッドとプロパティを説明します。
SysObject
Sysと呼ばれる1つのSysObjectは、自動的に作成されます。このオブジェクトはすべてのコンテキストで使用可能で、汎用的な関数およびData Relationship Managementアプリケーションの情報を提供します。このオブジェクトにプロパティはありません。
表12-9 SysObjectメソッド
| 名前 | 説明 |
|---|---|
|
FormattedDate (value, formatString) |
式のシステム・ルールに従って日付をフォーマットします。古い式プロパティに正確に一致させる下位互換に便利です。
|
|
GetNextID(key) |
特定の文字列キー値について次に使用可能な整数IDを返します。 |
|
GetPropDef(abbrev) |
指定されたプロパティ名のPropDefObjectを戻します。名前は、完全修飾名であることが必要です。 |
|
GetRequestByID(int) |
ワークフロー要求をID別に返します。 |
|
GetSysPrefValue(abbrev) |
指定されたシステム・プリファレンス(HierNodeSeparatorなど)の値を戻します |
|
InRange(dataType, input, min, max, minExclusive, maxExclusive) |
式関数InRangeに対応します。必須パラメータはdataType、inputおよびminです。 |
|
IsNodeAbove(ancestor, child) |
階層内で祖先が子より上の場合にTrueを戻します。パラメータがLocalNodeObjectsではない場合、または同じ階層にない場合にFalseを戻します。 |
|
IsNodeBelow(descendant, parent) |
階層内で子孫が親より下の場合にTrueを戻します。パラメータがLocalNodeObjectsではない場合、または同じ階層にない場合にFalseを戻します。 |
|
RunFormula(node, propDef, formulaString) |
Data Relationship Managementの式を実行し、文字列の結果を戻します
|
PropDefObject
このオブジェクトにメソッドはありません。
表12-10 PropDefObjectプロパティ
| 名前 | 説明 |
|---|---|
|
Abbrev |
プロパティ定義名(完全修飾ネームスペースなど) |
|
Cascade |
プロパティ値を継承する場合はTrue |
|
ColumnWidth |
デフォルトのエクスポート列の幅 |
|
DataType |
DataType.StringなどのDataType列挙値(列挙定数を参照) |
|
Descr |
説明 |
|
DefaultValue |
プロパティ定義のデフォルト値。タイプはプロパティ定義のデータ型によって異なります。 |
|
EditorLabel |
ラベル |
|
Global |
プロパティがグローバル・ノード・プロパティの場合はTrue |
|
Hidden |
プロパティをプロパティ・グリッドから非表示にする場合はTrue |
|
ID |
ID |
|
Level |
PropLevel.NodeなどのPropLevel列挙値(列挙定数を参照) |
|
List |
propを値のリストから選択できる場合はTrue |
|
ListValues |
ユーザーが選択可能な値の配列 |
|
LookupValues |
参照プロパティのキーと値のペアを検索します。この配列にあるオブジェクトのキーと値のプロパティを使用します。 |
|
MaxValue |
最大値 |
|
MinValue |
最小値 |
|
Namespace |
プロパティ定義のネームスペース |
|
PropType |
PropType.DefinedなどのPropType列挙値(列挙定数を参照) |
|
PropClass |
派生クラス(式またはスクリプト) |
|
ReadOnly |
プロパティが読取り専用(コア統計プロパティなど)の場合はTrue |
VersionObject
表12-11 VersionObjectプロパティ
| 名前 | 説明 |
|---|---|
|
Abbrev |
名前 |
|
Descr |
説明 |
|
HierCount |
階層の数 |
|
ID |
ID |
|
NodeCount |
ノードの数 |
表12-12 VersionObjectメソッド
| 名前 | 説明 |
|---|---|
|
GetHierarchies() |
現在のユーザーが使用可能なバージョンのすべての階層の配列を取得します |
|
GetGlobalNodes() |
バージョンのすべてのグローバル・ノード(NodeObjects)の配列を取得します |
|
GetOrphans() |
バージョンのすべての孤立(NodeObjects)の配列を取得します |
|
HierByAbbrev(abbrev) |
HierarchyObjectを名前ごとに取得します |
|
HierByID(id) |
HierarchyObjectをIDごとに取得します |
|
NodeByAbbrev(abbrev) |
NodeObjectを名前ごとに取得します |
|
NodeByID(id) |
NodeObjectをIDごとに取得します |
|
NodeExists(abbrev) |
指定された名前のグローバル・ノードが存在する場合はTrueを戻します |
|
Prop(abbrev) |
バージョンの指定されたプロパティのNodePropObjectを取得します |
|
PropValue(abbrev) |
バージョンの指定されたプロパティの値を取得します。戻り値の型はプロパティ定義のデータ型によって異なります。 |
HierarchyObject
表12-13 HierarchyObjectプロパティ
| 名前 | 説明 |
|---|---|
|
Abbrev |
名前 |
|
Descr |
説明 |
|
HierarchyUrl |
階層URL |
|
ID |
ID |
|
NodeCount |
階層のノード数 |
|
SharedNodesEnabled |
共有ノードが有効な場合はTrue |
|
TopNode |
LocalNodeObjectの最上位ノード |
|
Version |
VersionObject |
|
VersionAbbrev |
バージョンの名前 |
|
VersionID |
バージョンのID |
表12-14 HierarchyObjectメソッド
| 名前 | 説明 |
|---|---|
|
NodeByAbbrev(abbrev) |
NodeObjectを名前ごとに取得します |
|
NodeByID(id) |
NodeObjectをIDごとに取得します |
|
NodeExists(abbrev) |
指定された名前のローカル・ノードが存在する場合はTrueを戻します |
|
Prop(abbrev) |
バージョンの指定されたプロパティのNodePropObjectを取得します |
|
PropValue(abbrev) |
バージョンの指定されたプロパティの値を取得します。戻り値の型はプロパティ定義のデータ型によって異なります。 |
共通のノード・プロパティおよびメソッド
NodeObjectおよびLocalNodeObjectの2つのオブジェクトではプロトタイプ・チェーンは共有されていませんが、一部のプロパティおよびメソッドは、この両方のオブジェクトに共通です。
コンテキストがグローバルであるかローカルであるかによって値が異なるあらゆるケースで、そのコンテキストに適切な値が戻されます。たとえば、NodeObjectのGetChildren()を呼び出すと、結果のArrayにはNodeObjectが含まれます。LocalNodeObjectで同じ呼出しを行うと、結果の配列にはLocalNodeObjectが含まれます。
表12-15 NodeObjectおよびLocalNodeObjectの共通プロパティ
| 名前 | 説明 |
|---|---|
|
Abbrev |
Core.Abbrev |
|
AddedBy |
Core.AddedBy |
|
AddedOn |
Core.AddedOn |
|
Changed |
Core.Changed |
|
ChangedBy |
Core.ChangedBy |
|
ChangedOn |
Core.ChangedOn |
|
ChildNodeCount |
子ノードの数 |
|
Descr |
Core.Descr |
|
DomainAbbrev |
Core.DomainAbbrev |
|
DomainNodeAbbrev |
Core.DomainNodeAbbrev |
|
ID |
Core.ID |
|
Inactive |
Core.Inactive |
|
IsPrimary |
ノードが共有ノードのプライマリである場合はTrue; ノードが共有されていない場合やプライマリでない場合はFalse |
|
IsShared |
ノードが共有ノードの場合はTrue |
|
Leaf |
Core.Leaf |
|
NodeApproved |
Core.NodeApproved |
|
Version |
ノードの所有者はVersionObject |
|
VersionAbbrev |
ノードのバージョン名 |
|
VersionID |
ノードのバージョンID |
表12-16 NodeObjectおよびLocalNodeObjectの共通メソッド
| 名前 | 説明 |
|---|---|
|
GetChildren(sorted) |
このノードの直接の子のArrayを取得し、オプションでソート順にできます。sortedのデフォルトはFalseです。 |
|
GetDescendants(inclusive, sorted) |
このノードの子孫のArrayを取得し、オプションでこのノードを含めること/ソート順にすることが可能です。inclusiveのデフォルトはTrueです。sortedのデフォルトはFalseです。 |
|
NodeByAbbrev(abbrev) |
NodeObjectを名前ごとに取得します |
|
NodeByID(id) |
NodeObjectをIDごとに取得します |
|
NodeExists(abbrev) |
指定された名前のグローバル・ノードが存在する場合はTrueを戻します |
|
Prop(abbrev) |
バージョンの指定されたプロパティのNodePropObjectを取得します |
|
PropValue(abbrev) |
バージョンの指定されたプロパティの値を取得します。戻り値の型はプロパティ定義のデータ型によって異なります。 |
LocalNodeObject
階層内の他のノードの検索には、様々なxxxWith関数を使用することをお薦めします。たとえば、ChildrenWithは、GetChildren()を呼び出して結果を反復するよりはるかに高速で実行されます。同様に、GetReferenceInHierも、GetReferences()を呼び出して結果を反復するより、はるかに高速で簡単に使用できます。
表12-17 LocalNodeObjectプロパティ
| 名前 | 説明 |
|---|---|
|
GlobalNode |
現在のノードのグローバルNodeObject |
|
Hier |
ノードが存在する階層のHierarchyObject |
|
HierAbbrev |
Core.HierAbbrev |
|
HierID |
Core.HierID |
|
Level |
階層におけるノードのレベルを表す数値 |
|
MissingPrimary |
プライマリ・ノードが見つからない場合はTrue |
|
NodeUrl |
ノードURL |
|
Parent |
このノードの親ノードのLocalNodeObject。階層の最上位ノードにはNullが戻されます。 |
|
ParentNodeAbbrev |
親ノードの名前 |
|
Primary |
この共有ノードのプライマリ・ノード。プライマリがこの階層に存在しない場合は、それが存在する最初の階層のプライマリが戻されます。プライマリが存在する階層のリストが必要な場合は、戻されたプライマリ・ノードでGetReferences()を呼び出します。共有ノードまたはプライマリが見つからない場合は、nullが戻されます。 |
|
PrimaryNotInHier |
プライマリ・ノードは存在するが、この階層ではない場合はTrue |
表12-18 LocalNodeObjectメソッド
| 名前 | 説明 |
|---|---|
|
AncestorsWith(func, maxResults, searchFromTop, inclusive) |
指定された関数を満たすノードの祖先チェーンを検索します。これは、祖先を検索する最速の方法です。LocalNodeObjectの結果のArrayが戻されます。
|
|
ChildrenWith(func, maxResults) |
指定された関数を満たすノードの子リストを検索します。これは、子を検索する最速の方法です。LocalNodeObjectの結果のArrayが戻されます。
|
|
DescendantsWith(func, maxResults, inclusive, depthFirst) |
指定された関数を満たすノードの子孫チェーンを検索します。これは、子孫を検索する最速の方法で、LocalNodeObjectの結果のArrayが戻されます。
|
|
GetAncestorEnumerator() |
祖先ノードを列挙するNodeEnumeratorObjectを取得します |
|
GetAncestors(inclusive) |
LocalNodeObjectの祖先のArrayを取得します |
|
GetChildEnumerator(sorted) |
子ノードを列挙するNodeEnumeratorObjectを取得します。sortedがTrueの場合、子はソートされた順序で表示されます。 |
|
GetDescendantEnumerator() |
子孫ノードを列挙するNodeEnumeratorObjectを取得します |
|
GetImplicitly SharedDescendants(inclusive) |
この共有ノードが関連するプライマリ・ノードの子ノードを取得します |
|
GetInvertedLevel() |
式InvertedLevel関数と等価です |
|
GetReferences() |
このノード(このノードが表示されるすべての階層)の参照先であるLocalNodeObjectsのArrayを取得します |
|
GetReferenceInHier(hierAbbrev) |
指定された階層で、このノードへの参照を取得します。階層にアクセスできない場合や、階層にこのノードが存在しない場合、結果はnullになります。 |
|
NextSibling() |
ソート順でこのノードの次の兄弟を取得します |
|
PreviousSibling() |
ソート順でこのノードの前の兄弟を取得します |
|
SiblingsWith(func, maxResults, inclusive) |
指定された関数を満たすノードの兄弟を検索します。LocalNodeObjectの結果のArrayが戻されます。
|
NodePropObject
表12-19 NodePropObjectプロパティ
| 名前 | 説明 |
|---|---|
|
Abbrev |
プロパティ定義の名前 |
|
ControllingHierarchy |
このバージョンにおけるプロパティ定義の制御階層のHierarchyObject。プロパティがグローバル・ノード・プロパティではない場合、制御階層がない場合、または制御階層が見つからない場合、戻り値はnullになります。 |
|
Locked |
値がロックされている場合はTrue |
|
Origin |
PropOrigin.OverriddenなどのPropOrigin列挙値(列挙定数を参照) |
|
Owner |
この値が関連付けられているオブジェクト(VersionObject、HierarchyObject、NodeObjectまたはLocalNodeObject) |
|
PropType |
PropType.DefinedなどのPropType列挙値(列挙定数を参照) |
|
StringValue |
このプロパティのraw文字列値。DerivedまたはRWDerivedプロパティの場合は、プロパティ定義のデフォルト値または上書きされた値になります。 |
|
Value |
このプロパティの解釈された値(たとえば、DataType.FloatおよびDataType.Integerの場合、この値は数値オブジェクトになります)。すべてのDataTypesに、必ずしも文字列以外の表現があるとはかぎりません。 |
表12-20 NodePropObjectメソッド
| 名前 | 説明 |
|---|---|
|
GetPropDef() |
ノード・プロパティのPropDefObjectを取得します |
RangeListObject
RangeListObjectは値のRangeListを表し、手動で文字列を解析することなく、RangeListプロパティの検査に使用できます。適切なデータ型の派生プロパティから戻されるよう、新しいRangeListObjectを構成することも可能です。
コンストラクタの例
var x = new RangeListObject();
var y = new RangeListObject("1-10,20-25");
var z = new RangeListObject([{start:1, end:10},{start:20, end:25}]);
表12-21 RangeListObjectコンストラクタ・パラメータ
| パラメータ | オプション | 説明 |
|---|---|---|
|
ranges |
True |
初期化の範囲の値。このパラメータはオプションです。2つのフォーマットを使用できます:
|
表12-22 RangeListObjectプロパティ
| 名前 | 説明 |
|---|---|
|
Ranges |
オブジェクトの配列。各オブジェクトには2つのプロパティがあります:
このプロパティは読取り専用です。範囲を変更するには、次のメソッドを使用します。 |
表12-23 RangeListObjectメソッド
| 名前 | 説明 |
|---|---|
|
AddRange(start, end) |
範囲リストに新しい範囲を追加します。これにより、既存の範囲エントリを拡張するか、新たに作成します。リストに1つの数字を追加するには、開始と終了の両方のパラメータにその数字使用します。必要な場合は、両方のパラメータが整数に強制されます。 |
|
Contains(value) |
値が範囲リスト内にある場合はTrue、それ以外の場合はFalseが戻されます。 必要な場合は、値が整数に強制されます。 |
|
IsSupersetOf(range) |
現在のRangeListObjectが、指定されたRangeListObjectのスーパーセットである場合はTrueが戻されます。別のタイプのオブジェクトを渡すとエラーが発生します。 |
|
RemoveRange(start, end) |
リストから範囲を除去します。この除去により、既存の範囲エントリが2つに分割されるか、エントリ全体が除去されます。リストから1つの数字を除去するには、開始と終了の両方のパラメータにその数字を使用します。必要な場合は、両方のパラメータが整数に強制されます。 |
NodeEnumeratorObject
NodeEnumeratorObjectを使用すると、ノードのリストをより効率的に操作できます。一度にリスト全体をすべて作成するかわりに、列挙子が必要に応じて一度に1つのノードを取得します。リストの中ほどで探していたものが見つかった場合は、列挙子を中断できます。ノード・オブジェクトのArrayを戻すプロパティおよびメソッドは、配列の最後のアイテムにアクセスするかどうかに関係なく、配列全体をすぐに作成する必要があります。
列挙子は、現在の値をnullとして開始されます。列挙子をリストの最初のノードに進めるには、MoveNext()を呼び出す必要があります。
注:
検索するノードが、可能性のあるすべての一致の中のいくつかのみで、リストを反復するのが一度のみの場合は、AncestorsWithまたはSiblingsWithメソッドなど、Withメソッドを使用することをお薦めします。祖先ノードのリストを何度も繰り返す必要がある場合や、祖先の大部分またはすべてが必要であることがわかっている場合は、列挙子の方が高速です。
表12-24 NodeEnumeratorObjectメソッド
| 名前 | 説明 |
|---|---|
|
GetCurrent() |
現在のノード(コンテキストにより、NodeObjectまたはLocalNodeObject)。 |
|
MoveNext() |
列挙子を次のノードに進めます。列挙するノードが存在しない場合はFalseが戻されます。 |
ValidationObject
検証スクリプト
検証スクリプトは「success」という名前のプロパティを含むJavaScriptオブジェクトを戻します。スクリプトがブール値または非ブール・オブジェクト(数値、文字列など)を戻す場合、その値は標準のJavaScript変換ルールを使用してブールに変換され、successプロパティに割り当てられます。スクリプトはparametersという名前のプロパティに、オプションで、値のJavaScript配列を戻すことができます。配列値は、文字列置換を使用して、検証のエラー・メッセージに置き換えられます。
ブール値(TrueまたはFalse)を戻すことができます。Trueを戻す場合、検証は成功です; それ以外の場合は失敗です。値を戻さない場合は、Falseが戻されたのと同じであるとみなされます。
数値や文字列など、ブール以外のオブジェクトを戻すと、ブールに変換されてから戻されます。標準のJavaScript変換が適用されます。ゼロに等しい数値、空の文字列、nullまたは未定義のオブジェクトはfalseと解釈されます。その他のすべての値はtrueです。
「success」という名前のプロパティを含む複合オブジェクトを戻す場合、そのsuccessプロパティはブールに変換され、検証の戻り値として使用されます。「parameters」という名前のプロパティに、オプションで、値の配列を戻すことができます。これはJavaScript配列オブジェクトで、移入されてパラメータで示されるエラー・メッセージに使用される必要があります。パラメータは、文字列置換を使用して、検証のエラー・メッセージに置き換えられます。エラー・メッセージのプレースホルダに対応する、適切な数の値を戻す必要があります。余分なパラメータを戻した場合は無視されます。十分な数のパラメータを戻さないと、不足しているパラメータは空の文字列とみなされます。
RequestObject
RequestObjectは、要求ヘッダーとアイテムを含むガバナンス要求を表します。Itemsプロパティは、要求に追加された要求アイテムのリストを表します。主要な属性は、すべて関連スクリプト・オブジェクトを介してアクセスできるその階層とノードを含む要求のターゲット・バージョンであるVersionプロパティです。
RequestItemObject
RequestItemObjectは、現在のタスクや更新されるノードに関する情報など、ガバナンス要求の個々の要求アイテムを、そのアイテムの詳細(プロパティ値)とともに表します。Requestプロパティは、ヘッダー・プロパティとその他のアイテムなど、アイテムの要求オブジェクト全体へのアクセスを提供します。
NodeNamePendingInRequestメソッドは、ターゲット・バージョンに対する他の処理中の要求との潜在的なノード名の競合を識別するために使用され、別の保留中要求のアイテムに同じノード名の追加アイテムが含まれている場合にTrueを戻します。
表12-27 RequestItemObjectプロパティ
| 名前 | 説明 |
|---|---|
|
ItemID |
アイテムID |
|
RequestID |
要求ID |
|
Request |
アイテムが属する要求オブジェクト |
|
NodeName |
更新されるノードのCore.Abbrev |
|
説明 |
更新されるノードのCore.Descr |
|
HierarchyName |
更新されるノードの階層 |
|
ParentName |
更新されるノードのCore.Parent |
|
TaskName |
要求アイテムのワークフロー・タスク名 |
|
TaskAction |
WorkflowAction.AddLimbなどのWorkflowAction列挙値(列挙定数を参照) |
|
TaskDomain |
ワークフロー・タスクのドメイン名(存在する場合) |
|
ItemDetails |
要求アイテムのRequestItemDetailObjectのリスト |
表12-28 RequestItemObjectメソッド
| 名前 | 説明 |
|---|---|
|
NodeNamePendingInRequest(name) |
テストする特定のノード名のパラメータを受け入れます。バージョンに対する現在の要求以外の処理中の要求に指定された名前のAddLimb/Leafアイテムが含まれている場合にTrueを戻します |
RequestItemDetailObject
RequestItemDetailObjectは、単一のプロパティ値に対応するガバナンス要求の個々の要求アイテム詳細を表します。
表12-29 RequestItemDetailObjectプロパティ
| 名前 | 説明 |
|---|---|
|
CalcValue |
プロパティの計算された値 |
|
HasCalcValue |
値が計算されている場合にTrueを戻します |
|
Modified |
要求で値が変更された場合はTrueを戻します |
|
PropertyName |
プロパティの名前 |
|
Value |
プロパティの値 |