Чтение и запись из таблиц гугл (google sheets) в табличный документ 1С (8.3, управляемые формы)

Публикация № 813261

Разработка - Системная интеграция - Внешние источники данных

Обработка Управляемые формы Google sheets загрузка выгрузка табличный документ таблица гугл OAuth 2.0

148
Внешняя обработка на управляемой форме для 1С версии 8.3 для доступа к сервисам Google Sheets c использованием протокола авторизации OAuth 2.0. Выполняет получение списка листов таблицы гугл, чтение таблицы гугл в табличный документ 1С и запись из табличного документа 1С в таблицу гугл. Тестирование проводилось на платформе 1С:Предприятие 8.3 (8.3.11.2954).
Внимание! В обработке использовано 3 функции из БСП:
ОбщегоНазначенияКлиентСервер.СообщитьПользователю() 
СтроковыеФункцииКлиентСервер.ВставитьПараметрыВСтроку() 
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку() 

Обновление

18.05.18. Версия обработки 1.0.2.

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

Функции

  1. Авторизация в google используя протокол OAuth 2.0

    1. Запрос для получения authorization code ("Код доступа").

    2. Запрос для получения access_token и refresh token.

    3. Запрос для получения access_token используя refresh token.

  2. Взаимодействие из 1С с Google Sheets.

    1. Получение списка листов таблицы гугл

    2. Чтение данных из таблицы гугл и заполнение табличного документа 1С.

    3. Запись данных из табличного документа 1С в таблицу гугл.

  3. Дополнительно

    1. Сохранение параметров подключения и списка листов таблицы в данных формы.

    2. Условное представление элементов в зависимости от срока действия токена.

    3. Формирование ссылки для перехода к выбранному листу таблицы при выборе названия листа из списка.

Используемые источники

  1. В качестве основы были использованы обработки для обычных форм разработанные пользователем: echo77.

  2. Некоторая информация была получена из статей на infostart.ru.:

    1. Google Analytics API, Oauth2.0 и 1c8

    2. Получение доступа к скачиванию гугл-таблицы

  3. Информация с сайта гугл:

    1. Google API Console

    2. Using OAuth 2.0 to Access Google APIs

    3. Refreshing an access token (offline access)

Инструкция

Авторизация в google

Получить client ID and client secret

Необходимо используя Google API Console в рамках созданного проекта получить client ID and client secret

Запросить "Код доступа"

Для доступа к данным гугл необходимо при каждом запросе передавать access_token. При этом чтобы получить access_token, необходимо сначало получить authorization code "Код доступа".

В обработке на закладке “Параметры подключения”, при нажатии на “Запросить” - открывается окно браузера и выполняется переход на страницу авторизации гугл. При этом обязательно должны быть указаны “Client id” и “Client secret”, полученные на предыдущем шаге.

Код доступа можно использовать только один раз для получения access_token. Если access_token утерян, необходимо получить новый “Код доступа” который использовать для получения нового access_token (или использовать refresh token для получения нового access token)

Получить access_token

Любой запрос для доступа к данным требует указания access token-а в параметрах запроса. Для первичного получения “access token”, необходимы: “Client id”, “Client secret” и “Код доступа”.

“Aсcess token” имеет непродолжительное время жизни (3600 сек.).После окончания действия, необходимо:

- либо использовать refresh token и обновить access token

- либо опять повторить процесс: получить код доступа, используя новый код доступа - получить новый access token.

При нажатии "Получить" будет выполнен запрос для получения Аccess token и Refresh token, и будет рассчитан “Срок действия токена”

Запрос возвращает .json содержащий требуемую информацию, и токены заполняются в соответствующие поля на форме обработки:

После получения “Access token”, пока он действует можно обращаться к данным в гугл.

 

Обновить access_token используя refresh_token

После того как истек срок действия “access token” или раньше, можно использовать “refresh token”, чтобы получить новый access token, без использования браузера и получения кода доступа.

Существуют определенные ограничения на использование “refresh token” (подробности по ссылке)

Работа с таблицей гугл (Google Sheet)

Подключение к таблице и получение списка листов таблицы

Необходимо указать ссылку на таблицу гугл в строке “Ссылка на таблицу google”.

При указании ссылки, программа получит “ID таблицы”, выполнит подключение к таблице, прочитает список листов таблицы и заполнит список выбора для поля “Лист”.

При выборе листа из списка - формируется новый URL для доступ к таблице. По кнопке “открыть” выполняется переход в браузере к выбранному листу таблицы.

 

Чтение данных из таблицы гугл в табличный документ 1С

По кнопке “Прочитать таблицу” выполняется запрос, результат запроса обрабатывается и заполняется табличный документ

 

Запись данных табличного документа 1С в таблицу гугл

По кнопке “Записать таблицу” выполняется запрос в котором передается информация для записи в таблицу гугл.

18.05.18. Удаление строк из таблицы Google

Для удаления строк необходимо указать диапазон индексов С - ПО. Нумерация с 0-ля. Например для удаления 2-ой строки в таблице необходимо задать диапазон С = 1 ПО = 2.

 
 Под спойлером процедура демонстрирующая удаление строк:

 

148

Скачать файлы

