Получение отчетов из 1С в Телеграм с помощью расширения Боцман

07.12.22

Интеграция - Мессенджеры и боты

Обработка, реализующая функционал получения выбранных отчетов 1С через Телеграм-бот. Параметры отчетов также можно задавать через бот перед формированием отчета или использовать предустановленные параметры. Выбор отчетов, предустановленных параметров и параметров для установки происходит стандартными средствами БСП. Демо этой обработки работает в телеграм: @Telega1C_Bot по адресу: https://t.me/Telega1C_Bot

Скачать исходный код

Наименование Файл Версия Размер
Обработка ОтчетыВТелеграм
.zip 5,12Kb
4
.zip 5,12Kb 4 Скачать
Обработка ОтчетыВТелеграм + расширение Боцман
.zip 94,85Kb
19
.zip 94,85Kb 19 Скачать

Моё расширение для создания ботов Телеграм в 1С уже стало достаточно популярным. Вашему вниманию предлагается обработка-бот для Боцман, которая позволяет формировать и получать отчеты из 1С прямо в мессенджере Телеграм.

Обработка тестировалась на конфигурациях УТ 11.4, УТ 11.5 (платформа 8.3.14), но также ожидаемо будет работать на всех конфигурациях, использующих Библиотеку стандартных подсистем (БСП), из которой используется функционал подключения внешних отчетов и обработок и сохранения вариантов отчетов.

 

Быстрый старт

Настройки бота в Боцман

Создание бота в Телеграм и установка расширения описана в статье Боцман: Телеграм бот на 1С за 10 минут. Для отправки отчетов в Телеграм создайте в расширении Боцман бота с обработкой ОтчетыВТелеграм, подключенной через систему внешних отчетов и обработок.

Настройки бота показаны на рисунке ниже. Я использую getUpdates, чтобы избежать публикации веб-сервиса в целях безопасности:

 

 

На вкладке Параметры создайте параметр ИмяПользователяОтчетов и задайте строковое значение полного имени пользователя, отчеты которого будут доступны для получения в Телеграм. Я создал специального пользователя ТГ_Отчеты, которому запрещен в ход в программу. Он используется только в настройках вариантов отчетов БСП (об этом ниже):

 

 

После этих действий если вы перейдёте в Телеграм и нажмёте /start бот должен сообщить вам, что для указанного пользователя нет настроенных отчётов:

 

 

Настройки отчетов

Для добавления отчетов, которые будет формировать бот зайдите в Главное -> Все отчёты. Боту будут доступны те отчёты, право использования которых явно указано для пользователя отчетов (в моем случае ТГ_Отчеты). Для редактирования прав в правой части выберите необходимый отчет или вариант отчета и нажмите Изменить...

 

 

Параметры отчетов

В боте будут доступны для выбора только те параметры, которые в форме варианта отчета отмечены для быстрого выбора:

 

 

При такой настройке сохраненного варианта бот при выборе отчета даст возможность ввести параметры:

 

 

Для справочников при этом всегда возможен выбор групп и элементов не зависимо от настроек отчета. При выборе группы будет использоваться отбор ВИерархии, при выборе элемента отбор Равно. Если значение на выбрано указанный отбор использоваться не будет.

Отчеты без выбора параметров

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

 

 

Получение отчета

После нажатия кнопки сформировать в боте отчет начнет формироваться и по окончании будет прислан ботом в виде файла Excel:

 

 

Заключение

У бота есть определенные ограничения на тип параметров отчетов (пока не поддерживается ввод строк и чисел). Если вы с ними столкнётесь - пишите в комментарии, я оперативно исправлю и вышлю вам новую версию.

Попробовать как работает бот можно в демо боте телеграм @Telega1C_Bot

Телеграм Отчеты Бот

См. также

SALE! 25%

Конструктор ботов Телеграм, редакция 2

Мессенджеры и боты Платформа 1С v8.3 Платные (руб)

Развитие популярного решения для интеграции мессенджера Telegram с нашей любимой 1С.

15000 11250 руб.

18.06.2021    59330    294    255    

348

SALE! 25%

Что нам стоит бота построить? Нарисуем - будет жить! Графический конструктор телеграм-ботов/Telegram

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 9900 руб.

27.12.2021    33753    82    159    

177

Легкий документооборот (+чат-бот для Telegram)

Документооборот и делопроизводство (СЭД) Мессенджеры и боты Учет документов Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 Платные (руб)

