Я всего лишь новичок ie, когда дело доходит до oData и Logi c Apps.
Мой сценарий таков:
- У меня Azure SQL база данных с двумя таблицами (daily_stats, weekly_stats) для пользователей
У меня есть приложение Logi c, которое мне удалось успешно протестировать, но оно нацелено на одну таблицу, вызванную запросом HTTP и инициализируется переменная, использующая следующее выражение для получения запроса
if (equals (coalesce (trigger () ['output']? ['запросы']? ['filter'], ''), '') , '1 eq 1', trigger () ['output']? ['Query']? ['Filter'])
Проблема заключается в том, как запросить другую таблицу основываясь на том, что пользователь передает как запрос ODATA GET
Я полагаю, мне нужно условие, и псевдокод этого будет выглядеть примерно так:
- Для Ежедневная статистика URL запроса ODATA будет
https://myproject.logic.azure.com/workflows/some-guid-here/triggers/manual/paths/invoke/<b>daily_stats</b>/api-version=2016-10-01/&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=my-key-here&filter=userid eq 'richard'
Для еженедельной статистики URL запроса ODATA будет
https://myproject.logic.azure.com/workflows/some-guid-here/triggers/manual/paths/invoke/<b>weekly_stats</b>/api-version=2016-10-01/&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=my-sig-here&filter=<b>userid eq 'richard'</b>
Если это daily_stats, он запрашивает хранимую процедуру / таблицу daily_stats для пользователя = richard
Если это weekly_stats, он запрашивает хранимую процедуру / таблицу weekly_stats для пользователь = richard
Редактировать: добавлена схема ASCII
+----------------------+
| HTTP ODATA GET |
| Reguest |
| |
+----------+-----------+
|
|
|
|
v
+-------+---------+
| |
| |
| |
| filter has |
| daily_stats |
| |
+-------+---------+
|
|
|
|
+-------------+ | +--------------+
| | | | |
| | YES | NO | |
| query +<--------------+-----------------+ query |
| daily | | monthly |
| stats | | stats |
| table | | table |
| | | |
+-------------+ +--------------+