Наименование Файл Версия Размер
Чтение и запись из таблиц гугл (google sheets) в табличный документ 1С (8.3, управляемые формы):
.epf 18,52Kb
18.05.18
144
.epf 1.0.2 18,52Kb 144 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. Dzenn 345 10.04.18 12:36 Сейчас в теме
Спасибо за такие возможности! Не скачивал (эту версию), но уверен, что хорошая, годная разработка. Пользователям 1С теперь доступны чтение/запись гугл таблиц, и это прекрасно.
2. Ko1t 226 10.04.18 13:19 Сейчас в теме
(1) И Вам спасибо за оценку :)
3. Артано 663 11.04.18 04:56 Сейчас в теме
4. Duketm 28 11.04.18 09:17 Сейчас в теме
Хорошая работа. Спасибо. Актуальная вещь
5. UncleVader 128 11.04.18 09:27 Сейчас в теме
6. Ko1t 226 11.04.18 09:37 Сейчас в теме
Артано Майаров, Евгений Сахненко, Вадим Скакун, спасибо коллеги :)
7. DrAku1a 1301 11.04.18 10:48 Сейчас в теме
Респект! Очень пригодится!
8. Ko1t 226 11.04.18 11:11 Сейчас в теме
9. starik-2005 1961 12.04.18 10:16 Сейчас в теме
10. Ko1t 226 12.04.18 10:17 Сейчас в теме
11. logarifm 1048 13.04.18 01:48 Сейчас в теме
Пробежался глазами - годный инструмент но не проверялеще. +
13. Ko1t 226 13.04.18 09:40 Сейчас в теме
12. KAV2 13.04.18 03:24 Сейчас в теме
14. Ko1t 226 13.04.18 09:41 Сейчас в теме
(12) Smartsheet судя по всему классная штука, но для меня на данный момент не актуальная :)
15. rintik 15 17.05.18 12:05 Сейчас в теме
Спасибо большое. Работает. Только не могу разобраться как удалять строки.
16. Ko1t 226 17.05.18 12:38 Сейчас в теме
(15) Пожалуйста ).
Ссылка на пример запроса по удалению строк или колонок:
https://developers.google.com/sheets/api/samples/rowcolumn#delete_rows_or_columns
17. rintik 15 17.05.18 13:01 Сейчас в теме
(16) Да пытаюсь разобраться, только у гугла для меня один ответ ""message": "Invalid JSON payload received. Unknown name \"requests\": Cannot find field.","
18. Ko1t 226 18.05.18 12:41 Сейчас в теме
(17) Я попробовал реализовать удаление строк, у меня получилось.
На форме обработки я добавил 2 реквизита: "УдалитьИндексС","УдалитьИндексПО".
Например для удаления 2-ой строки в таблице надо указать:
УдалитьИндексС = 1 (индексация начинается с 0-ля);
УдалитьИндексПО = 2;
Под спойлером код процедуры:
Процедура УдалитьСтрокиОбработка()
19. rintik 15 18.05.18 14:24 Сейчас в теме
(18) Круть. Еще раз спасибо большое.
20. kolya_tlt 11 23.05.18 09:46 Сейчас в теме
нравятся мне проекты ради проектов :)
21. Ko1t 226 23.05.18 11:21 Сейчас в теме
(20) как показывает практика, полученный в процессе опыт конвертируется в итоге в материальные и не только блага :)
24. user658699_heinrich2906 30.06.18 14:55 Сейчас в теме
Подскажите:
1. Код обработки открытый?
2. Реализована ли возможность формировать многостраничную гугл таблицу?
3. Можно ли из обработки прописать пользователей (гугл), которым будет доступна созданная гугл таблица?
25. Ko1t 226 30.06.18 23:07 Сейчас в теме
(24)
1. Код обработки открытый?

> Да
2. Реализована ли возможность формировать многостраничную гугл таблицу?

> Нет
3. Можно ли из обработки прописать пользователей (гугл), которым будет доступна созданная гугл таблица?

> Нет
p.s.
Все что может обработка изложено в описании со скриншотами :)
26. leobrn 197 06.07.18 14:21 Сейчас в теме
Если считывать публичную таблицу обязательно ли нужны токены доступа?
28. Ko1t 226 09.07.18 12:05 Сейчас в теме
(26)
Данная обработка при каждого обращении к данным передает в заголовке токен доступа.

