この付録は、Oracle BAM DataObjectOperationsおよびDataObjectDefinition Webサービスで提供される操作に関するリファレンスです。Oracle BAM Webサービスの詳細は、第56章「Oracle BAM Webサービスの使用」を参照してください。
項目は次のとおりです。
DataObjectOperations10131 Webサービスでは、次の操作がサポートされています。
バッチでは、データ・オブジェクトに対してバッチ操作が実行されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
xmlPayload (xsd:string)
実行するすべての操作に対するバッチ・ペイロードが含まれています。例:
<payload> <_Employees operation="insert"> <_Salesperson>Tim Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees> <_Employees operation="update" keys="_Sales_Number"> <_Salesperson>Tim Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees> </payload>
「削除」では、データ・オブジェクトから行が削除されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
_Sales_Number,_Sales_Area
xmlPayload (xsd:string)
データ・オブジェクトの行を削除するwhere
句のペイロード゛。例:
<_Employees> <_Sales_Number>12345</_Sales_Number> </_Employees>
「挿入」では、データ・オブジェクトが追加されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
xmlPayload (xsd:string)
ペイロードは各データ・オブジェクトに固有です。
<_Employees> <_Salesperson>Time Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees>
「更新」操作では、既存のデータがデータ・オブジェクト内の新規データで更新されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
_Sales_Number,_Sales_Area
xmlPayload (xsd:string)
データ・オブジェクトの行を更新するUPDATE文およびWHERE句のペイロード。例:
<_Employees> <_Sales_Area>Asia Pacific</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees>
「アップサート」操作では、既存のデータがデータ・オブジェクト内の既存の行にある新規データで更新されます。行が存在しない場合は、新規行が作成されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
_Sales_Number,_Sales_Area
xmlPayload (xsd:string)
データ・オブジェクトの行をアップサートするINSERTまたはUPDATE文、およびWHERE句のペイロード。例:
<_Employees> <_Salesperson>Time Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees>
DataObjectOperations10131、DataObjectOperationsByNameおよびDataObjectOperationsByIDのWebサービスでは、次の操作がサポートされています。
「削除」では、データ・オブジェクトから行が削除されます。
リクエスト・メッセージには、次のパラメータが含まれています。
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
Sales Number, Sales Area
xmlPayload (xsd:string)
データ・オブジェクトの行を削除するWHERE句のペイロード゛。例:
<DataObject Name="Employees" Path="/Samples"> <Contents> <Row> <Column Name="Salesperson" Value="Greg Guan" /> </Row> </Contents> </DataObject>
取得では、XMLペイロードの仕様ごとにデータ・オブジェクトから詳細がフェッチされます。
取得はDataObjectOperationsByName Webサービスでのみ使用できます。
リクエスト・メッセージには、次のパラメータが含まれています。
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
Sales Number, Sales Area
xmlPayload (xsd:string)
ペイロードによって、データ・オブジェクトからの取得内容が指定されます。
DataObjectOperationsByName Webサービスの場合、ペイロードには、次の例に示すようにデータ・オブジェクト名が指定されます。
<DataObject Name="Employees" Path="/Samples"> <Contents> <Row> <Column Name="Salesperson" Value="Greg Masters"/> </Row> </Contents> </DataObject>
「挿入」では、データ・オブジェクトが追加されます。
リクエスト・メッセージには、次のパラメータが含まれています。
xmlPayload (xsd:string)
ペイロードは各データ・オブジェクトに固有です。
<DataObject Name="Employees" Path="/Samples"> <Contents> <Row> <Column Name="Salesperson" Value="Greg Guan" /> <Column Name="Sales Area" Value="Northeast" /> <column Name="Sales Number" Value="5671" /> </Row> </Contents> </DataObject>
「更新」操作では、既存のデータがデータ・オブジェクト内の新規データで更新されます。
リクエスト・メッセージには、次のパラメータが含まれています。
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
Sales Number, Sales Area
xmlPayload (xsd:string)
データ・オブジェクトの行を更新するUPDATE文およびWHERE句のペイロード。例:
<DataObject Name="Employees" Path="/Samples"> <Contents> <Row> <Column Name="Salesperson" Value="Greg Guan" /> </Row> </Contents> </DataObject>
「アップサート」操作では、既存のデータがデータ・オブジェクト内の既存の行にある新規データで更新されます。行が存在しない場合は、新規行が作成されます。
リクエスト・メッセージには、次のパラメータが含まれています。
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
Sales Number, Sales Area
xmlPayload (xsd:string)
データ・オブジェクトの行をアップサートするINSERTまたはUPDATE文、およびWHERE句のペイロード。例:
<DataObject Name="Employees" Path="/Samples"> <Contents> <Row> <Column Name="Salesperson" Value="Greg Guan" /> <Column Name="Sales Area" Value="Northeast" /> <column Name="Sales Number" Value="5671" /> </Row> </Contents> </DataObject>
DataObjectOperations10131、DataObjectOperationsByNameおよびDataObjectOperationsByIDのWebサービスでは、次の操作がサポートされています。
バッチでは、データ・オブジェクトに対してバッチ操作が実行されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
xmlPayload (xsd:string)
実行するすべての操作に対するバッチ・ペイロードが含まれています。例:
<payload> <_Employees operation="insert"> <_Salesperson>Tim Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees> <_Employees operation="update" keys="_Sales_Number"> <_Salesperson>Tim Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees> </payload>
「削除」では、データ・オブジェクトから行が削除されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクト名とパスはペイロードに含まれているため、このパラメータはDataObjectOperationsByName Webサービスでは不要です。
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
_Sales_Number,_Sales_Area
xmlPayload (xsd:string)
データ・オブジェクトの行を削除するWHERE句のペイロード゛。例:
<_Employees> <_Sales_Number>12345</_Sales_Number> </_Employees>
「挿入」では、データ・オブジェクトが追加されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
xmlPayload (xsd:string)
ペイロードは各データ・オブジェクトに固有です。
DataObjectOperationsByName Webサービスの場合、ペイロードには、次の例に示すようにデータ・オブジェクト名が指定されます。
<_Employees> <_Salesperson>Time Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees>
「更新」操作では、既存のデータがデータ・オブジェクト内の新規データで更新されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
_Sales_Number,_Sales_Area
xmlPayload (xsd:string)
データ・オブジェクトの行を更新するUPDATE文およびWHERE句のペイロード。例:
<_Employees> <_Sales_Area>Asia Pacific</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees>
「アップサート」操作では、既存のデータがデータ・オブジェクト内の既存の行にある新規データで更新されます。行が存在しない場合は、新規行が作成されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObject (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
keysCSV (xsd:string)
キーとして使用する必要があるカンマ区切りの列ID。例:
_Sales_Number,_Sales_Area
xmlPayload (xsd:string)
データ・オブジェクトの行をアップサートするINSERTまたはUPDATE文、およびWHERE句のペイロード。例:
<_Employees> <_Salesperson>Time Bray</_Salesperson> <_Sales_Area>EMEA</_Sales_Area> <_Sales_Number>12345</_Sales_Number> </_Employees>
DataObjectDefinition Webサービスでは、次の操作がサポートされています。
「作成」では、新しいデータ・オブジェクトが作成されます。コラム要素を指定することで、通常のフィールドの他に、例に示すような計算フィールドと参照フィールドを作成できます。
リクエスト・メッセージには、次のパラメータが含まれています。
xmlPayload (xsd:string)
データ・オブジェクトを作成するためのペイロードが含まれています。
表E-1 xmlPayload要素の説明と有効値
要素 | 説明と値 |
---|---|
/DataObject/@External |
0(ゼロ)は、データ・オブジェクトが外部データ・ソースによるものでないことを示します(デフォルト)。 1は、データ・オブジェクトが外部データ・ソースによるものであることを示します。 |
/DataObject/@Name |
作成するデータ・オブジェクトの名前(ディレクトリ・パスは含まれていません)。 |
/DataObject/@Path |
データ・オブジェクトが作成されるディレクトリ・パス。 |
/DataObject/@Version |
データ・オブジェクトのバージョンは、0(デフォルト)から14の範囲です。 |
/DataObject/@TipText |
作成するデータ・オブジェクトの説明。 |
/DataObject/Layout/Column/@Name |
データ・オブジェクトの列(フィールド)の名前。 |
/DataObject/Layout/Column/@Type |
列タイプでは、次の値が有効です。自動増加整数、ブール値、計算値、CLOB、日時、浮動小数点、iterID、整数、参照、文字列、タイムスタンプ。 |
/DataObject/Layout/Column/@Nullable |
1(デフォルト)は、列でNULL値がサポートされることを示します。 0(ゼロ)は、列でNULL値がサポートされないことを示します。 |
/DataObject/Layout/Column/@Public |
1(デフォルト)は、列がパブリックであることを示します。 0(ゼロ)は、列がパブリックでないことを示します。 |
/DataObject/Layout/Column/@MaxSize |
文字列型の列の場合は、この属性によって、文字列の最大許容サイズが指定されます。 デフォルト値は30です。 |
/DataObject/Layout/Column/@Precision |
小数型の列の場合は、この属性によって、小数型の値の精度が指定されます。 |
/DataObject/Layout/Column/@Scale |
小数型の列の場合は、この属性によって、小数型の値のスケールが指定されます。 |
/DataObject/Layout/Column/@TipText |
列の説明。 |
例E-1 通常列を使用してデータ・オブジェクトを作成するためのxmlPayload
<DataObject Version="14" Name="Employees3" ID="_Employees3" Path="/Samples" External="0"> <Layout> <Column Name="Salesperson" ID="_Salesperson" Type="string" MaxSize="30" Nullable="1" Public="1" /> <Column Name="Sales Number" ID="_Sales_Number" Type="decimal" Nullable="1" Public="1" /> <Column Name="Timestamp" ID="_Timestamp" Type="timestamp" Nullable="0" Public="1" /> <Indexes /> </Layout> </DataObject>
例E-2 参照フィールドを使用してデータ・オブジェクトを作成するためのxmlPayload
<DataObject Version="14" Name="LookupDO" ID="_LookupDO" Path="/Samples"> <Layout> <Description><![CDATA[Lookup]]></Description> <Column Name="Name" ID="_Name" Type="string" MaxSize="100" Nullable="1" Public="1" /> <Column Name="ID" ID="_ID" Type="integer" Nullable="1" Public="1" /> <Column Name="Sales Area" ID="_Sales_Area" Type="lookup"> <Lookup> <DataObject> <ID>_Employees</ID> <Path>/Samples</Path> </DataObject> <LookupFieldID>_Sales_Area</LookupFieldID> <MatchFields> <KeyPair> <PrimaryKeyID>_Sales_Number</PrimaryKeyID> <ForeignKeyID>_ID</ForeignKeyID> </KeyPair> </MatchFields> </Lookup> </Column> <Indexes /> </Layout> </DataObject>
「作成」操作用のXMLペイロードを構成するときに、データ・オブジェクトのバージョンが12未満の場合は、PrimaryKeyIDのかわりにPrimaryKey、ForeignKeyIDのかわりにForeignKey、LookupFieldIDのかわりにLookupFieldをそれぞれ使用し、これらのフィールドにはIDのかわりに名前の値を指定してください。
例E-3 計算フィールドを使用してデータ・オブジェクトを作成するためのxmlPayload
<DataObject Version="14" Name="CalculatedDO" ID="_CalculatedDO" Path="/Samples"> <Layout> <Description><![CDATA[Calculated Column]]></Description> <Column Name="Name" ID="_Name" Type="string" MaxSize="100" Nullable="1" Public="1" /> <Column Name="Address" ID="_Address" Type="string" MaxSize="100" Nullable="1" Public="1" /> <Column Name="Salary" ID="_Salary" Type="decimal" Scale="10" Nullable="1" Public="1" /> <Column Name="Income Tax" ID="_Income_Tax" Type="calculated" CalculatedExpression="<expression type="MathExpression" ><operation><left><type>FieldID</type><ivalue> _Salary</ivalue></left><operator>*</operator><right> <type>DECIMAL</type><ivalue>0.3</ivalue></right>< /operation></expression>" ExpressionUserText="(Salary * 0.3)" /> <Indexes /> </Layout> </DataObject>
「削除」では、データ・オブジェクトの定義とその内容が削除されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObjectFullName (xsd:string)
削除するデータ・オブジェクトの完全な相対パスと名前。例:
/Samples/Employees
取得では、既存のデータ・オブジェクトの定義が取得されます。
リクエスト・メッセージには、次のパラメータが含まれています。
dataObjectFullName (xsd:string)
データ・オブジェクトの完全な相対パスと名前。例:
/Samples/Sales
レスポンス・メッセージには、次のパラメータが含まれています。
xmlPayload (xsd:string)
データ・オブジェクトのXML説明が返されます。使用されるスキーマは、「作成」操作と「更新」操作で説明した定義と同じです。この操作を使用すると、データ・オブジェクトのID値とすべての列を検索できます。
例E-4 取得操作のxmlPayload
<DataObject Version="14" Name="Employees" Path="/Samples" External="0"> <Layout> <Column Name="Salesperson" ID="_Salesperson" Type="string" MaxSize="100" Nullable="1" Public="1" /> <Column Name="Sales Area" ID="_Sales_Area" Type="string" MaxSize="100" Nullable="1" Public="1" /> <Column Name="Sales Number" ID="_Sales_Number" Type="integer" Nullable="1" Public="1" /> <Column Name="Timestamp" ID="_Timestamp" Type="timestamp" Nullable="0" /> Public="1" /> <Indexes /> </Layout> </DataObject>
「更新」では、既存のデータ・オブジェクトの定義が更新されます。元の定義に指定の列がある場合は、新しい列の定義によって古い定義が上書きされます。既存の定義にある列が、新しい定義に指定されていない場合、その列の定義は削除されます。データ・オブジェクトの索引定義も同様に更新できます。
リクエスト・メッセージには、次のパラメータが含まれています。
xmlPayload (xsd:string)
「更新」操作のペイロードは、属性を1つ加えた「作成」ペイロードに類似しています。例:
<DataObject Version="14" Name="Employees4" ID="_Employees4" Path="/Samples" External="0"> <Layout> <Column Name="Salesperson" ID="_Salesperson" Type="string" MaxSize="50" Nullable="1" Public="1" /> <Column Name="Sales Number" ID="_Sales_Number" Type="integer" Nullable="1" Public="1" /> <Column Name="Timestamp" ID="_Timestamp" Type="timestamp" Nullable="0" Public="1" /> <Indexes /> </Layout> </DataObject>
ManualRuleFire Webサービスでは、次の操作がサポートされています。
この操作を使用して、ルールを手動で起動します。
このWebサービスは、ユーザー名の後にピリオド(.)、その後にアラート名が続く文字列パラメータを取得します。例:
user_name.alertname
ピリオドは、ユーザー名とアラート名間のセパレータとして使用されます。Webサービスでは、文字列内の最後のピリオドを常にセパレータとして処理するため、ユーザー名にピリオドを含めることができます。次に例を示します。
user.nema.alerrtname
したがって、アラート名にピリオドを含めることはできません。ManualRuleFire Webサービスで名前にピリオドが含まれるアラートを使用する必要がある場合は、アラートの名前を変更してピリオドを含めないようにする必要があります。
リクエスト・メッセージには、次のパラメータが含まれています。
xmlPayload (xsd:string)
次に例を示します。
<FireRuleByName xmlns="http://xmlns.oracle.com/bam"> <strRuleName>string</strRuleName> </FireRuleByName>