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

07.12.22

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

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обработка ОтчетыВТелеграм
.zip 5,12Kb
5
5 Скачать (3 SM) Купить за 2 450 руб.
Обработка ОтчетыВТелеграм + расширение Боцман
.zip 94,85Kb
25
25 Скачать (7 SM) Купить за 3 650 руб.

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

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

 

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

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

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

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

 

 

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

 

 

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

 

 

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

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

 

 

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

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

 

 

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

 

 

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

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

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

 

 

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

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

 

 

Заключение

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

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

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

См. также

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

Интеграция мессенджера WhatsApp и 1С: УНФ, УТ, КА, ERP - отправка и получение сообщений, картинок, файлов и видео прямо в 1С. Расширение работает с сервисом GreenApi.

15600 руб.

23.06.2023    9484    58    12    

34

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

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

13200 руб.

27.12.2021    38199    108    161    

201

SALE! 25%

Мессенджеры и боты Системный администратор Программист Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 Платные (руб)

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

15000 11250 руб.

18.06.2021    65567    312    272    

369

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

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

14900 руб.

15.11.2018    30270    35    49    

71

Мессенджеры и боты Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Данное расширение представляет собой интерфейс взаимодействия 1С с сервисом Wazzup. Данный сервис позволяет вести беседу с использованием номера телефона, привязанного к Whatsapp. Почитать о сервисе и его условиях использования можно по ссылке https://wazzup24.com/. На данный момент расширение поддерживает почти все доступные через API функции. Обновление от 19.05.2023, версия 2.1!

14400 руб.

30.11.2020    13595    8    13    

15

Мессенджеры и боты SMS рассылки Платформа 1С v8.3 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Решение реализовано в виде расширения. Заменяет отправку смс на отправку в WhatsApp через Green-api. Отправка чека картинкой.

7800 руб.

15.05.2024    1544    3    6    

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


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

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


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

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


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

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

    Буквы = Новый Массив();
    Пока Выборка.Следующий() Цикл
        Буквы.Добавить(ВРег(Выборка.Буква));
    КонецЦикла;
    Возврат Буквы; 
КонецФункции
Показать
10. DrWeb3 74 21.12.22 13:18 Сейчас в теме
(9) О, спасибо. Вставлю готовую, чтоб не думать когда обновлять буду )
11. d_vit 27 22.12.22 10:22 Сейчас в теме
Подскажите есть ли возможность взаимодействовать с внешними отчетами и обработками.
Например у меня есть внешняя обработка у которой есть Функция ПолучитьДосьеКонтрагента(Контрагент) Возврат ТабличныйДокумент;
Можно как то вернуть вернуть этот ТабличныйДокумент в Telegram
12. DrWeb3 74 15.02.23 13:25 Сейчас в теме
(11) можно по тому же принципу как и остальные табличные документы. Сохранить в формате Excel и отправить в телегу
13. pehatuk 13 29.04.23 08:11 Сейчас в теме
Код открытый у обработки и расширения?
14. DrWeb3 74 31.05.23 20:20 Сейчас в теме
15. NKV_d 22.08.23 13:27 Сейчас в теме
Ваше расширение супер, очень многофункционально, спасибо! По примеру вашей обработки начал делать под свои нужды бота(на расширении Боцмана) и столкнулся с проблемой: не понимаю как получить данные КнопкиКолбэка, которую нажал пользователь. Если кнопка одна, то проблем нет, а вот если их несколько...)
16. DrWeb3 74 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 74 15.09.23 10:41 Сейчас в теме
(17) не вижу причин, чтобы не получилось, УПП 1.3 тоже вроде бы на БСП написана. Если что - обращайтесь, проконсультирую
19. user1704976 21.09.23 13:23 Сейчас в теме
(18)здравствуйте, а демо-бот @Telega1C_Bot не работает? нажимаю /start , а в ответ ничего не приходит
20. DrWeb3 74 28.09.23 12:12 Сейчас в теме
(19) Только заметил сообщение. Сейчас проверю, переносили на другой сервер, но должно было заработать. Отпишусь как проверю
21. DrWeb3 74 28.09.23 13:26 Сейчас в теме
(19) Готово. Заработал вроде. Забыли подтвердить, что информационная база перемещена, были отключены регламентные задания
22. knclose 17.10.23 01:45 Сейчас в теме
Добрый день, розница 2.3.15.50 поддерживается? Платформа 8.3.21.1775?
Прикрепленные файлы:
23. DrWeb3 74 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 74 21.03.24 11:08 Сейчас в теме
(25) в текущей выложенной на Инфостарте версии такого функционала нет, но его легко добавить. В ближайшее время (около недели) планирую выложить обновление, где такой функционал будет.
26. conven 04.03.24 11:48 Сейчас в теме
При попытке сформировать отчет вот такая ошибка:

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