Какая авторизация нужна для чтения публичных и приватных данных, а также ответ на ваш вопрос можно получить по ссылке: https://developers.google.com/sheets/api/guides/authorizing
30. Ko1t 226 09.07.18 12:24 Сейчас в теме
(26)
Данная обработка при каждом обращении к данным передает токен доступа.
Я не проверял как будет происходить доступ к публичным данным, но почитать об этом можно по ссылке: https://developers.google.com/sheets/api/guides/authorizing
31. torch 46 02.10.18 17:05 Сейчас в теме
Запустил Вашу обработку. Не могу получить листы моей гугл-таблицы. Ошибка:
{
"error": {
"code": 403,
"message": "Request had insufficient authentication scopes.",
"status": "PERMISSION_DENIED"
}
}
Судя по описанию жалуется на способ идентификации. Непонятно... Может сталкивались с этой ошибкой?
32. Ko1t 226 02.10.18 18:17 Сейчас в теме
(31)
Добрый день, судя по ошибке есть какая-то проблема с токеном доступа который вы используете.
Используемый вами токен доступа не позволяет обращаться к запрашиваемым данным.
Я лично с такой ошибкой не сталкивался.
Моя рекомендация будет, заново проделать настройки как это написано в разделе "Инструкция/Авторизация в google", сверяясь с приведенными скринами экрана.
35. kassbar 94 01.03.19 20:58 Сейчас в теме
(31) "Request had insufficient authentication scopes" не задан ни один параметр scopes очевидно.
33. torch 46 18.11.18 18:05 Сейчас в теме
Господа, еще один трабл. Я при каждом изменении остатков обновляю гугл-таблицу, но с определенного момента у клиентов в гугл-таблице перестали обновляться данные. У одного из них я почистил кеш и куки - все заработало. Но это не выход - клиентов много и всем объяснять нет возможности, писать инструкции без толку. Предполагаю что надо как-то снести все версии изменений гугл-таблицы и оставить только последнюю, актуальную версию, но не могу найти где это делается. Может кто-то сталкивался с такой проблемой?
34. Ko1t 226 24.11.18 11:59 Сейчас в теме
(33)
Добрый день. Я пробовал искать решения по очистке истории...
В основном сталкивался с такими ответами:
https://productforums.google.com/forum/#!topic/docs/h_NWUzDL3Po
Т.е. удалить историю нельзя программными способами.
История очищается только если делать копию файла.
36. kassbar 94 01.03.19 21:01 Сейчас в теме
у кого есть рабочий пример как получать данные не диапазонами, а по отбору на значения в колонках ?
например, получить все строки со значением в колонке А1 = 1.

можно ли получить например только колонки А и С ?
40. Ko1t 226 03.03.19 21:53 Сейчас в теме
(36)
у кого есть рабочий пример как получать данные не диапазонами, а по отбору на значения в колонках ?
например, получить все строки со значением в колонке А1 = 1.

Судя повсему используя текущий API это не получиться сделать. Доступны только следующие возможности фильтации при запросе данных:
https://developers.google.com/sheets/api/reference/rest/v4/DataFilter
Что-то похожее можно сделать для данных отображаемых при просмотре используя Filters
Возможно если программно выполнить SetBasicFilterRequest и затем чтение из таблицы, будут прочитанных отфильтрованные данные... надо пробовать.

можно ли получить например только колонки А и С ?

https://developers.google.com/sheets/api/guides/concepts#a1_notation
https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/batchGetByDataFilter
Судя по всему, что используя batchGetByDataFilter, можно задать отдельные dataFilters[], и получить только колонки А и С
41. kassbar 94 04.03.19 00:13 Сейчас в теме
(40)
Возможно если программно выполнить SetBasicFilterRequest и затем чтение из таблицы, будут прочитанных отфильтрованные данные... надо пробовать.

пробовал, через batchupdate ставил фильтры - не работает, возвращает всю таблицу.
Как-то очень печально такое от гугла видеть.

Пришлось через запросы "select..." к таблице получать нужные данные
"https://docs.google.com/spreadsheets/d/id_таблицы/gviz/tq?tqx=out:html&tq=select*"
выгрузить в csv: "tqx=out:csv"

работает только для опубликованных "по ссылке" таблиц
37. kassbar 94 01.03.19 22:58 Сейчас в теме
а для чего такая сложная схема с идентификацией ? можно через постоянный API-ключ получать доступ:
https://sheets.googleapis.com/v4/spreadsheets/idтаблицы/?key=АпиКлюч&includeGridData=true
38. Ko1t 226 03.03.19 16:43 Сейчас в теме
(37)
а для чего такая сложная схема с идентификацией ?

В рамках данной обработки реализован рекомендуемый Гуглом метод аутентификации OAuth 2.0 описанный по ссылке: https://developers.google.com/identity/protocols/OAuth2
можно через постоянный API-ключ получать доступ

Я не уверен что правильно понял, что вы имеете ввиду, но мне было бы интересно узнать подробнее.
Сбросьте пжл. ссылки где можно изучить детали про такой способ подключения? Может быть он более простой, но менее безопасный?
39. kassbar 94 03.03.19 19:22 Сейчас в теме
(38)
Я не уверен что правильно понял, что вы имеете ввиду

