| Oracle® Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイド 11gリリース1(11.1.1.7) B61382-07 |
|
![]() 前 |
![]() 次 |
この付録では、Oracle Business Activity Monitoring (Oracle BAM)アクティブ・スタジオでデータ・オブジェクトまたはレポート・ビューに計算フィールドを作成する場合の例と、計算内で使用可能な演算子と式の構文を説明します。
この付録の内容は次のとおりです。
表A-1 計算フィールドで使用される演算子
| 演算子 | 機能 |
|---|---|
|
+(プラス記号) |
加算 |
|
-(マイナス記号) |
減算 |
|
*(アスタリスク) |
乗算 |
|
/(スラッシュ) |
除算 |
|
+(パーセント記号) |
率 |
|
()(カッコ) |
演算順序を決定するカッコ |
|
&&(二重アンパサンド) |
論理積(AND) |
|
! (感嘆符) |
論理否定(NOT) |
|
||(二重パイプ) |
論理和(OR) |
|
==(二重等号) |
等式 |
特殊文字(表A-1にリストした演算子や二重引用符、空白など)を含んだフィールド名は、中カッコ{}で囲む必要があります。数字、英字またはアンダースコアのみが含まれ、1文字目が英字またはアンダースコアで始まるフィールド名は、中カッコで囲む必要はありません。たとえば、フィールド名がSalesの場合、この名前を計算に正しく入力するにはSalesと入力します。一方、フィールド名がSales+Costsの場合、この名前を計算に正しく入力するには{Sales+Costs}と入力します。
二重引用符を他の二重引用符内で使用する場合は、二重引用符を追加してエスケープします。たとえば、Length("""Hello World, "" I said")と入力します。
指定したフィールドのすべての値の平均が戻されます。Avgには、Integer、FloatまたはDecimal型のフィールド・パラメータを1つ指定できます。
構文:
Avg(Number)
例:
Avg(Revenue)
指定した値以上で最も小さい整数が戻されます。Ceiling(2.9)では3が戻され、Ceiling(-2.3)では-2が戻されます。Ceilingには、Integer、FloatまたはDecimal型のフィールド・パラメータを1つ指定するか、あるいは数値を入力できます。
構文:
Ceiling(Number)
例:
Ceiling(Total) Ceiling(3.7)
複数の文字列が1つに結合されます。Concatには、String型のフィールド・パラメータを複数指定するか、あるいは文字列値を入力できます。
構文:
Concat(String1,String2, ... ,StringN)
この例では、HTMLの文字列に対してConcatとIf (A.14項「If」を参照)を使用し、計算後のHTMLフィールドのイメージをロードします(詳細は、5.4.1項「計算でのHTMLの使用」を参照してください)。
If ({Excess Capacity} > 16)
Then (Concat ("<img src='../Images/round_green16px.gif' alt='",
{Excess Capacity},"' />"))
Else (If ({Excess Capacity} < 1) Then
(Concat("<img src='../Images/round_red16px.gif' alt='",
{Excess Capacity},"' />"))
Else (Concat("<img src='../Images/round_amber16px.gif' alt='",
{Excess Capacity},"' />")))
NULL以外のすべての値の数が戻されます。Countには、任意の型のフィールド・パラメータを1つ指定できます。
構文:
Count(Field)
例:
Count(SaleComplete)
同じフィールド内の異なる値の数が戻されます。CountDistinctには、任意の型のフィールド・パラメータを1つ指定できます。
構文:
CountDistinct(Field)
例:
CountDistinct(Salesperson)
フィールド値に補正値が加算されます。DateAddの最初のパラメータは、DateTime型のフィールドである必要があります。最後の7つのパラメータは、Integer型のフィールドまたは整数値にできます。補正値が不要な場合は、0(ゼロ)を指定できます。
構文:
DateAdd(DateTime, Years, Months, Days, Hours, Minutes, Seconds, Milliseconds)
例:
DateAdd({Last Modified}, 0, 0, 7, 0, 0, 0, 0)
//adds 7 days to the Last Modified value
DateAdd({Last Modified}, 0, 0, DaysToFollowup, 0, 0, 0, 0)
//adds DaysToFolowup number of days to the Last Modified value
ある日付の曜日が戻されます。DayNameには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
DayName(DateTime)
例:
DayName({Last Modified})
ある日付のその月の日が1から31の範囲で戻されます。DayOfMonthには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
DayOfMonth(DateTime)
例:
DayOfMonth({Last Modified})
ある日付の曜日が1から7の範囲で戻されます。DayOfWeekには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
DayOfWeek(DateTime)
例:
DayOfWeek({Last Modified})
ある日付のその年の日が1から366の範囲で戻されます。DayOfYearには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
DayOfYear(DateTime)
例:
DayOfYear({Last Modified})
指定したフィールドの値以下で最も大きな整数が戻されます。Floor(2.9)では2が戻され、Floor(-2.3)では-3が戻されます。Floorには、Integer、FloatまたはDecimal型のフィールド・パラメータを1つ指定するか、あるいは数値を入力できます。
構文:
Floor(Number)
例:
Floor(Sales) Floor(46.75)
時間の値が0から23の範囲で戻されます。Hourには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
Hour(DateTime)
例:
Hour({Last Modified})
If-Then-Else文が作成されます。Ifのパラメータには、任意の型のフィールド、式および値を指定できます。
構文:
If(x) Then(y) Else(z)
例:
If(Sum(Quantity) > Max(Total)) Then(1) Else(2)
テスト値xがNULLの場合、指定値yが戻されます。IfNullには、2つのパラメータを指定できます。指定できるのは、任意の型のフィールドまたは値です。ただし、2つのパラメータのデータ型は同じである必要があります。
構文:
IfNull(x,y)
例:
IfNull(Quantity, 0)
文字列の長さが戻されます。Lengthには、パラメータを1つ指定できます。指定できるのは、String型のフィールド、引用符で囲んだ文字列値、文字列が含まれている式またはString型のフィールドが含まれている式です。
構文:
Length(String)
例:
Length(Description)
Length("string")
Length(Concat(Description,"Description"))
文字列が小文字に変換されます。Lowerには、パラメータを1つ指定できます。指定できるのは、String型のフィールド、引用符で囲んだ文字列値、文字列が含まれている式またはString型のフィールドが含まれている式です。
構文:
Lower(String)
例:
Lower(Description)
Lower("Description")
Lower(Concat(Description,"Description"))
指定したフィールドまたは式の最大値が戻されます。Maxには、任意の型の1つのフィールド・パラメータまたは別の有効な式を指定できます。
構文:
Max(x)
例:
Max(Quantity) Max(Concat(Description," overstock"))
指定したフィールドまたは式の最小値が戻されます。Minには、任意の型の1つのフィールド・パラメータまたは別の有効な式を指定できます。
構文:
Min(x)
例:
Min(Quantity) Min(Concat(Description," overstock"))
分の値が0から59の範囲で戻されます。Minuteには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
Minute(DateTime)
例:
Minute({Last Modified})
ある日付の月の値が1から12の範囲で戻されます。DayOfWeekには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
Month(DateTime)
例:
Month({Last Modified})
ある日付の月の名前が戻されます。MonthNameには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
MonthName(DateTime)
例:
MonthName({Last Modified})
現在の日付と時間が戻されます。Nowには、パラメータを指定できません。
構文:
Now()
例:
DateAdd(Now(), 0, 0, 7, 0, 0, 0, 0)
指定したフィールドの合計値に対する値の割合が戻されます。PercentOfTotalには、Integer、FloatまたはDecimal型のフィールド・パラメータを1つ指定できます。
構文:
PercentOfTotal(Number)
例:
PercentOfTotal(Quantity)
ある値xをもう1つの値yで累乗した値が戻されます。Powerには、パラメータを2つ指定できます。指定できるのは、Integer、Float、Decimal型のフィールドまたは数値です。
構文:
Power(Number,Number)
例:
Power(Quantity, 2)
四半期の値が1から4の範囲で戻されます。Quarterには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
Quarter(DateTime)
例:
Quarter({Last Modified})
文字列が指定した回数繰り返されます。Repeatには、パラメータを2つ指定できます。最初のパラメータには文字列値またはString型のフィールド、2番目のパラメータには整数値またはInteger型のフィールドを指定できます。いずれのパラメータにも、最初のパラメータに文字列が戻され、2番目のパラメータに整数が戻される式を使用できます。
構文:
Repeat(String,Integer)
例:
Repeat("string", 5)
Repeat(Description, 2)
Repeat(Description, Quantity)
Repeat(Concat(Description," overstock"),Quantity+2)
すべての文字列yが文字列zに置換されて、文字列xが戻されます。Replaceには、String型のフィールド・パラメータまたは文字列値を3つ指定できます。
構文:
Replace(String,String,String)
例:
Replace(Description, "ing", "tion")
最初のパラメータで指定した値が、2番目のパラメータで指定した小数点以下の桁数で四捨五入されます(小数点以下N+1位の数が5以上の場合は切り上げられ、そうでない場合は切り捨てられます)。Roundには、パラメータを2つ指定できます。指定できるのは、Integer、Float、Decimal型のフィールドまたは数値です。
構文:
Round(Number,N)
例:
Round(Sales,2)
この例では、Sales値が12.345の場合、12.35に四捨五入されます。
秒の値が0から59の範囲で戻されます。Secondには、DateTime型のフィールド・パラメータを1つ指定できます。
構文:
Second(DateTime)
例:
Second({Last Modified})
文字列xの位置yからzの文字数の部分文字列が戻されます。Substringには、3つのパラメータが必要です。最初のパラメータには文字列値またはString型のフィールド、2番目および3番目のパラメータには整数値またはInteger型のフィールドを指定する必要があります。
構文:
Substring("source_string", start_position, substring_length)
例:
Substring("some string", 6, 3)
// returns "str"
指定したフィールドのすべての値の合計が戻されます。Sumには、Integer、FloatまたはDecimal型のフィールド・パラメータを1つ指定できます。
構文:
Sum(Number)
例:
Sum(Total)
Switch文が作成されます。Switchのパラメータには、任意の型のフィールド、式および値を指定できます。
構文:
Switch(w) Case(x):(y) Default(z)
例:
文字列の末尾にある空白文字(空白、タブ、改行、ライン・フィード、ページ・フィード、フォーム・フィードなど)を削除します。TrimEndには、String型のフィールド・パラメータを1つ指定できます。文字列値を戻す式を入力することもできます。
構文:
TrimEnd(String)
例:
TrimEnd(Description) TrimEnd(Concat(Description,Subcategory))
文字列の先頭にある空白文字(空白、タブ、改行、ライン・フィード、ページ・フィード、フォーム・フィードなど)を削除します。TrimStartには、String型のフィールド・パラメータを1つ指定できます。文字列値を戻す式を入力することもできます。
構文:
TrimStart(String)
例:
TrimStart(Description) TrimStart(Concat(Description,Subcategory))
文字列が大文字に変換されます。Upperには、String型のパラメータを1つ指定できます。文字列値を戻す式を入力することもできます。
構文:
Upper(String)
例:
Upper({License Plate Number})
DateTime値の週が0から53の範囲で戻されます。これは、53週目に週の開始日が存在する可能性があるためです。日曜日が、その週の開始日になります。日曜日があるこの年の最初の週が、1週目となります。
たとえば、2006年1月1日は日曜日であるため、0週目は存在しませんこの年は、1週目から開始し、53週目まで続きます。2006年の53週目には、1日のみが含まれます。それは12月31日で、日曜日でもあります。これに続く月曜日から土曜日(2007年1月1日から6日)は、2007年の0週目です。
構文:
Week(DateTime)
例:
Week({Last Modified})
年の値が1000から9999の範囲で戻されますYearには、DateTime型のパラメータを1つ指定できます。
構文:
Year(DateTime)
例:
Year({Last Modified})