Dataset JSON Format

DatasetオブジェクトのデータをJSON(JavaScript Object Notation)形式で処理するためのレイアウトについて説明します。

Dataset JSON layout

Dataset JSONは下記の形式で構成します。

項目

必須

version

Parameters

Datasets

version

Dataset Layoutのバージョンを明記します。

"version" : "1.0",

Parameters

パラメータの値を明記します。

"Parameters":
[
	{"id": "ErrorCode", "value":0}, 
	{"id": "ErrorMsg", "value":""},
	{"id": "param1", "value":0}, 
	{"id": "param2", "value":"0", "type":"string"}
]

属性名

必須

説明

id

パラメータ名を指定します。

"ErrorCode", "ErrorMsg"項目は予約済みキーワードです。

"ErrorCode"項目を未設定にした場合、valueを0として処理します。

"ErrorMsg"項目を未設定にした場合、"ErrorCode"のvalueが 0であれば「SUCCESS」、それ以外の値であれば「FAILED」として処理します。

value

Integer、Float、String

type

データたタイプを指定します。

type 項目をご参照ください。

Datasets

Datasetオブジェクトの情報を含む要素で、配列内のオブジェクト形式でDatasetを持ちます。

Dataset

1つのDatasetオブジェクトの情報を持つ要素で、Datasetオブジェクトの構造を表現するためのColumnInfoとDataset オブジェクトの実際のデータを持つRowsで構成されます。

項目

必須

id

ColumnInfo


ConstColumn

Column

Rows

Dataset形式の詳細

Datasetの各項目について説明します。

id

"id":"inData"

属性名

必須

説明

id

Datasetオブジェクトのid属性値です。

ColumnInfo > ConstColumn

"ColumnInfo": 
{
	"ConstColumn": 
	[
		{"id":"ConstCol1", "value":10},
		{"id":"ConstCol2", "type":"string", "size":"256", "value":10},
		{"id":"ConstCol3"}
	]
}

属性名

必須

説明

id

DatasetオブジェクトでConst Column IDとして使用するID値です。

type

データタイプを設定します。

type 項目をご参照ください。

size

データの最大サイズを設定します。

省略した場合、Typeによる臨界値として処理します。

ただし、Typeが「STRING」である場合は255として処理します。

value

固定値を設定します。

未設定にした場合はundefinedとして処理します。

ColumnInfo > Column

"ColumnInfo": 
{
	"Column" : 
	[
		{"id":"Column0"},
		{"id":"Column1", "type":"string", "size":"256"},
		{"id":"Column2", "type":"string", "size":"256"}
	]
}

属性名

必須

説明

id

DatasetオブジェクトでColumn IDとして使用するID値です。

type

データタイプを設定します。

省略した場合、「STRING」として処理します。

type 項目をご参照ください。

size

データの最大サイズを設定します。


省略した場合、Typeによる臨界値として処理します。

ただし、Typeが「STRING」である場合は255として処理します。

prop

ColumnInfoオブジェクトのprop属性値を設定します。

sumtext

ColumnInfoオブジェクトのsumtext属性値を設定します。

Rows

"Rows":
[
	{"_RowType_":"U", "Column0":"", "Column1":"zzz", "Column2":""},
	{"_RowType_":"O", "Column0":"", "Column2":""},
	{"_RowType_":"N", "Column0":"A", "Column1":"B", "Column2":""},
	{"_RowType_":"D", "Column0":"a", "Column1":"b", "Column2":"c"},
	{"_RowType_":"I", "Column0":"", "Column1":"", "Column2":""}
]

"Rows":
[
	{"Column0":"A", "Column1":"B"},
	{"Column0":"a", "Column1":"b", "Column2":"c"},
	{"Column0":"", "Column1":"", "Column2":""}
]

属性名

必須

説明

_RowType_

X

レコード形式を設定します。

N: Normal Record (Default)

I: Inserted Record

U: Updated Record

D: Deleted Record

O: Original Record (Update Recordの元のレコードです。)

<ConstColumn id>

X

ConstColumn値を設定します。

<Column id>

O

Column値を設定します。

参考

type

Parameters、ConstColumn、Columnでtype項目値として使用できる値は下記の通りです。

Parameters、ConstColumnでは、未設定にすると、valueによってIntegerとFloatの場合はtypeが それぞれ「INT」と「FLOAT」として処理され、それ以外の場合は「STRING」として処理されます。

Type

説明

STRING

文字列

最大値はシステムで一度に割り当てられるサイズである2GBに制限されます。

Columnのサイズに関係なく最大値まで使用できます。

INT

整数

(-231 ~ 231-1)

FLOAT, DECIMAL

実数

(±2.2X10-308 ~ ±1.7X10308

BIGDECIMAL

実数(文字列として保存)

(±10-1056 ~ ±10+1056

DATE

日付

YYYYMMDD(-8192/01/01 ~ 8191/12/31)

DATETIME

YYYYMMDDHHmmssuuu(msec表示可能)

TIME

6桁のHHmmssuuu(msec表示可能)

BLOB

バイナリデータ

JSONの例題

{
	"version" : "1.0",
	"Parameters":
	[
		{"id":"ErrorCode", "value":0}, 
		{"id":"ErrorMsg", "value":""},
		{"id":"param1", "value":0}, 
		{"id":"param2", "value":"0", "type":"string"} 
	],
	"Datasets" :
	[
		{
			"id":"indata",
			"ColumnInfo": 
			{
				"ConstColumn": 
				[
					{"id":"ConstCol1", "value":10},
					{"id":"ConstCol2", "type":"string", "size":"256", "value":10},
					{"id":"ConstCol3"}
				],
				"Column" : 
				[
					{"id":"Column0"},
					{"id":"Column1", "type":"string", "size":"256"},
					{"id":"Column2", "type":"string", "size":"256"}
				]
			},
			"Rows":
			[
				{"_RowType_":"U", "Column0":"", "Column1":"zzz", "Column2":""},
				{"_RowType_":"O", "Column0":"", "Column2":""},
				{"_RowType_":"N", "Column0":"A", "Column1":"B", "Column2":""},
				{"_RowType_":"D", "Column0":"a", "Column1":"b", "Column2":"c"},
				{"_RowType_":"I", "Column0":"", "Column1":"", "Column2":""}
			]
		}, 
		{
			"id": "indata2",
			"ColumnInfo": 
			{
				"Column": 
				[
					{"id":"Column0"},
					{"id":"Column1", "type":"string", "size":"256"},
					{"id":"Column2", "type":"string", "size":"256"}
				]
			},
			"Rows":
			[
				{"Column0":"A", "Column1":"B"},
				{"Column0":"a", "Column1":"b", "Column2":"c"},
				{"Column0":"", "Column1":"", "Column2":""}
			]
		}
	]
}