я же написал запрос, которым можно получить доступ к опубликованной по ссылке таблице, зная ее id и свой apikey.
вводите в этом запросе id таблицы, api-ключ гугла и получаете ее в json.
Лично мне не требовалось вносить в нее изменения, только читать данные, поэтому я дальше не копал.
42. kassbar 94 04.03.19 17:57 Сейчас в теме
Еще вопрос, получалось ли у кого-то выгрузить не публичный файл типа "таблица Гугл" (доступ открыт пользователю, публичной ссылки нет) через API GoogleDrive ?
У меня запросы типа
Новый HTTPЗапрос("drive/v3/files/" +idТаблицы+"/export/?mimeType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
всегда возвращает ошибку "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup".
Подключил API Google+ и API Google Drive с областью действия "https://www.googleapis.com/auth/drive"
43. simy4 11 16.03.19 11:32 Сейчас в теме
Укажите пожалуйста в вашей публикации, что для функционирования обработки требуется наличие БСП. Для меня данное требование оказалось сюрпризом. Неприятным.
44. Ko1t 226 16.03.19 14:47 Сейчас в теме
(43) Добрый день.
Да, действительно в обработке использовано 3 функции, которые входят в состав БСП:
ОбщегоНазначенияКлиентСервер.СообщитьПользователю()
СтроковыеФункцииКлиентСервер.ВставитьПараметрыВСтроку()
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку()
Как мне кажется, основные сценарии использования данной обработки предполагают наличие данных функций в составе конфигурации, из которой данная обработка запускается.
В противном случае, мне кажеться исправление проблемы занимает относительно мало времени.
При этом внедрение БСП не требуетсся, а требуется просто замена в коде конфигураций всех вызывов обозначенных функций на свои локальные функции. Понять из названия и передаваемых параметров что делают данные функции, как мне кажется не составляет труда.
Но да, я согласен что следует упоминуть в описание обработки данный нюанс, что я и сделаю в ближайшее время.
45. German_Tagil 7 19.03.19 06:13 Сейчас в теме
Добавил в избранное...
меня заинтерисовало - переходим на БП 3.0
на КА 1.1 у меня была допиленная обработка https://infostart.ru/public/66842/
Может кто-то находил подобное на УФ?
46. Ko1t 226 19.03.19 10:58 Сейчас в теме
(45) Добрый день, если я правильно понял что вам надо, то это функционал из БСП
https://its.1c.ru/db/bsp302doc#content:1867:1
5.18 Загрузка данных из файла
47. German_Tagil 7 20.03.19 05:42 Сейчас в теме
Доступ к данному материалу ограничен
48. Mogilnikova 52 20.03.19 16:04 Сейчас в теме
Добавила в избранное. Однажды ненастным днем оно мне пригодится!
49. German_Tagil 7 21.03.19 10:35 Сейчас в теме
(48) угу я точно также поступаю
50. Lera_1c 15 01.08.19 11:08 Сейчас в теме
Очень пригодилось! Все разжевано, благодарю!
51. Ko1t 226 01.08.19 12:12 Сейчас в теме
52. skyboy13 10 06.09.19 17:46 Сейчас в теме
А на автоматическое обновление таблицы в регламентных задачах ее заточить можно?
53. Ko1t 226 08.09.19 11:23 Сейчас в теме
(52) возможно для таких задач лучше подойдет такое решение как по ссылке https://infostart.ru/public/805071/ (хотя я сам лично пока его не изучал досконально)
54. Cthulhu 09.10.19 13:55 Сейчас в теме
(53) не т.е. если оттуда аккуратно "дернуть" блок авторизации и заменить в этом решении - то его можно будет использовать для регламентных заданий - я правильно понимаю?..
55. Ko1t 226 12.10.19 11:07 Сейчас в теме
(54) Для регламентных обработчиков, в теории (я не пробовал), я полагаю также можно использовать и OAuth 2.0 (именно его я использую в моей публикации).
Сценарий при этом может быть такой:
1. Интерактивно: Получаем Код доступа (требуется ручной ввод данных)
2. Автоматически: Получаем и сохраняем access_token и refresh_token на основании Кода доступа
3. Автоматически: По расписанию: Выполняем необходимую обработку данных в гугл таблицах, при этом контролируя время жизни access_token.
4. Автоматически: При окончании срока действия: Обновляем access_token используя refresh_token
5. Автоматически: Если что-то пошло не так: Отправляем оповещение на почту ответственному за процесс, чтобы он вмешался интерактивно, и например заново запросил Код доступа.
6. Интерактивно: Если требуется: Переходим к Шаг-1.
56. Cthulhu 12.10.19 11:19 Сейчас в теме
(55) о. т.е. стартовое получение рефреш-токена дает возможность в дальнейшем в любое время (без повторного диалогового логина) программно получать свежий токен и с ним обновлять целевую гугл-таблицу, да? пожалуй, так и бум делать...
а переноса форматирования нет - я правильно понимаю?.. наверное, оно и понятно - там нешуточное ковыряние в api команд подразумевается - поэтому, да?..
и - спасибо огромное, очень толковое решение!
...
57. Ko1t 226 12.10.19 11:26 Сейчас в теме
(56)
о. т.е. стартовое получение рефреш-токена дает возможность в дальнейшем в любое время (без повторного диалогового логина) программно получать свежий токен и с ним обновлять целевую гугл-таблицу, да?

Да. Именно так. Полагаю всё должно заработать!
p.s.
Спасибо за оценку!
Оставьте свое сообщение

См. также

Вебхук. Путь Телеграма 54

Статья Программист Конфигурация (md, cf) v8 Абонемент ($m) Внешние источники данных Интеграция

Долгое (на самом деле нет) и нелегкое путешествие телеграма к неведомым (из за РКН) конфигурациям 1С. Памятка себе.

1 стартмани

03.10.2019    2503    5    platonov.e    10       

Описание формата внутреннего представления данных 1С в контексте обмена данными 143

Статья Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных Разработка

Фирма 1С не рекомендует использовать внутреннее представление данных для любых целей, которые отличны от обмена с 1С:Предприятием 7.7. Но сама возможность заглянуть на "внутреннюю кухню" платформы с помощью функций ЗначениеВСтрокуВнутр(), ЗначениеВФайл(), ЗначениеИзСтрокиВнутр() и ЗначениеИзФайла(), дала возможность сообществу программистов 1С разработать новые приемы разработки и анализа. Так, именно на использовании внутреннего представления был построен алгоритм "быстрого массива", который позволяет практически мгновенно создать массив в памяти на основании строки с разделителями. С помощью разбора внутреннего представления можно "на лету" программным кодом выполнить анализ обычной формы и даже сделать редактор графической схемы. Во внутреннем формате сохраняют свои данные между сеансами различные популярные внешние обработки. А еще это возможность сделать быстрый обмен с внешними системами.

1 стартмани

06.09.2019    4349    4    Dementor    27       

Согласование задач из Outlook 50

Инструменты и обработки Программист Расширение (cfe) v8 1cv8.cf Windows Абонемент ($m) Внешние источники данных

Согласование задач непосредственно из почтовой программы, в моем случае Outlook 2013 без каких-либо дополнительных настроек. Из почты отправляется GET запрос к HTTP-сервису 1С, который в свою очередь выполняет задачу.

1 стартмани

06.09.2019    2220    6    duhh    17       

Обмен большими данными между клиентом и сервером 65

Статья Программист Внешняя обработка (ert,epf) v8 Абонемент ($m) Внешние источники данных

В статье рассматривается вопрос передачи больших объемов данных, превышающих теоретический лимит сеансовых данных (4Гб за вызов) (они же временное хранилище) как с клиента на сервер, так и в обратном направлении.

1 стартмани

27.08.2019    3398    1    logos    17       

Использование HTTP-сервиса для создания "фронтенда" HTML/CSS/jQuery с кэшированием 94

Статья Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) WEB

