Описание параметров

Имя
Описание
Пример в 5.7
GenericAccessInfoинформация о типе доступа к мультисфере"cube_access_detailed": [

"name": string, имя мультисферы"name": "test_cube",

"access": m_access_type

тип доступа к мультисфере:

none - нет доступа к мультисфере,
direct - доступ к мультисфере получен напрямую, т.е. через окно настроек пользователя,
indirect - доступ к мультисфере получен через группу пользователей, т.е. если пользователя исключат из группы, то он потеряет доступ к мультисфере,
composite - доступ к мультисфере получен и напрямую и через группу пользователей

"access": "composite"}]

"groups_access": 

тип доступа к сфере через группу:

full_access - полный доступ
restrict_access - частичный доступ

"full_access" : ["25a34042-7b9c00a9-e40e59d7-e8619690"]
"restrict_access" : ["1718cfcc-0eb7def5-a2398c5f-e62426d7"]


"id": string,идентификатор мультисферы, размерности или факта{"id": "a01c75df",

"is_fully_available":флаг полного доступа к мультисфере"is_fully_available" : true,

"type" : OlapDataType,

тип данных размерности

OlapDataType:
"uint8" : 0, "uint16" : 1, "uint32" : 2, "uint64" : 3, "double" : 4, "string" : 5, "date" : 6, "time" : 7, "datetime" : 8, "date_year" : 9, "date_quarter" : 10, "date_month" : 11, "date_day" : 12, "date_week" : 13, "date_wday" : 14, "time_hour" : 15, "time_minute" : 16, "time_second" : 17,
"none": 18,
"unknown": 19
"type" : 8,
CubeAccessInfoDetailedдетализированная информация о правах на размерности и факты"member_cubes_access": {

"access": m_access_type,

тип доступа к мультисфере:

none - нет доступа к мультисфере,
direct - доступ к мультисфере получен напрямую, т.е. через окно настроек пользователя,
indirect - доступ к мультисфере получен через группу пользователей, т.е. если пользователя исключат из группы, то он потеряет доступ к мультисфере,
composite - доступ к мультисфере получен и напрямую и через группу пользователей

"access": "composite",

"cube_id": string,идентификатор мультисферы"cube_id": "a01c75df",

"dims": GenericAccessInfo,

информация о типе доступа к размерности

суммарное право на размерность в виде идентификатора в одном из атрибутов:

full_access - полный доступ к размерности
restrict_access - частичный доступ

is_fully_available - флаг полного доступа

"dims" : [
{
"access" : "indirect",
"groups_access" : {
"full_access" : [  ],
"restrict_access" : [ ]
},
"id" : "5d89bc3d",
"is_fully_available" : true,
"name" : "ChequeID",
"type" : 5
},

"facts": GenericAccessInfoинформация о типе доступа к факту 

"facts": [
{
"id": "56719980",
"name": "NDS",
"access": "composite"
"type" : 0

}]}

CubeRestrictionsDetailed


"cube_id": string,идентификатор мультисферы"cube_id": "a01c75df",

"allowed_dims": [string],список идентификаторов доступных размерностей "allowed_dims": ["8f1376aa","8827749a","7f36086f","7974acb6","705100db","47c14255","d02df7f7","a7e4c281","28ca5ab0","9e78f493"],

"allowed_facts": [string]список идентификаторов доступных фактов"allowed_facts": ["6993c4d4","cde7f624"]

"dim_restrict_allowed"список идентификаторов размерностей, у которых есть недостпные элементы"dim_restrict_allowed": ["6903c4d4","0de7f624"]

Обязательные действия

Команды

Команда
Запрос
Дополнительные предварительные действия

get_member_cubes_list

{
    "plm_type_code": ${permissions},
    "state": ${get_member_cubes_list},//получить список мультисфер с правами для пользователя
	"owner_id": string//идентификатор пользователя или группы пользователей
}

Команда
Ответ

get_member_cubes_list_rp

{
    "plm_type_code": ${permissions},
    "state": ${get_member_cubes_list_rp},
	"member_cubes_access": [GenericAccessInfo]//список мультисфер с типом доступа
}
Код ошибки
Текст ошибки
Описание
"code": RuntimeError (200)

"message": "Can't get cube permissions: No such user/group"

ошибка появляется, если нет пользователя или группы пользователей с указанным идентификатором
Команда
Запрос
Дополнительные предварительные действия

get_detailed_cube_permissions

{
    "plm_type_code": ${permissions},
    "state": ${get_detailed_cube_permissions},//получить детализированную информация о правах на мультисферу, размерности и факты
	"owner_id": string,//идентификатор пользователя или группы пользователей
	"cube_id": string//идентификатор мультисферы 
}

Команда
Ответ

get_detailed_cube_permissions_rp

{
    "plm_type_code": ${permissions},
    "state": ${get_detailed_cube_permissions_rp},
	"cube_access_detailed": [CubeAccessInfoDetailed]//детализированная информация о правах на мультисферу, размерности и факты
}
Код ошибки
Текст ошибки
Описание
"code": RuntimeError (200)

"message": "Can't get cube permissions: No such user/group"

ошибка появляется, если нет пользователя или группы пользователей с указанным идентификатором
"code": RuntimeError (200)"message": "Can't get cube permissions: No such cube"ошибка появляется, если нет мультисферы с указанным идентификатором
Команда
Запрос
Описание

set_detailed_cube_permissions

{
    "plm_type_code": ${permissions},
    "state": ${set_detailed_cube_permissions},//установить права на мультисферу, размерности и факты
	"owner_id": string,//идентификатор пользователя или группы пользователей
	"cube_permissions": [CubeRestrictionsDetailed]//
}

Позволяет установить права на факты и размерности в целом, или на мультисферу в целом. Этой командой можно запретить полностью разрешенные размерности и факты (не передавать id в allowed_dims/allowed_facts, соответственно) или разрешить полностью недоступные размерности и факты (передать id в allowed_dims/allowed_facts, соответственно). Для размерностей с ограничениями ничего не изменится. Обратите внимание, что запрос с пустым allowed_dims/allowed_facts приведёт к удалению прав на мультисферу.


Команда
Ответ

set_detailed_cube_permissions_rp

{
    "plm_type_code": ${permissions},
    "state": ${set_detailed_cube_permissions_rp},
	"error_list": [string, string]//результат предоставление доступа к мультисфере, размерностям и фактам в формате: идентификатор мультисферы и текст сообщения
}
Код ошибки
Текст ошибки
Описание
"code": RuntimeError (200)

"message": "Can't set cube permissions: No such user/group"

ошибка появляется, если нет пользователя или группы пользователей с указанным идентификатором
"code": RuntimeError (200)"message": "Failed to set cube permissions: Not enough roles to change members with 'Administrator' role"ошибка появляется, если пользователю с ролью "Администратор" устанавливает права пользователь без роли "Администратор"
"code": RuntimeError (200)"message": "Can't set permissions: No such cube"ошибка появляется, если нет мультисферы с указанным идентификатором

Общие ошибки

Код ошибки
Текст ошибки
Описание
"code": PermissionError (204)"message": "Can't work with cube permissions: Not enough roles"ошибка появляется, если у пользователя нет соответствующих ролей
"code": RequestError (260)"message": "Failed to cast to PermissionsCommand in handle_permission_command()"ошибка появляется, когда не удалось преобразовать команду к PermissionsCommand
"code": RequestError (260)"message": "Failed while handling PermissionsCommand: State 'cmd' is not handled" ошибка появляется, когда отправленная команда не описана на сервере 
  • Нет меток