Команда
Запрос
Дополнительные предварительные действия
get
"command" : {
    "plm_type_code":${view},
    "state":${get},
    "from_row":int, // начальная строка для считывания
    "from_col":int, // начальный столбец для считывания
    "num_row":int, // количество строк для считывания
    "num_col":int // количество столбцов для считывания
}

Команда
Ответ
Описание
data
 "command" : {
		"plm_type_code" : ${view},
		"state" : ${data},
		"command_id": string, // идентификатор команды
        "module_id": string,  // идентификатор модуля
		"left_dims" : [string], // массив идентификаторов размерностей, вынесенных влево
		"top_dims" : [string], // массив идентификаторов размерностей, вынесенных вверх
		"top_flags" : [ ], // массив признаков наличия развернутых элементов в верхних размерностях
		"left_flags" : [ ], // массив признаков наличия развернутых элементов в левых размерностях
        "total_row" : int, // количество строк со значениями фактов
		"total_col" : int, // количество столбцов со значениями фактов
		"from_row" : int,  // начальный индекс строки для считывания
		"from_col" : int, //  начальный индекс столбца для считывания
		"inter_total_hidden_dimensions" : [string], // массив идентификаторов размерностей со скрытыми промежуточными итогами
		"show_global_horz_total" : bool // флаг отображения совокупных итогов по горизонтали
		"show_global_vert_total" : bool // флаг отображения совокупных итогов по вертикали
		"top" : [ // данные по элементам верхних размерностей и фактам
       		[   
				{
				    "type": 1,  // тип ячейки (1 — пустая ячейка)
		    	  },     
                {
				    "type": 2,  // тип ячейки (2 — стандартный элемент)
                    "element_id": int, // идентификатор элемента размерности
                    "value": string, // название элемента размерности
                    "flags": int // набор флагов элемента 
		    	  },
				{
					"type": 3,  // тип ячейки (3 — сгруппированный элемент)
                    "group_id": int, // идентификатор группы
                    "value": string, // название группы элементов
                    "flags": int // набор флагов элемента 
		    	  },
                {
           			"type" : 5, // тип ячейки (5 — элемент "Всего")
           			"flags" : int // набор флагов элемента
                }
			],
		    [   
				{
					"type": 1,  // тип ячейки (1 — пустая ячейка)
		    	  },     
                {
				    "type": 2,  // тип ячейки (2 — стандартный элемент)
                    "element_id": int, // идентификатор элемента размерности
                    "value": string, // название элемента размерности
                    "flags": int // набор флагов элемента 
		    	  },
				{
				    "type": 3,  // тип ячейки (3 — сгруппированный элемент)
                    "group_id": int, // идентификатор группы
                    "value": string, // название группы элементов
                    "flags": int // набор флагов элемента 
		    	  },
                {
           		    "type" : 5, // тип ячейки (5 — элемент "Всего")
           		    "flags" : int // набор флагов элемента
                }
			],
            [
	            {
                    "type": 4, // тип ячейки (4 — факт)
                    "fact_id": string, // идентификатор факта
                    "max": double, // максимальное значение в столбце факта (всегда нулевое)
                    "min": double, // минимальное значение в столбце факта (всегда нулевое)
                    "flags": int //  набор флагов элемента
                }
			]
          ],
       "left" : [  // данные по элементам левых размерностей
        	[   
				{
					"type": 1,  // тип ячейки (1 — пустая ячейка)
		    	  },     
                {
					"type": 2,  // тип ячейки (2 — стандартный элемент)
                    "element_id": int, // идентификатор элемента размерности
                    "value": string, // название элемента размерности
                    "flags": int // набор флагов элемента 
		    	  },
				{
				    "type": 3,  // тип ячейки (3 — сгруппированный элемент)
                    "group_id": int, // идентификатор группы
                    "value": string, // название группы элементов
                    "flags": int // набор флагов элемента 
		    	  },
                {
           			"type" : 5, // тип ячейки (5 — элемент "Всего")
           			"flags" : int // набор флагов элемента
                }
			],
		    [   
				{
					"type": 1,  // тип ячейки (1 — пустая ячейка)
		    	  },     
                {
					"type": 2,  // тип ячейки (2 — стандартный элемент)
                    "element_id": int, // идентификатор элемента размерности
                    "value": string, // название элемента размерности
                    "flags": int // набор флагов элемента 
		    	  },
				{
					"type": 3,  // тип ячейки (3 — сгруппированный элемент)
                    "group_id": int, // идентификатор группы
                    "value": string, // название группы элементов
                    "flags": int // набор флагов элемента 
		    	  },
                {
           			"type" : 5, // тип ячейки (5 — элемент "Всего")
           			"flags" : int // набор флагов элемента
                }
			 ]
            ],
         "data" : [ // массив значений фактов в рабочей области (double)
                    [ ],
                    [ ],
                    [ ],
                    [ ]
            ],
		 "sort_dims": [ // массив элементов с информацией о размерностях, к которым применена сортировка
				{
                        "dim_id": string, // ID размерности, к которой применена сортировка
                        "sort_type": int // направление сортировки
                },
				{
                        "dim_id": string, // ID размерности, к которой применена сортировка
                        "sort_type": int  // направление сортировки
                }
			] 
            }

Значения в массивах "top_flags" и "left_flags":

  • 0 — в размерности нет развернутых элементов. У последней вложенной размерности значение всегда 0.
  • 1 — в размерности есть развернутые элементы.

Значения в массиве указываются для размерностей в порядке вложенности, от размерности уровня 0 до последней вложенной.


Каждый вложенный массив внутри массивов "top", "left" и "data" соответствует одной строке из запрошенного подмножества строк таблицы.


Значения для "type" (соответствуют значениям "view_item", приведенным в таблице в разделе OLAP / Модуль "Мультисферы"):

  • 1 — пустая ячейка;
  • 2 — стандартный элемент;
  • 3 — группа (сгруппированный элемент);
  • 4 — факт (может быть только внутри массива "top");
  • 5 — ячейка итогов ("Всего").


Значение для "flags" рассчитывается как сумма значений флагов, проставленных для элемента. Эти значения флагов соответствуют значениям "view_item_flags", приведенным в таблице в разделе OLAP / Модуль "Мультисферы". Таким образом, если у элемента нет флагов, получаем "flags": 0. Если элемент, например, и развернут (2), и выделен (1), получаем "flags": 3.


Значения для "sort_type":

  • 1 — по возрастанию,
  • 2 — по убыванию.

Если к размерности не применена сортировка, в массиве "sort_dims" информация о размерности не передается. Если сортировка не применена ни к одной размерности, массив пустой.

КодОшибкаОписание
276User have not permissions on any dimension or fact. У пользователя нет прав на какие-то размерности или факты
  • Нет меток