В статье описан способ создания "фронтенда" на HTML/CSS/jQuery и скрипт кеширования AJAX запросов на PHP.

1 стартмани

06.08.2019    4779    6    Sedaiko    22       

Шаблон http-сервиса для вашего проекта 70

Инструменты и обработки Программист Архив с данными v8 v8::Mobile 1cv8.cf Абонемент ($m) Внешние источники данных WEB Мобильная разработка

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

2 стартмани

04.05.2019    5969    46    MarkoSokolov    47       

"Мобильный ТСД" - инвентаризация и сбор штрихкодов для iOS и Android 20

Инструменты и обработки Программист Пользователь Расширение (cfe) v8 v8::Mobile Розница УНФ ERP2 УТ11 КА2 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика УУ Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Абонемент ($m) Внешние источники данных Сканер штрих-кода Терминал сбора данных Работа с интерфейсом Мобильная разработка

Простой мобильный терминал сбора данных для iOS и Android, не требующий сложных настроек и установки дополнительных программ. Для выгрузки базы штрихкодов и загрузки собранных штрихкодов в документы учетной системы используется Яндекс Диск или облачный сервис и расширение конфигурации. Работает с конфигурациями Розница 2, УНФ 1.6, УТ 11, ERP, КА2.

3 стартмани

22.04.2019    10013    53    suepifanov    61       

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки 121

Статья Программист Архив с данными v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных Обмен через XML WEB Разработка

В этой статье мы рассмотрим путь и основные моменты создания небольшого вэб-сервиса, который мы называем "Онлайн Прайс-лист". Выгрузка из 1С, бэкенд, фронтенд, получение заказов в 1С.

1 стартмани

22.04.2019    15900    14    riposte    63       

Аутентификация на внешних сервисах посредством OAuth 80

Статья Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) Информационная безопасность Внешние источники данных

Пример подключения к сервисам Google из 1С с помощью протокола OAuth и получения данных с внешнего сервиса.

1 стартмани

03.04.2019    6034    4    binx    5       

Телеграм + 1С + Вебхуки + Апач + Самоподписанный сертификат 48

Статья Программист Архив с данными v8 Windows Абонемент ($m) Внешние источники данных

Много строк исписано про интеграцию Телеграма и 1С. Но нигде не увидел полной инструкции по установке и настройке вебхуков. Попробую её написать.

1 стартмани

26.02.2019    6559    6    alexlx    29       

1С и WebKit. Вариант взаимодействия 46

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) WEB

В результате перехода на WebKit тип свойства Документ у поля, имеющего вид ПолеHTMLДокумента, изменился с COMОбъект на ВнешнийОбъект. Также изменилась DOM модель документа, доступная через это свойство.

2 стартмани

23.02.2019    9735    29    mi1man    35       

Строим маршруты на картах в 1С с помощью OpenStreetMap, OSRM и Leaflet 74

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Транспорт, автопарки, такси Абонемент ($m) WEB