Расширение для согласования справочников и документов в конфигурациях "1С: Бухгалтерия 3.0", "Управление нашей фирмой", "1С ERP Управление предприятием", "Бухгалтерия государственного учреждения". Ролевая адресация, условная маршрутизация, последовательное и параллельное согласование, уведомление о новых задачах на почту, блокировка объектов в зависимости от статуса, запрет проведения в зависимости от статуса, автозапуск процессов согласования, отчеты по исполнительской дисциплине. Не требуется снятие конфигурации с поддержки. Настройка без программирования. Версия для 1cfresh.com. Сертификат 1С-Совместимо.

14900 руб.

15.11.2018    27986    26    48    

58

Email, SMS, Telegram рассылки из 1С - Директ Маркетинг

Управление взаимоотношениями с клиентами (CRM) Мессенджеры и боты SMS рассылки Email рассылки Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

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

7788 руб.

07.04.2014    83800    43    191    

128

Интеграция 1С с телефонией и чатами WhatsApp и Telegram

Телефония, SIP Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Россия Управленческий учет Платные (руб)

Интеграция 1С с телефонией и чатами WhatsApp и Telegram автоматизирует работу оператора со звонками и чатами и добавит вашей 1С элементы CRM системы. Храните всю историю взаимоотношений в 1С, не теряйте звонки, скачивайте, прослушивайте в любое время из карточки клиента или журнала звонков, держите руку на пульсе, используя блок отчетов по звонкам. Интегрируйте вашу 1С и чатами WhatsApp и Telegram, общайтесь с клиентами с единого номера и в одном окне. Теперь чаты с клиентами хранятся в карточке партнера в 1С, а не в личных мобильных ваших менеджеров.

4100 руб.

28.04.2022    14046    11    8    

36

Отправка в Telegram отчетов, печатных форм, присоединённых файлов и произвольных вложений. Загрузка получателей. Хранение истории отправок.

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Платные (руб)

Универсальное расширение для отправки (напрямую и через прокси) печатных форм, отчетов, присоединённых файлов, табличных документов и произвольных вложений в чат Telegram прямо из 1С. Ручная и автоматическая фоновая загрузка по расписанию идентификаторов получателей Telegram. Хранение истории отправок сообщений с ограничением по времени хранения и с автоматической очисткой по мере истечения срока хранения.

4800 руб.

26.12.2023    2334    2    0    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. d_vit 27 19.12.22 16:56 Сейчас в теме
После нажатия на кнопку выбора параметров "Номенклатура" не показывается установка параметров "Функция ПоказатьУстановкуПараметра(Сессия, Сообщение, Параметр)" . В чем может быть проблема. При настройках использовал режим "ИспользоватьGetUpdates"
2. DrWeb3 71 19.12.22 20:16 Сейчас в теме
(1) Так сложно сказать. Нужно хотя бы текст ошибки. В настройках бота поставить режим отладки и задать администратора, чтобы боту было куда слать диагностические сообщения. Присылайте ошибку сюда - посмотрим
3. d_vit 27 20.12.22 06:25 Сейчас в теме
ОШИБКА:
{Боцман ОбщийМодуль.Боцман.Модуль(1528)}: Ошибка при вызове метода контекста (Выполнить): {(2, 35)}: Синтаксическая ошибка
ВРЕГ(ПОДСТРОКА(Спр.Наименование, <<?>>ДЛИНАСТРОКИ(&ПараметрОтбора), 1)) КАК Буква
Прикрепленные файлы:
4. DrWeb3 71 20.12.22 08:50 Сейчас в теме
(3) Хм. А релиз 1С какой? Посмотрел сейчас. ДЛИНАСТРОКИ работает начиная с 8.3.20.1549

Можно вычислять ее вне запроса и передавать параметром. Типа того:

