Блог Essore
2025-10-04 00:26

Интеграция с Google-сервисами в 1С

Интеграция с Google-сервисами

1. Создание проекта

·Перейдите на Google Cloud Console

·Авторизуйтесь в аккаунте Google

·Создайте новый проект с произвольным названием
После создания проекта, переходим на его страницу и выбираем API & Services

2. Настройка учетных данных

После создания проекта перейдите на его страницу и выберите раздел Credentials
Создание API ключа:
В результате вы получите API ключ
Создание OAuth 2.0 клиента:
Важно: После нажатия кнопки "Create" сохраните Client ID и Client Secret!

Получение токенов доступа

Автоматизированный способ получения токенов

Для удобства используйте готовый HTML код:
<!DOCTYPE HTML>
<html>

<head>
<style type="text/css">
.danstyle {}
.danstyle label {
  display: inline-block;
  width: 100px;
}
.danstyle input {
  width: 500px;
}
</style>
</head>

<body>

  <form class="danstyle" target="_blank" action="https://accounts.google.com/o/oauth2/v2/auth" enctype="application/x-www-form-urlencoded" method="post">
   <p><label>scope:</label><input type="text" name="scope" value="https://www.googleapis.com/auth/calendar.settings.readonly https://www.googleapis.com/auth/drive.file https://www.googleapis.com/auth/drive.appdata"></p>
   <p><label>client_id:</label><input type="text" name="client_id" value=""></p>
   <input type="hidden" name="redirect_uri" value="http://localhost:13579">
   <input type="hidden" name="response_type" value="code">
   <input type="hidden" name="prompt" value="select_account">
   <p><input style=width:80px; type="submit" value="Get code"></p>
  </form>
  <form class="danstyle" action="https://oauth2.googleapis.com/token" enctype="application/x-www-form-urlencoded" method="post">
   <p><label>code:</label><input style="" type="text" name="code"></p>
   <p><label>client_id:</label><input type="text" name="client_id" value=""></p>   
   <p><label>client_secret:</label><input type="text" name="client_secret" value=""></p>
   <input type="hidden" name="redirect_uri" value="http://localhost:13579">
   <input type="hidden" name="grant_type" value="authorization_code">
   <p><input style=width:80px; type="submit" value="Get tokens"></p>
  </form>

</body>

</html>
Сохраните и запустите в браузере, это будет выглядеть примерно так:

Процесс получения токенов

  • Вставьте Client ID в первую форму и нажмите "Get code"
  • Предоставьте разрешения приложению в Google:
  • Скопируйте код из строки браузера (параметр code=)
  • Вставьте код, Client ID и Client Secret во вторую форму
  • Нажмите "Get tokens" для получения access_token и refresh_token

Работа с Google Таблицами

Подготовка таблицы

  1. Создайте Google Таблицу
  2. Откройте доступ "для всех по ссылке"
Скопируйте ID таблицы из ссылки (после /d/)

Пример интеграции в 1С

Для работы с данными из Google Таблиц можем протестировать работу на нашей простенькой обработке

Вот пример кода функции, которая создает ТЗ:
Функция ПолучитьТЗ(МассивСтрок)  
	
    Если МассивСтрок.Количество() = 0 Тогда
        Возврат Новый ТаблицаЗначений;
    КонецЕсли;
    
    ТЗ = Новый ТаблицаЗначений;
    Заголовки = МассивСтрок[0];
    
    // Создаем колонки на основе заголовков
    Для Каждого Заголовок Из Заголовки Цикл
        ИмяКолонки = СтрЗаменить(Заголовок, "-", "");
        ТЗ.Колонки.Добавить(ИмяКолонки, Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(50)));
    КонецЦикла;
    
    // Добавляем строки с данными (пропускаем первую строку с заголовками)
    Для i = 1 По МассивСтрок.Количество() - 1 Цикл
        СтрокаДанных = МассивСтрок[i];
        
        // Пропускаем пустые строки (где первый элемент пустой)
        Если СтрокаДанных.Количество() > 0 И СтрокаДанных[0] = "" Тогда
            Продолжить;
        КонецЕсли;
        
        НоваяСтрока = ТЗ.Добавить();
        
        // Заполняем все доступные колонки
        Для j = 0 По ТЗ.Колонки.Количество() - 1 Цикл
            Если j < СтрокаДанных.Количество() Тогда
                НоваяСтрока[j] = СтрокаДанных[j];
            КонецЕсли;
        КонецЦикла;
    КонецЦикла;
    
    Возврат ТЗ;  
	
КонецФункции

Результат

После настройки интеграции вы сможете автоматически получать данные из Google Таблиц непосредственно в 1С:

Для production-решений рекомендуется оптимизировать код функции для работы с различными структурами таблиц.
Скачать нашу обработку Вы можете по кнопке ниже
Кнопка скачивания ⬇️ Скачать файл

Наши специалисты готовы оказать Вам консультацию и предложить оптимальное решение для Вашего бизнеса.
Не тратьте свое время и деньги:
📞 Позвоните нам +7 (920) 307-51-24 или напишите: WhatsApp / Telegram

🌐 Сайт → ESSORE.RU

📲 Telegram-канал