Краткая статья о том как вывести на карту (в 1С) маршруты с помощью OpenStreetMap, OSRM и Leaflet. По данной системе очень мало примеров, но так как OpenStreetMap является бесплатным сервисом и не требует никаких ключей и регистраций, и является довольно мощным механизмом, решил написать небольшую статью "как это сделать?". В первую очередь скажу, все намного проще, если вы используете последнюю версию платформы (8.3.14), где есть поддержка практически всех браузеров (IE 11, EDGE, Mozilla), но что делать если у нас не самая свежая платформа, где поддержка только IE 9?

2 стартмани

12.02.2019    8967    51    Ditron    15       

Универсальное расширение 1С для Google Таблиц и Документов 95

Статья Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Внешние источники данных

Эта статья для тех, кто использует G Suite и 1С. Готовое решение для выгрузки отчетов и печатных форм из баз 1С в Google Диск в формате Google Таблиц и Google Документов. Информация по его внедрению. Описание создания и настройки проекта в GCP.

1 стартмани

31.01.2019    6856    18    Maria18    12       

Коннектор: удобный HTTP-клиент для 1С:Предприятие 8 512

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных WEB Универсальные функции Инструментарий разработчика Универсальные обработки

Коннектор - библиотека для работы с HTTP запросами. Библиотека берет на себя всю рутину работы с HTTP запросами. Буквально в одну строку можно получать данные, отправлять, не заботясь о необходимости конструирования URL, кодирования данных и т.п.

1 стартмани

31.01.2019    25186    242    bonv    106       

Проверка VAT номеров 2

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

Обработка для вызова сервиса проверка VAT номера.

1 стартмани

26.11.2018    3688    wtlz    0       

Применение средств MS SQL R service для 1С 54

Статья Программист Нет файла v8 1cv8.cf MS SQL Абонемент ($m) Внешние источники данных

Некоторое время назад Microsoft добавила в MS SQL сервер службы машинного обучения, позволяющие выполнять программный код на языках программирования R и Python. В статье будет продемонстрирована общая схема и принцип того, как можно использовать данные службы в контексте разработки на 1С. 

1 стартмани

25.11.2018    9598    Robbi    14       

Автоматическое создание XSD-файла по выбранным типам объектов конфигурации для загрузки в XDTO пакет в 1С 8.3 88

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8::УФ 1cv8.cf Россия Абонемент ($m) WEB

Данная обработка позволяет создать XSD-файл по выбранным реквизитам Справочника, Документа, Плана видов характеристик и даже Плана обмена. В обработке есть возможность выбрать, какие стандартные и обычные реквизиты, а также реквизиты табличных частей попадут в XSD-файл. Также есть опциональная возможность автоматически добавить в XSD-файл все ссылочные типы, находящиеся в реквизитах (рекурсивным обходом).

1 стартмани

22.10.2018    6900    48    q4a    7       

Мониторинг показателей систем 1С 8.3 с помощью Zabbix 162

Инструменты и обработки Системный администратор Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Внешние источники данных Zabbix

Опишу свой опыт мониторинга наших систем 1С с помощью Zabbix и ту пользу, которую можно извлечить из этого.

1 стартмани

05.10.2018    20292    36    akimych    48       

Работа с публикациями "Инфостарт" 13

Инструменты и обработки Программист Архив с данными v8 УУ Абонемент ($m) Практика программирования О сообществе WEB

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    8213    10    RocKeR_13    12       

SOAP для чайников 86

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Обмен через XML WEB

Немножко про SOAP сервис. И пример работы с подключением и получением данных по SOAP за 5 минут.

1 стартмани

05.09.2018    18453    25    dusha0020    18       

Класс-обработка “Работа с картами Яндекс” 58

Инструменты и обработки Программист Конфигурация (md, cf) v8 Абонемент ($m) Разработка внешних компонент WEB

Как показать точку или маршрут на карте Яндекс. Как получить координаты по строке адреса (геокодирование).

1 стартмани

01.08.2018    10576    129    RSConsulting    13       

Опыт интеграции мессенджера Telegram c 1C 98

Статья Программист Нет файла v8 Абонемент ($m) Внешние источники данных

Статья будет полезна всем, кто интересуется возможностями интеграции 1С с мессенджером Telegram. Пустовой Вячеслав в формате короткого мастер-класса рассказывает о создании и настройке бота, позволяющего, к примеру, упростить процессы согласования платежей внутри компании, отгрузки со склада или получение оперативной информации о состоянии дебиторской задолженности.

19.07.2018    11807    411    VachKirp    31       

HTTP Сервисы: Путь к своему сервису. Часть 1 258

Статья Системный администратор Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Практика программирования WEB

Уже много было написано про http-сервисы, но то и дело всплывают «Новые» статьи по обмену между базами V8 по COM, что «Немножко» удивляет. Решил внести свои 5 копеек, поработаем с http-сервисом.

1 стартмани

15.07.2018    35114    15    dsdred    22       

Пример использования REST API Яндекс Диска 33

Инструменты и обработки no Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

Пример использования REST API Яндекс Диска: чтение диска, добавление каталога, загрузка файла, скачивание файлов или каталогов, удаление файлов или каталогов.

1 стартмани

26.06.2018    12379    23    MKFreeUser    12       

Обмен файловыми базами данных через Yandex диск 7

Инструменты и обработки no Приложение (exe) v8 Россия Windows Абонемент ($m) WEB

