SMML要素: 初期化ブロック

SMML初期化ブロック要素は、変数レイヤー内の初期化ブロック・スキーマに対応しています。初期化ブロック・スキーマには、セマンティック・モデルの初期化ブロック・オブジェクトおよび要素が含まれます。

initBlockの要素

  • name (必須プロパティ) — 初期化ブロックの名前。

  • description — 初期化ブロックの説明。

  • tags — このオブジェクトに割り当てられたキーワード。この要素は、「タグ」フィールドに対応します。

  • type — セマンティック・モデル変数のタイプ。

  • connectionPool — この初期化ブロックの接続プールを参照します。この要素は、この初期化ブロックのデータ・ソース・タイプがデータベースまたはXMLの場合にのみ使用されます。

  • runSchedule — グローバル変数では、開始日時の日、日付および時刻と、リフレッシュ間隔を指定できます。

  • disableTRUEに設定されている場合は、この初期化ブロックが無効であることを示します。

  • queryReturnsVariableNamesandValuesTRUEに設定すると、セッション変数が動的に作成され、セッションの開始時に値が設定されます。

  • allowDeferredExecutionTRUEに設定されている場合は、この初期化ブロックの遅延実行が有効であることを示します。遅延実行を使用し、サーバー起動時に初期化ブロックのSQL実行を保留することによって、サーバーの起動時間を短縮します。いずれかの変数が使用される場合のみ、SQLが発行され、変数が初期化されます。

  • cacheQueryResultTRUEに設定すると、queryReturnsVariableNamesandValues初期化ブロックのselect文の結果がキャッシュされます。

  • selectStatements — 異なるデータベースに対して定義できるselect文のリスト。

  • variables — この初期化ブロックに関連付けられた変数を参照します。

  • dependencies — このinitブロックの前に実行される、依存するinitブロック。

SelectStatementの要素

  • databaseType — データ・ソースのタイプ。DataBase Typeの列挙値を参照してください。

  • query — 物理表のデータ・ソース固有の問合せ。

RunScheduleの要素

  • interval — この初期化ブロックのリフレッシュ間隔(秒単位)。セマンティック・モデルの初期化ブロックのみに使用できます。デフォルト値は0です。

  • intervalUnit — 時間の単位。たとえば、秒、分、時間、日などです。

  • startingOn — スケジュールが開始される日または時刻。

Variableの要素

  • name (必須プロパティ) — 変数の名前。

  • description — 変数の説明。

  • value — デフォルト値。

  • enableUsersToSetValueTRUEに設定すると、ODBCストアド・プロシージャNQSSetSessionValue()をコールして(ユーザー・ログイン時に)初期化ブロックに値を移入した後にセッション変数が設定されます。たとえば、このオプションによって、管理者以外のユーザーがサンプル用にこの変数を設定できるようにすることができます。

  • securitySensitiveTRUEに設定すると、変数が仮想プライベート・データベース(VPD)のセキュリティに応じて識別されます。フィルタ・キャッシュ表に一致すると、Oracle Analytics問合せエンジンは論理リクエスト・プロジェクトション・リストで参照されるそれぞれの列または表の親データベースを参照します。物理データベース・ソースがVPDである場合、Oracle Analytics問合せエンジンはセキュリティ・センシティブ変数のリストをぞれぞれの見込みキャッシュ・ヒットと照合します。キャッシュ・ヒットは、すべてのセキュリティ・センシティブ変数が含まれて一致しているキャッシュ・エントリでのみ発生します。

構文

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "$ref": "#/definitions/initBlock",
    "definitions": {
        "initBlock": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "name": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "type": {
                    "type": "string",
                    "enum": [
                        "STATIC",
                        "GLOBAL",
                        "SESSION"
                    ]
                },
                "connectionPool": {
                    "type": "string"
                },
                "runSchedule": {
                    "$ref": "#/definitions/RunSchedule"
                },
                "disable": {
                    "type": "boolean"
                },
                "queryReturnsVariableNamesAndValues": {
                    "type": "boolean"
                },
                "allowDeferredExecution": {
                    "type": "boolean"
                },
                "cacheQueryResult": {
                    "type": "boolean"
                },
                "selectStatements": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/SelectStatement"
                    }
                },
                "variables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/Variable"
                    }
                },
                "dependencies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "required": [
                "name"
            ],
            "title": "InitBlock"
        },
        "SelectStatement": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "databaseType": {
                    "$ref": "common_schemas#/definitions/DatabaseType"
                },
                "query": {
                    "type": "string"
                }
            },
            "title": "SelectStatement"
        },
        "RunSchedule": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "interval": {
                    "type": "integer"
                },
                "intervalUnit": {
                    "type": "string"
                },
                "startingOn": {
                    "type": "string"
                }
            },
            "title": "RunSchedule"
        },
        "Variable": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "name": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "value": {
                    "type": "string"
                },
                "enableUsersToSetValue": {
                    "type": "boolean"
                },
                "securitySensitive": {
                    "type": "boolean"
                }
            },
            "required": [
                "name"
            ],
            "title": "Variable"
        }
    }
}