Запрос = Новый Запрос("ВЫБРАТЬ РАЗЛИЧНЫЕ
	                      |	ВРЕГ(ПОДСТРОКА(Спр.Наименование, &ДлинаСтроки, 1)) КАК Буква
	                      |ИЗ
	                      |	Справочник.БоцманБоты КАК Спр
	                      |ГДЕ
	                      |	Спр.Наименование ПОДОБНО &ПараметрОтбора
	                      |
	                      |УПОРЯДОЧИТЬ ПО
	                      |	Буква");
	Запрос.Текст = СтрЗаменить(Запрос.Текст, "БоцманБоты", Сессия.ВводЗначения_ИмяСправочника);
	Запрос.Параметры.Вставить("ПараметрОтбора", ТекущийОтбор);
	Запрос.Параметры.Вставить("ДлинаСтроки", СтрДлина(ТекущийОтбор));
Показать

Поменяю при следующем обновлении для лучшей совместимости
5. d_vit 27 20.12.22 10:52 Сейчас в теме
Использую Технологическая платформа 8.3.19.1467.

Попробовал запрос, который вот ошибка.

ОШИБКА:
{Боцман ОбщийМодуль.Боцман.Модуль(1555)}: Ошибка при вызове метода контекста (Выполнить): {(2, 2)}: Синтаксическая ошибка
<<?>>ВРЕГ(ПОДСТРОКА(Спр.Наименование, &ДлинаСтроки, 1)) КАК Буква

Еще проверил что возвращает ТекущийОтбор по запросу для совместимости:

ТекущийОтбор = Сессия.ВводЗначения_ТекущееЗначение + "%";
	
    ОтправитьСообщение(Сессия,ТекущийОтбор);
	
	//ТекущийОтбор возвращает "%", а не наименование справочника
	
	
	
	Запрос = Новый Запрос("ВЫБРАТЬ РАЗЛИЧНЫЕ
	| ВРЕГ(ПОДСТРОКА(Спр.Наименование, &ДлинаСтроки, 1)) КАК Буква
	|ИЗ
	| Справочник.БоцманБоты КАК Спр
	|ГДЕ
	| Спр.Наименование ПОДОБНО &ПараметрОтбора
	|
	|УПОРЯДОЧИТЬ ПО
	| Буква");
	Запрос.Текст = СтрЗаменить(Запрос.Текст, "БоцманБоты", Сессия.ВводЗначения_ИмяСправочника);
	Запрос.Параметры.Вставить("ПараметрОтбора", ТекущийОтбор);
	Запрос.Параметры.Вставить("ДлинаСтроки", СтрДлина(ТекущийОтбор));
	ТЗ = Запрос.Выполнить().Выгрузить();
	Если ТЗ.Количество() = 0 Тогда
		Возврат Неопределено;
	КонецЕсли;
	Возврат ТЗ.ВыгрузитьКолонку("Буква"); 
Показать


ТекущийОтбор просто возвращает %
6. DrWeb3 71 20.12.22 11:40 Сейчас в теме
(5) Да, ТекущийОтбор = % - это правильно. с ВРег та же история в запросе. Только в новых релизах. Обойти это сложнее. Если только обходить результат запроса в цикле и формировать массив вручную, который потом вернуть из этой функции.
7. d_vit 27 20.12.22 12:48 Сейчас в теме
(6)
Если только обходить результат запроса в цикле и формировать массив вручную, который потом вернуть из этой функции.


Покажите пример.
8. DrWeb3 71 20.12.22 13:08 Сейчас в теме
(7) Из запроса убрать ВРЕГ

Вместо
    ТЗ = Запрос.Выполнить().Выгрузить();
    Если ТЗ.Количество() = 0 Тогда
        Возврат Неопределено;
    КонецЕсли;
    Возврат ТЗ.ВыгрузитьКолонку("Буква"); 


Использовать что-то типа
    Выборка = Запрос.Выполнить().Выбрать();

    Буквы = Новый Массив();
    Пока Выборка.Следующий() Цикл
        Буквы.Добавить(ВРег(Выборка.Буква));
    КонецЦикла;
    Возврат Буквы;
Показать


Синтаксис не проверял, но в общем думаю понятно
9. d_vit 27 21.12.22 08:07 Сейчас в теме
Сработало! Вот текст функции.

Функция ПолучитьБуквыДляОтображения(Сессия)
	ТекущийОтбор = Сессия.ВводЗначения_ТекущееЗначение + "%";
		
	Запрос = Новый Запрос("ВЫБРАТЬ РАЗЛИЧНЫЕ
	| ПОДСТРОКА(Спр.Наименование, &ДлинаСтроки, 1) КАК Буква
	|ИЗ
	| Справочник.БоцманБоты КАК Спр
	|ГДЕ
	| Спр.Наименование ПОДОБНО &ПараметрОтбора
	|
	|УПОРЯДОЧИТЬ ПО
	| Буква");
	Запрос.Текст = СтрЗаменить(Запрос.Текст, "БоцманБоты", Сессия.ВводЗначения_ИмяСправочника);
	Запрос.Параметры.Вставить("ПараметрОтбора", ТекущийОтбор);
	Запрос.Параметры.Вставить("ДлинаСтроки", СтрДлина(ТекущийОтбор));
	
	Выборка = Запрос.Выполнить().Выбрать();

    Буквы = Новый Массив();
    Пока Выборка.Следующий() Цикл
        Буквы.Добавить(ВРег(Выборка.Буква));
    КонецЦикла;
    Возврат Буквы; 
КонецФункции
Показать
10. DrWeb3 71 21.12.22 13:18 Сейчас в теме
(9) О, спасибо. Вставлю готовую, чтоб не думать когда обновлять буду )
11. d_vit 27 22.12.22 10:22 Сейчас в теме
Подскажите есть ли возможность взаимодействовать с внешними отчетами и обработками.
Например у меня есть внешняя обработка у которой есть Функция ПолучитьДосьеКонтрагента(Контрагент) Возврат ТабличныйДокумент;
Можно как то вернуть вернуть этот ТабличныйДокумент в Telegram
12. DrWeb3 71 15.02.23 13:25 Сейчас в теме
(11) можно по тому же принципу как и остальные табличные документы. Сохранить в формате Excel и отправить в телегу
13. pehatuk 13 29.04.23 08:11 Сейчас в теме
Код открытый у обработки и расширения?
14. DrWeb3 71 31.05.23 20:20 Сейчас в теме
15. NKV_d 22.08.23 13:27 Сейчас в теме
Ваше расширение супер, очень многофункционально, спасибо! По примеру вашей обработки начал делать под свои нужды бота(на расширении Боцмана) и столкнулся с проблемой: не понимаю как получить данные КнопкиКолбэка, которую нажал пользователь. Если кнопка одна, то проблем нет, а вот если их несколько...)
16. DrWeb3 71 22.08.23 13:33 Сейчас в теме
(15) в данных, который получает бот при нажатии кнопки есть поле data. Его и надо анализировать. (для этого при создании кнопок нужно задать разные данные для каждой кнопки.

Если для обработки запроса от кнопок вы используете функцию bot_callback_query(Сессия, Запрос), то смотрите Запрос["data"], а если функцию Обработать(Сессия, Данные), тогда Данные["callback_query"]["data"]
17. user1704976 15.09.23 10:38 Сейчас в теме
здравствуйте!
подскажите, а получится ли интеграция упп 1.3 с телеграмм?))
можно ли скачать вашу обработку и переписать под себя
18. DrWeb3 71 15.09.23 10:41 Сейчас в теме
(17) не вижу причин, чтобы не получилось, УПП 1.3 тоже вроде бы на БСП написана. Если что - обращайтесь, проконсультирую
19. user1704976 21.09.23 13:23 Сейчас в теме
(18)здравствуйте, а демо-бот @Telega1C_Bot не работает? нажимаю /start , а в ответ ничего не приходит
20. DrWeb3 71 28.09.23 12:12 Сейчас в теме
(19) Только заметил сообщение. Сейчас проверю, переносили на другой сервер, но должно было заработать. Отпишусь как проверю
21. DrWeb3 71 28.09.23 13:26 Сейчас в теме
(19) Готово. Заработал вроде. Забыли подтвердить, что информационная база перемещена, были отключены регламентные задания
22. knclose 17.10.23 01:45 Сейчас в теме
Добрый день, розница 2.3.15.50 поддерживается? Платформа 8.3.21.1775?
Прикрепленные файлы:
23. DrWeb3 71 17.10.23 08:14 Сейчас в теме
(22) ничего препятствующего поддержке розницы в конфигурации нет. Подключать расширение нужно через конфигуратор и затем воспользоваться предложенными 1С вариантами исправления. Если скините .cf - смогу посмотреть в чем конкретно проблема
24. knclose 17.10.23 08:15 Сейчас в теме
(23) Да, уже разобрался с подключением, благодарю за помощь!
25. conven 04.03.24 10:27 Сейчас в теме
Подскажите, в расширении Боцман есть функционал прав доступа? Указание, какие пользователи могут общаться с ботом.
27. DrWeb3 71 21.03.24 11:08 Сейчас в теме
(25) в текущей выложенной на Инфостарте версии такого функционала нет, но его легко добавить. В ближайшее время (около недели) планирую выложить обновление, где такой функционал будет.
26. conven 04.03.24 11:48 Сейчас в теме
При попытке сформировать отчет вот такая ошибка:

ОШИБКА:
{ВнешняяОбработка.ОтчетыВТелеграм.МодульОбъекта(273)}: Тип пользовательской настрйоки не поддерживается: Не определено
28. DrWeb3 71 21.03.24 11:09 Сейчас в теме
(26) Укажите релиз конфигурации и платформы, отчет, который хотите получить и установленные вами параметры. Тогда смогу проверить в чем дело
Оставьте свое сообщение