Выполнение операций обмена с Yandex диском для файловых БД, по протоколу WebDav, в автоматическом или ручном режимах.

1 стартмани

11.06.2018    9855    6    slimper    1       

RabbitMQ + 1С. Быстрый старт 78

Инструменты и обработки Программист Архив с данными v8 1cv8.cf Windows Абонемент ($m) Внешние источники данных

Внешняя компонента для отправки сообщения из 1С в кролика. Сервис прослушивания и перенаправления сообщений из кролика в http или web-сервис.

1 стартмани

10.06.2018    16596    71    Goleff74    38       

Чтение сжатого gzip, deflate HTTP ответа сервера. Без ВК. Уменьши время загрузки и сократи трафик в 3 раза 69

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

В платформе 1С:Предприятие не реализовано штатного механизма декодирования ответа веб серверов, в которых присутствует gzip сжатие. Некоторые использовали WinHttpRequest.5.1 , кто-то писал ВК. Друзья, хватит. Вот вам решение.

1 стартмани

08.06.2018    8027    44    Malfarion    14       

Конфигурация для просмотра публичных телеграм каналов 10

Инструменты и обработки Программист Конфигурация (md, cf) v8 Абонемент ($m) WEB

Просмотр и каталогизация в более удобном виде публичных телеграм каналов, групп и чатов.

1 стартмани

02.06.2018    9900    7    DO_WHILE_LOOP    7       

Telegram Native API 43

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8::УФ 1cv8.cf Абонемент ($m) Разработка внешних компонент Внешние источники данных

Взаимодействие с Telegram без Bot API. Только C++ компоненты. Только хардкор.

1 стартмани

24.05.2018    10706    27    Infactum    23       

Интеграция между Atlassian Jira и 1С:Предприятие 8.3 используя Jira REST API (выборка, создание и изменение запросов, чтение, создание и удаление записей о работах, чтение комментариев и другие возможности) 80

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Внешние источники данных WEB

Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с Atlassian Jira используя Jira REST API. Ключевые функции: выборка запросов с использованием JQL; добавление и изменение запросов; добавление, изменение и удаление записей о работах; чтение комментариев к запросам; сохранение всех ключевых параметров между сеансами работы. Тестирование проводилось на платформе 1С (8.3.11.2954) совместно с JIRA Server platform (7.3.7)

1 стартмани

24.04.2018    16803    113    Ko1t    63       

Простая и пошаговая интеграция Яндекс-Алисы и 1С 76

Инструменты и обработки Программист Конфигурация (md, cf) v8 Windows Абонемент ($m) WEB

Интеграция Алисы и 1С через http сервис на платформе 8.3.9. Используем виртуальный сервер, сертификат от letsencrypt, и делаем простые запросы к базе из Алисы.

1 стартмани

09.04.2018    14857    15    kiv1c    33       

Внешняя компонента для работы по Web-socket протоколу 21

Инструменты и обработки Программист Архив с данными v8 Windows Абонемент ($m) Разработка внешних компонент WEB

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

6 стартмани

30.03.2018    12912    9    Ditron    50       

Практикум по созданию обменов данными через протокол oData «за полдня» 98

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Россия Абонемент ($m) Практика программирования Внешние источники данных

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

1 стартмани

20.03.2018    18005    11    timm00    64       

Оповещения из ЗУП и ERP в TELEGRAM 71

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v8 ERP2 ЗУП3.x Абонемент ($m) Внешние источники данных

Начитался статей про интеграцию 1С -> Telegram, решил аккумулировать опыт и попробовать сделать какую-нибудь полезную обработку. Как результат - внешняя обработка, уведомляющая ответственных сотрудников по расписанию о необходимости оплаты отпусков, материальной помощи, премий. Данные посылаются в виде PDF файла (Отчет, созданный на основании макета). Можно использовать обработку как обучающую. Тестировалось на ERP 2.4.2.139, на ЗУП 3.X тоже должно работать.

1 стартмани

01.03.2018    9340    54    khabibullin.tu    14       

Построение маршрута доставки с расчётом расстояния для любой базы УФ 56

Инструменты и обработки Руководитель проекта Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Оптовая торговля Абонемент ($m) Универсальные обработки WEB

Графическое изображение маршрутного листа по картам гугл. Работает на любой конфигурации с управляемыми формами. Использует новую версию api google-карт от 13.02.2018 года под IE11.

10 стартмани

24.02.2018    18436    36    KorotkovRV    16       

А чё это вы здесь делаете, а? 142

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) WEB

Разработчикам тиражных обработок близка и понятна проблема обратной связи с пользователем. Много важного и полезного можно почерпнуть, зная, что делает бухгалтер, который запустил обработку. В большом мире вэба сбор статистики на сайте дело привычное и даже обязательное. Эта статья покажет практику применения инструментов сбора статистики из мира веба для обработок на платформе 1С:Предприятие.

1 стартмани

21.01.2018    16544    28    infosoft-v    42       

Практика доступа в базу 1С через протокол oData. Изменение данных 113

Статья Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных

