Это старая версия документа!


Экспорт данных из ADVANTA в Google-таблицы

Google предоставляет множество сервисов для совместной работы с документами распространённых офисных форматов. В их числе - Google Sheets, облачный редактор электронных таблиц, аналогичный Excel.

В некоторых ситуациях требуется переносить данные о проектах, сформированных в ADVANTA, в таблицы Google Sheets.

Если передавать данные требуется регулярно, можно автоматизировать этот процесс. Для этого можно написать приложение, которое будет получать данные из ADVANTA через ее API и записывать их в электронную таблицу через API системы Google Sheets.

Шаги, которые надо выполнить для автоматизации передачи информации из ADVANTA в таблицы Google Sheets:

  1. Зарегистрировать «сервисный аккаунт» в системе «Google Cloud Console» для вызова к API.
  2. Настроить доступ к файлу электронной таблицы в Google Sheets для связанной с «сервисным аккаунтом» учётной записи.

Также ниже рассмотрены примеры двух максимально простых приложений на C#, которые получают данные из ADVANTA и записывают их в таблицы Google. На основе этих примеров Вы можете создавать собственные приложения для решения задач по автоматизации передачи данных из ADVANTA в облачные сервисы Google.

Доступ к API-функциям облачных сервисов Google настраивается в системе Google Cloud Console - это веб-сервис для разработчиков и системных администраторов организаций. Требуется создать в Google Cloud Console «проект» и подключить в него библиотеки API нужных сервисов Google.

При вызове API программа должна проходить авторизацию в «проекте». Есть несколько способов её организовать в зависимости от того, каким именно образом программа будет использоваться:

  1. Если предполагается создание приложения с визуальным интерфейсом, в котором пользователи будут работать через персональные учётные записи Google, следует настроить доступ к «проекту» через протокол OAuth. При вызове API из такого приложения, будет открываться веб-страница авторизации Google, где пользователь должен ввести свои логин и пароль вручную.
  2. Для приложений, работающих в автоматическом режиме, требуется создать специальную учётную запись Google – «сервисный аккаунт». Ключ доступа к такой учётной записи экспортируется в файл и включается в код программы.

Непосредственный вызов API Google может быть выполнен либо с помощью библиотек, либо напрямую, через REST API. В первом случае код намного проще, но библиотеки надо устанавливать в проект в среде разработки.

Для вызова API-функций Google-таблиц требуется выполнить шаги:

  1. Создать в сервисе Google Cloud Console новый проект.
  2. Подключить к этому проекту библиотеку API-функций «Google Sheets».
  3. Создать сервисный аккаунт – специальную учётную запись, которую можно использовать лишь для идентификации приложений.
  4. Создать ключ доступа к сервисному аккаунту - файл формата JSON, который содержит данные для автоматической авторизации приложения.

Перейти на сайт Google Cloud Console. При первом входе система автоматически создаст новый «проект» с названием «My First Project».

Для подключения к созданному проекту библиотеки API-функций Google Sheets необходимо перейти в раздел «APIs & Services» по кнопке под названием проекта.

Затем необходимо открыть список библиотек кнопкой «Enable APIs and services».

В поле поиска ввести «Sheets», нажать Enter и выбрать найденную библиотеку «Google Sheets API». Включить библиотеку кнопкой Enable.

Библиотека появится в проекте, на странице «Enabled APIs & services».

Для создания сервисного аккаунта Google необходимо в разделе «Credentials» вызвать меню «Create credentials > Service account».

Далее на странице «Create service account» ввести название аккаунта в поле «Service account name» и описание в поле «Service account description». Система автоматически заполнит поле «Service account ID». Для продолжения настройки нажать «Create and continue».

На странице «Grant this service account access to project» в выпадающем списке «Role» выбрать роль «Basic / Editor».

Для перехода к следующему шагу нажать Continue.

В разделе «Grant users access to this service account» ничего вводить не нужно. Нажать Done, чтобы завершить создание сервисного аккаунта. Сервисный аккаунт будет создан и появится в поле «Service account». Адрес электронной почты этого сервисного аккаунта нужно будет указать далее при настройке доступа к Google-таблице.

Теперь нужно создать ключ для доступа к сервисному аккаунту из программы, которую будем разрабатывать.