Назначение

Создает или обновляет указанную процедуру в базе. 
Для определенных ресторанов запрос пересылается в r_k Cloud. Наличие подключенного агента при этом не требуется.

ОграниченияТолько для агрегатора RkReports
Поддерживаемая версия агентаv2
PluggetSystemTypeSql

Формат запроса

{
  "taskType": "CreateOrUpdateSqlProc",
  "params": {
    "async": {
      "objectId": number,
       "timeout": number
    },
    "sync": {
      "objectId": number,
       "timeout": number
    },
    "procName": "string",
    "procSql": "string"
  }
}
JSON

Параметр

Тип

Обязательный

Описание

taskTypestringдаТип задачи. Для данного метода — значение CreateOrUpdateSqlProc
-async

Асинхронный вызов метода: либо синхронный, либо асинхронный
-sync

Синхронный вызов метода: либо синхронный, либо асинхронный
--timeoutintнетВремя ожидания ответа от агента в секундах. По умолчанию — 120 секунд
--objectIdintдаКод ресторана в системе лицензирования
-procNamestringдаПолное название хранимой процедуры
-procSqlstringда

Полный текст Sql создания процедуры, которая будет создана в БД. Скрипт должен начинаться с CREATE PROCEDURE procName, где procName равно значение параметра procName

Пример запроса

{
  "taskType": "CreateOrUpdateSqlProc",
  "params": {
    "sync": {
      "objectId": "199990001",
       "timeout": 10
    },
 
    "procName": "SuperProc_v1",
    "procSql": "CREATE PROCEDURE SuperProc_v1\n@objectId int = 0\nAS\nBEGIN\nSET NOCOUNT ON;\nSELECT @objectId, 'SuperProc_v1Created'\nEND"
  }
}
JSON

Формат синхронного ответа

{ 
   "responseCommon":{ 
      "taskGuid":"guid",
      "taskType":"CreateOrUpdateSqlProc",
      "objectId": 0
   },
   "error":{ 
      "wsError":{ 
         "code":"string",
         "desc":"string"
      }
   }
}
JSON

Параметр

Тип

Описание

-taskGuidguidУникальный код этой задачи. Используется при получении задачи через очередь
-taskTypestring enumТип задачи
-objectIdintКод ресторана в системе лицензирования
error
Контейнер ошибок, подробнее читайте в статье Описание ошибок

Формат асинхронного ответа

Успешный ответ

{
  "taskResponse": {
     "procName": "name"
     "success": true,
     }
  },
  "responseCommon": {
    "taskGuid": "string",
    "taskType": "CreateOrUpdateSqlProc",
    "objectId": 0
  }
}
JSON

Ответ с ошибкой

{
  "responseCommon": {
    "taskGuid": "string",
    "taskType": "CreateOrUpdateSqlProc",
    "objectId": 0
  },
  "error": {
    "wsError": {
      "code": "string",
      "desc": "string"
    },
    "agentError": {
      "code": 0,
      "desc": "string"
    }
  }
}
JSON

Пример ответа

{
    "taskResponse": {
        "procName": "name"
        "success": true,
        }
    },
    "responseCommon": {
        "taskGuid": "464ca191-8d3a-439b-ad5b-485f628275e6",
        "taskType": "CreateOrUpdateSqlProc",
        "objectId": 199997075
    }
}
JSON

Параметр

Тип параметра

Обязательный

Описание

-procNamestringдаПолное имя процедуры
-successboolда

Успешность процедуры. Принимает два значения:

  • true — процедура успешно создана или обновлена
  • false — процедура не создана
errorstring enum
Контейнер ошибок, подробнее читайте в статье Описание ошибок