Базовая CRUD-процедура

Источники табличных данных предоставляют API для вызова функций. В источнике есть таблица, которую необходимо читать и изменять на клиенте. В настоящий момент платформа позволяет решать такую задачу с помощью двух функций: одна обеспечивает чтение, другая обеспечивает модификацию. Существует подход к формированию функции, которая позволяет модифицировать и читать одновременно. Этот подход осуществляет автоматическую синхронизацию данных между клиентом и сервером.

В источнике данных существует таблица, к которой нет прямого доступа. Для работы с таблицей из платформы используйте специально созданную функцию доступа к таблице с параметрами:

Тип параметра Имя параметра Описание
Входной upsert_rows Таблица, структура которой совпадет со структурой базовой таблицы. Строки из этого параметра будут вставлены в базовую таблицу. При совпадении первичного ключа базовая таблица будет обновлена.
delete_ids Таблица из одного столбца. Его тип и название соответствуют типу и названию первичного ключа базовой таблицы. Удаление должно происходить после обработки параметра upsert.
Выходной Без имени Базовая таблица.

Функция возвращает ошибку в следующих случаях:

Разница табличного ресурса на сервере и на мобильном устройстве:

Пример

В источнике данных содержится таблица с каталогом товаров. Для таблицы создана функция доступа. В платформу заведен соответствующий ресурс.

Алгоритм выполнения примера:

  1. При инициализации мобильное приложение делает запрос к ресурсу c пустыми параметрами, т.е. с пустыми таблицами в качестве значений параметров.

  2. Сервер делает запрос к источнику данных, получает в ответе каталог товаров, кэширует каталог, отдает каталог мобильному приложению.

  3. Приложение получает каталог и сохраняет его.

  4. Пользователь приложения удаляет товар.

  5. Приложение отправляет запрос с заданным параметром для удаления товара.

  6. Сервер отправляет запрос на удаление товара источнику данных. В ответ сервер получает полный обновленный каталог товаров. Сервер обновляет кэш и отправляет приложению дельту.

  7. Приложение получает и обрабатывает дельту.

  8. Обработка нажатия кнопки в приложении завершена.

См. также:

Настройка интеграции с табличными источниками данных | Базовая процедура SAP