Продолжаем знакомство с протоколом oData и в данной статье мы рассмотрим такие вопросы, как минимально необходимый багаж теоретических знаний, необходимый для работы, способы изменения доступных данных, а также с какими ограничениями можем при этом столкнуться. Осторожно, будет много скриншотов!

1 стартмани

30.12.2017    22663    85    Dementor    26       

Пример заполнения/создания файла XML из XSD схемы, используя XDTO 128

Статья Программист Документ XML v8 1cv8.cf Абонемент ($m) Обмен через XML WEB

Добрый день, коллеги! Наконец-то дошли руки написать сию статью. Хочу поделиться своим опытом по разбору xsd схемы используя Фабрику XDTO, а также связанным с этим XML файлом. Думаю, наверняка кому-то понадобится.

1 стартмани

21.12.2017    28552    40    sandybaev    23       

Сервер push сообщений “Push0k“ 18.05 12

Инструменты и обработки no Архив с данными v8 1cv8.cf Абонемент ($m) WEB

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

1 стартмани

19.12.2017    10394    11    PloAl    20       

Инструкция по настройке загрузки из ФСС электронных листков нетрудоспособности ЭЛН в документ 1С Начисление по больничному листу 57

Статья Программист Бухгалтер Архив с данными v8 КА1 ЗУП2.5 УПП1 Россия БУ Зарплата ФОМС, ПФ, ФСС Абонемент ($m) Внешние источники данных

Клиент (страхователь) работает в программе "1С Зарплата и управление персоналом ред.2.5" сдает отчетность через Контур или СБИС и не собирается подключать 1С-Отчетность, при этом хочет загружать электронные больничные в программу 1С Зарплата. Подобная ситуация может быть и для других конфигураций в которых есть документ "Начисление по больничному листу", например Комплексная автоматизация 1.1, Управление производственным предприятием 1.3.

1 стартмани

28.11.2017    104446    179    rusmil    115       

Проверка орфографии средствами Yandex Speller 77

Инструменты и обработки no Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Универсальные обработки WEB

Проверка орфографии средствами Yandex Speller с опциями и коррекцией ошибок. Возможность вызова как с сервера, так и с клиента (с последующим исправлением).

1 стартмани

09.11.2017    13057    49    🅵🅾️🆇    38       

Ведение локального каталога обработок с Инфостарт 67

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Универсальные обработки WEB

Обработка наводит порядок в ваших скачанных и локально хранимых обработках с Инфостарта. Это особенно удобно тем коллегам, которые уже скачали немалый объем обработок и хотят получить удобный инструмент навигации по списку.

1 стартмани

06.10.2017    18264    55    rpgshnik    48       

Подсистема Вики - интеграция 1С и сайта под управлением MediaWiki 90

Инструменты и обработки Программист Архив с данными v8 Абонемент ($m) WEB

Редактирование статей сайта Mediawiki из 1С. Формирование функционального описания конфигурации на сайте Вики.

1 стартмани

19.09.2017    20502    31    shmalevoz    18       

1С и MongoDB: дружба начинается с RESTHeart'а 44

Статья Программист Архив с данными v8 Windows Абонемент ($m) Внешние источники данных

Краткое описание того, как подружить MongoDB и 1С: Предприятие используя один из предлагаемых на официальном сайте RESTFul сервисов - RESTHeart.

1 стартмани

03.07.2017    35676    6    Silenser    8       

Торговля на биржах криптовалют 63

Отчеты и формы Бизнес-аналитик Внешняя обработка (ert,epf) v8::УФ 1cv8.cf Финансовые услуги, инвестиции Абонемент ($m) Внешние источники данных

Обработка позволяет наблюдать и торговать в реальном времени на биржах.

5 стартмани

29.06.2017    19346    155    capwell    74       

«Горыныч - то НЕ НАСТОЯЩИЙ!» … или О Конвертации Данных ред.3 (КД 3) и обменах в универсальном формате Enterprise Data… доступным русско-народным языком 58

Инструменты и обработки Программист Архив с данными v8 КД Абонемент ($m) Внешние источники данных Обмен через XML Перенос данных из 1C8 в 1C8

Тем, кто хочет быстро разобраться с темой инструмента Конвертация данных 3.0 и технологией обмена по новому формату 1С, активно применяемому во всех новых конфигурациях от 1С на БСП, расширяющем возможности интеграции, пакет полезных материалов.

1 стартмани

13.06.2017    14120    135    Davlad_A    16       

Что такое HMAC и JWT и как это использовать в 1С 94

Статья Программист Архив с данными v8 1cv8.cf Абонемент ($m) Внешние источники данных

Лёгкая статья про стандарты HMAC и JWT с небольшой теорией и исходным кодом.

1 стартмани

20.04.2017    15083    74    keypax    37       

Процессор вывода результата компоновки данных в JSON. И не только... 108

Инструменты и обработки Программист Конфигурация (md, cf) v8 Абонемент ($m) Внешние источники данных

У каждого разработчика возникают задачи интеграции решений. Основная масса решений призвана вывести данные из «1С:Предприятие 8» в обусловленном формате. Разработчики используют огромную часть своих драгоценных ресурсов на реализацию определенной структуры вывода и необходимого формата. А что если...

1 стартмани

14.02.2017    18567    42    pbazeliuk    27