SQL запросы (версия 3.xx)/Ariadna
Версия от 11:58, 3 сентября 2020; Jugin (обсуждение | вклад) (→Непосредственный вызов методов XML-сервера МИС Ариадна)
Источник данных медиционской информационной системы Ариадна не поддерживает стандартный синтаксис SQL запросов. Вместо этого можно использовать методы прямого обращения к XML-серверу МИС Ариадна.
Непосредственный вызов методов XML-сервера МИС Ариадна
В тексте запроса следует указать конструкцию:
/! {Params: <параметры метода>} !/
Например:
/! {Params: '<?xml version="1.0" ?><CMD name="LAB_GET_ALL_SERVICES_FOR_ORDERING" encoding="windows-1251"></CMD>'} !/
Подробное описание формата формата команд можно посмотреть в документации к XML-серверу.
Помимо этого можно использовать функцию, которая вернет нужный объект, например, такого вида:
/! function () { return {Params: {'<?xml version="1.0" ?><CMD name="LAB_GET_ALL_SERVICES_FOR_ORDERING" encoding="windows-1251"></CMD>'}}; } !/
Более сложный вариант функции с вызовом метода XML-сервера и формированием результата:
/! function () { var Res = this.CallMethod ('<?xml version="1.0" ?><CMD name="LAB_GET_ALL_SERVICES_FOR_ORDERING" encoding="windows-1251"></CMD>'); return this.MakeResult (Res); } !/
Если функция не возвращает записи, например в результате изменения или удаления данных, она должна вернуть значение null:
/! function () { var Res = this.CallMethod ('<?xml version="1.0" ?><CMD name="LAB_GET_ALL_SERVICES_FOR_ORDERING" encoding="windows-1251"></CMD>'); return null; } !/