Запросите данные из JSON API и сохраните их в SQL Server, используя SSIS - PullRequest
1 голос
/ 13 марта 2019

Я пытаюсь запросить данные у JSON API у Vemcount - системы с датчиком шагов. Я хочу получить все данные моей компании и сохранить их в базе данных SQL Server, используя SSIS. В ходе моего исследования я понял, что JSON изначально не интегрирован с SSIS, поэтому решения либо жестко программируют импорт, либо используют стороннюю версию - я решил использовать последнюю, поэтому в настоящее время я пытаюсь выполнить запрос, используя Kingswaysoft и их компонент JSON Source в VS.

URL выглядит примерно так (пример из их документации, которую можно найти здесь ):

https://login.vemcount.com/api/fetch_data/?data={"api_key":"xxxxxxx","type":"shop_id","id":[10,14,24],"date_from":
"2014-01-01 00:00","interval":"15min"}

Итак, ключи api_key, type и id являются обязательными. Пары ключ / значение "type":"shop_id" и "id":[10,14,24] - это тип идентификатора, по которому я хочу выполнить поиск, и сам идентификатор. В приведенном выше примере я ввел 3 различных shop_id. Тем не менее, у нас более 250 идентификаторов, и постоянно добавляются новые.

Как мне запросить ALL разные идентификаторы без добавления всех идентификаторов в массив? Я вставил свой HTTP CM и JSON Source Editor ниже.

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

ОБНОВЛЕНИЕ: Итак, я сохранил все идентификаторы магазина в переменной, которую я хочу передать в качестве значения.

enter image description here enter image description here enter image description here

1 Ответ

2 голосов
/ 14 марта 2019

Я отвечаю по телефону, поэтому у меня нет ssis, но вот шаги, которые я делаю.

  1. Exec sql для получения списка идентификаторов магазинов, сохраненных в объекте.

  2. Для каждого цикла на объекте ado из 1 сохранения идентификатора магазина в переменную.

  3. Поток данных

  4. Источник компонента скрипта, передаваемый в ID магазина как переменная

  5. Создайте свой URL.

  6. Использование строки загрузки веб-клиента.

  7. Десериализовать JSON и завершить запись в поток данных.

Шаг 7 огромен и требует своего собственного вопроса. Это включает в себя настройку классов для вашего JSON.

Это должно помочь вам начать. Изучите шаг 7, прежде чем отправлять вопрос.

Удачи.

Кроме того, вот ссылка на помощь, которую я получил в отношении десериализации JSON. C # Проверка наличия нулевого объекта

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...