Поля сущности "Событие":
transaction_id
(int
) NOT NULL DEFAULT -1 - ID транзакцииtransaction_timestamp
(datetime
) - Время транзакцииtimestamp
(datetime
) - Время событияsource
(json
) NOT NULL - Источник событияtype
(string
) NOT NULL - Тип транзакции. См.нижеrequest
(json
) - Тело запроса в формате JSON. См.формат ниже для разных типов событийresponse
(json
) - Тело ответа в формате JSON. См.формат ниже для разных типов событийerror
(json
) - Текст ошибки в формате JSONdetails
(json
) - Содержит id изменяемой, вставляемой или удаляемой записиuser_name
(string
) - Имя пользователя, инициирующего событие.А так же поля, перечисленные ниже, которые будут удалены в скором времени:
entity_name
(string
) - request->'entity'->>'name'
schema_name
(string
) - request->'entity'->>'schema'
row_id
(int
) - details->'id'
insertEntities
- вставка нескольких записей одной сущности.insertEntity
- вставка новой записи.updateEntity
- изменение существующей записи.deleteEntity
- удаление существующей записи.getUserView
- получение данных представления. Событие фиксируется в случае отсутствия доступов.runAction
- возникла ошибка во время выполнения процедуры.writeEvent
- результат вызова FunDB.writeEvent из процедуры или триггера.restoreSchemas
- восстановление схем.insertEntities
request
{
"entity":{
"name":"opportunities",
"schema":"crm"
},
"entries":[
{"subject":"678","is_deleted":false,"responsible_contact":21},
{"subject":"4567","is_deleted":false,"responsible_contact":21},
{"subject":"345","is_deleted":false,"responsible_contact":21},
{"subject":"23","is_deleted":false,"responsible_contact":21}
]
}
events.response
null
insertEntity
request
{
"entity":{
"name":"posts",
"schema":"hrm"
},
"fields":{
"name":"Test",
"is_deleted":false
}
}
events.response
{"id":18}
error
В случае возникновения ошибке в триггере, инициированном созданием новой записи:
{
"error": "Error while running trigger base.insert_new: Return value must not be null",
"schema": "base",
"name": "insert_new",
"inner": {
"error": "exception",
"userData": null,
"message": "Return value must not be null"
},
"message": "Error while running trigger base.insert_new: Return value must not be null"
}
В случае успешного создания записи, поле с ошибкой остается пустым.
updateEntity
request
{
"id":68,
"entity":{
"name":"actions",
"schema":"pm"
},
"fields":{
"subject":"Test New"
}
}
events.response
{"id":68}
error
В случае возникновения ошибке в триггере, инициированном изменением записи:
{
"error": "Error while running trigger base.change_status: Return value must not be null",
"schema": "base",
"name": "change_status",
"inner": {
"error": "exception",
"userData": null,
"message": "Return value must not be null"
},
"message": "Error while running trigger base.change_status: Return value must not be null"
}
В случае успешного изменения записи, поле с ошибкой остается пустым.
deleteEntity
request
{
"id":18,
"entity":{
"name":"posts",
"schema":"hrm"
}
}
events.response
{}
getUserView
request
null
events.response
null
error
access_denied
runAction
request
{
"args":{},
"action":{
"name":"test_action",
"schema":"user"
}
}
events.response
null
error
{
"error": "Uncaught Error: test\nJavaScript stack trace:\nat t() in actions/user/test_action.mjs:3:11",
"userData": null,
"message": "Uncaught Error: test\nJavaScript stack trace:\nat t() in actions/user/test_action.mjs:3:11"
}
writeEvent
request
{
"details":"Trigger \"update_fields_values_before_update_storage_action\":\nevent: {\"entity\":{\"schema\":\"storage\",\"name\":\"actions\"},\"time\":\"BEFORE\",\"source\":{\"type\":\"update\",\"id\":3}}\nargs: {\"executor_secondary\":56}"
}
events.response
null
restoreSchemas
request
{
"flags":{},
"schemas":{
"admin":{
"roles":{/*...*/},
"actions":{/*...*/},
"modules":{/*...*/},
"entities":{/*...*/},
"triggers":{/*...*/},
"userViews":{/*...*/},
"customEntities":{/*...*/},
"defaultAttributes":{/*...*/}
},
"base": {/*...*/}
}
}
events.response
{}