<< Click to Display Table of Contents >> マニュアル > サーバ作成ガイド > アクション編 > アクションリファレンス > サマリアクション(ロギング/集計/日報) > サマリアクションの設定ファイルとフォルダ構成 > 計算フィールドマスタ |
計算フィールドマスタの定義
計算フィールドマスタ(fieldmaster_calculation.csv)を定義すると、各フィールドの集計データ同士で演算を行い、演算結果を集計データに含めて保存する事ができます。計算フィールドマスタのパスはサマリマスタのルートログセクションのCalculationFieldMasterプロパティで指定します。本機能を利用しない場合は計算フィールドマスタは定義する必要はありません。
計算フィールドマスタは1つの演算式につき1行で構成されます。例えば10種類の演算式を定義し、それぞれの演算式に対する集計結果を保存したい場合、計算フィールドマスタは10行で構成されます。以下は計算フィールドマスタの設定例です。
計算フィールドマスタ(設定例)
[Name], |
[Comment], |
[Expression], |
[UncertainIsZero], |
[TermOfValidity], |
[DecimalNum1], |
[SummaryType1] |
C000, |
計算タグ1, |
T000 + T001 + T002, |
F, |
, |
2, |
AVERAGE |
C001, |
計算タグ2, |
T003 + T004 / 2, |
F, |
, |
2, |
AVERAGE |
C001, |
計算タグ3, |
C000 + C001 |
F, |
, |
2, |
AVERAGE |
ヘッダ名 |
説明 |
[Name] (必須) |
フィールド名。サマリレポートやヒストリカルトレンドグラフなどから参照するときに使用する名前。名前が重複しないように設定して下さい。 |
[Expression] (必須) |
フィールド名([Name])で式を作ります。演算式にはタグフィールドマスターファイル内に定義されたフィールド名が使用できます。演算式で使用できるオペレータや関数は「演算式構文」に基づきます。
例)一般的な演算子 (T000 + T001) / 100
例)T000/T001/T002のフィールドから最大値を求める Math.Summary("max", T000, T001, T002) ※"max"の他に、"min", "ave", "sum"に対応しています。 ※演算式内では演算式構文で利用できる関数が使用できます。
また、計算フィールドマスターファイル内に定義されたフィールド名も演算式内で利用できます。ただし、演算は計算フィールドマスターファイルに定義されている順番に処理されるため、以下のようにCAL01、CAL02を定義した後に、CAL03を定義してください。
[Name], [Expression] CAL01, T000 + T001 CAL02, T002 + T003 CAL03, CAL01 + CAL02 + T004 |
[Comment] |
任意のコメントを含めることができます。
|
[UncertainIsZero] |
計算時の不定値の扱い方の設定です。[UncertainIsZero]に「F」(もしくはn)を指定すると、式中に不定値が含まれる場合、演算結果も不定値にします。例えば「T000 + T001」という式の場合T001が通信不良などで値が欠損している場合、演算結果も不定値(欠損値)になります。[UncertainIsZero]に「T」(もしくはy)を指定すると、不定値を数値の0とみなして演算します。[UncertainIsZero]列は必須ではありません。省略した場合のデフォルト値は「F」となります。 |
[DecimalNum1] ~ [DecimalNum{n}] |
「タグフィールドマスタ」を参照して下さい。 |
[SummaryType1] ~ [SummaryType{n}] |
集計方法の指定です。計算フィールドの場合、集計方法は[Expression]で定義されている式で演算させるため、通常は必要ありません。しかしながら、[Expression]で演算したログの結果を親にして新たに集計ログを行う場合(例えば日報から月報を作成する場合など)は[SummaryType]列を定義します。
|
[SummaryParam1] ~ [SummaryParam{n}] |
「タグフィールドマスタ」を参照して下さい。 |
[TermOfValidity] |
「タグフィールドマスタ」を参照して下さい。 |
[ReportHeader1] ~ [ReportHeader{n}] |
「タグフィールドマスタ」を参照して下さい。 |
[UserParam1] ~ [UserParamn}] |
「タグフィールドマスタ」を参照して下さい。 |
計算フィールドを定義する場合、サマリマスタに以下の定義が必要になります。
1)ルートログセクション
CalculationFieldMaster=計算フィールドマスターファイル名 CalculationFieldIndex=計算フィールドインデックスファイル名
例) [RAW] CalculationFieldMaster=summary_fieldmaster_calculation.csv CalculationFieldIndex=DB\summary_index_calculation.txt ...
2)集計ログセクション
CalculationType=計算方法
例1)計算フィールドマスタの[Expression]列に従い計算する。 [RAW::DAY] CalculationType =[Expression] ...
例2)計算フィールドマスタの[SummaryType]列に従い計算する。 [DAY::MONTH] CalculationType =[SummaryType1] ...
|
運用開始後に計算フィールドマスタを修正した場合、修正内容を適用するためには、Panel Serverをいったんオフラインにして、再びオンラインにする必要があります。
|
計算フィールドの演算は、日集計などの集計処理タイミングで行われます。ルートログ(生データ)のロギング時には計算は行われません。 |