Telemonitor - объединяем Telegram и 1С

Публикация № 387433 09.08.15

Администрирование - Администрирование данных 1С - Сервисные утилиты

Telegram телеграм bot бот обмен сообщениями ComConnector token токен мессенджер OneScript 1Script

Не так давно Telegram предоставил API для создания ботов. Telemonitor - программа, позволяющая легко настроить собственного бота для работы с 1С.

Что это такое?

Telegram набирает всё большую популярность. Недавно сервис предоставил платформу для создания ботов. Telemonitor - это прослойка между API Telegram и 1С/OneScript, позволяющая легко настроить функционал собственного бота. Кто-то задастся вопросом, а зачем вообще нужна какая-то дополнительная программа, ведь все можно организовать и в 1С. Конечно можно, но, на мой взгляд, это не всегда удобно. Во-первых, более или менее удобный функционал есть только в версии 8.3. Во-вторых, надо постоянно держать запущенным сеанс. Telemonitor, конечно, тоже имеет свои недостатки, но работать с ним, думаю будет удобнее.

Как это работает?

Схема работы

Telemonitor опрашивает бота с заданной периодичностью. При получении новой команды программа создает соединение с базой данных через ComConnector, и выполняет указанный для команды код, через вызов процедуры Выполнить(). Количество COM-соединений никак не ограничивается, поэтому одновременно можно отправлять боту несколько команд.

Как настроить своего бота?

Как зарегистрировать бота рассказывать, думаю, смысла нет. В интернете полно примеров, на Инфостарте, кстати, тоже есть очень полезная публикация. И так, открываем каталог Telemonitor и видим файл settings.ini. В нем необходимо задать token для бота, полученный при регистрации. При желании можно изменить интервал опроса бота и параметры соединения. Теперь рассмотрим папку databases, в ней будем описывать базы и команды.

Структура каталогов

Для каждой базы данных, в которой будем использовать бота создаем папку с произвольным названием латиницей. Для примера я использую базы FileAccounting82 и ServerTrade83. В каждой папке необходимо разместить файл database.ini, в котором указывается строка соединения с базой (сейчас в меня полетят тухлые помидоры, но да, пароль хранится в чистом виде) и используемая версия 1С. Кстати, 8.1 не поддерживается. Кодировка у ini файла должна быть Windows-1251. 

Теперь настало время описать команды. В той же папке создаем файлы *.tcm. Каждый такой файл - это просто текст в кодировке UTF-8, содержащий описание команды и код, выполняемый в 1С. Первой строкой идет описание, далее - исполняемый код.

Команда, исполняемая ботом

Если мы хотим увидеть какой-либо отклик от бота, тогда необходимо заполнить переменную Результат. В данном примере бот вернет описание пользователей, работающих в базе или скажет: "Нет активных пользователей" При создании своих команд помните, что весь код помещается в конструкцию Выполнить(), поэтому он имеет некоторые ограничения, думаю сами догадываетесь какие. Чтобы бот вернул файл, например, вы хотите получать какой-нибудь отчет или прайс, то в коде команды необходимо заполнить переменную Результат_Файл.

Что получилось в итоге?

После того, как мы создали каталоги для баз данных и файлы с командами, наш бот знает, какие команды у него есть, и что с ними делать.

Имя каждой команды складывается из имени базы данных и имени файла tcm. Запросим у бота список команд. И так, бот, /start !

Список команд бота

Ух ты! Работает! Давай-ка, бот, нам список активных пользователей.

Выполнение команды

Эх, не было печали, а теперь вот каждое утро общаюсь с ботом и смотрю, все ли с базами в порядке :-)

Что дальше?

Программу, она кстати использует NET Framework 2.0, писал для собственных нужд, но, если кому пригодится, буду очень рад. Буду рад предложениям по улучшению и расширению функционала.

Последние изменения:

  • 12.08.2015
  • Добавил команду /screen для получения скриншота.
  • Добавил возможность отправки файлов.
  • 23.10.2015
  • В команду теперь можно передавать параметры. В 1С все параметры будут доступны в реквизите "ПараметрыКоманды" через запятую
  • В settings.ini добавил параметр [SafeMode1C] для запуска кода в небезопасном режиме.
  • 17.03.2016
  • Добавил ограничение доступа по имени пользователя Telegram (username). Ограничения можно задать как на бота целиком, так и на базу данных. Для этого в файлах settings.ini и database.ini есть секция [WhiteList] и параметр Users. Именя пользователей, которым разрешен доступ, следует указывать через запятую. В этой же секции файла settings.ini можно ограничить доступ пользователям к получению скриншотов. Имя параметра, отвечающего за данное ограничение - ScreenOwners
  • 15.04.2016
  • Добавил поддержку команд с запросом параметров. Для того, чтобы бот запросил параметр, необходимо в коде команды использовать переменную ДиалогСПараметрами. Ниже представлен пример команды с запросом трех параметров
  • МассивПараметров = Новый Массив();
    Подстроки = СтрЗаменить(ПараметрыКоманды, ",", Символы.ПС);
    Для Сч = 1 По СтрЧислоСтрок(Подстроки) Цикл
    	Параметр = СокрЛП(СтрПолучитьСтроку(Подстроки, Сч));
    	Если ЗначениеЗаполнено(Параметр) Тогда
    		МассивПараметров.Добавить(Параметр);
    	КонецЕсли;
    КонецЦикла;
    Если МассивПараметров.Количество() < 3 Тогда
    	ДиалогСПараметрами = Истина;
    	Заголовки = Новый Соответствие();
    	Заголовки[0] = "Введите первый параметр:";
    	Заголовки[1] = "Отлично! Теперь укажите второй:";
    	Заголовки[2] = "Почти готово! Третий параметр и заканчиваем:";
    	Результат = Заголовки[МассивПараметров.Количество()];
    Иначе
    	// Здесь выполнение какого-то кода...
    	Результат = "Команда выполнена со следующими параметрами:" + Символы.ПС;
    	Результат = Результат + "1) " + МассивПараметров[0] + Символы.ПС;
    	Результат = Результат + "2) " + МассивПараметров[1] + Символы.ПС;
    	Результат = Результат + "3) " + МассивПараметров[2];
    КонецЕсли;
    Ну и результат работы

    Команда с запросом параметров Команда с запросом параметров

    При написании таких команд надо понимать, что Telemonitor не поддерживает COM-соединение между запросами параметров у пользователя. При передаче каждого параметра создается новое соединение и в код каманды передаются все полученные параметры, поэтому в описании команды нет смысла инициализировать какие-либо переменные и выполнять действия, в надежде, что они будут доступны при передаче следующего параметра.
  • Также, теперь в коде команды есть доступ к имени пользователя Telegram, и полному идентификатору команды. Для этого используются переменные username, first_name, last_name и command
  • 22.11.2016
  • Добавлена поддержка OneScript(1Script). Для тех, кто не в курсе, что это такое вот ссылка и вот. Скрипты необходимо размещать в папке scripts c расширением *.os. Примеры скриптов есть в архиве с программой. Команды для OneScript имеют некоторые особенности, но не сильно отличаются от таковых для 1С. Все пробелы в параметрах, переданных в команду заменяются на знак подчеркивания "_".
  • 06.04.2018
  • Команды для OScript можно делать в виде кнопок. Для этого файл команды должен быть с расширением *.os_b
  • 18.04.2018
  • Добавлена поддержка SOCKS5. В settings.ini секция [Proxy], параметр Type

P.S. Писал быстро, поэтому возможны какие-нибудь ошибки. Буду благодарен, если вы сообщите о таковых.

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

Наименование Файл Версия Размер
Telemonitor.zip

.zip 1,96Mb
230
.zip 20200214 1,96Mb 230 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. shalimski 6 10.08.15 04:25 Сейчас в теме
Отличная идея! Все работает.
140. user859444 15.12.17 16:26 Сейчас в теме
(1) Уже ничего не работает:
15.12.2017 16:24:36 - debug (8): Запуск команды /ERP_ActiveUsers на выполнение
15.12.2017 16:24:36 - debug (3): wt 926
15.12.2017 16:24:37 - debug (3): url: https://api.telegram.org/bot{0}/getUpdates?offset=тутномер
15.12.2017 16:24:37 - debug (3): mt wait
15.12.2017 16:24:37 - debug (3): request created
15.12.2017 16:24:37 - debug (3): response ok
15.12.2017 16:24:37 - debug (3): request:{"ok":true,"result":[]}
15.12.2017 16:24:37 - debug (3): True
15.12.2017 16:24:37 - debug (3): mt release
15.12.2017 16:24:37 - debug (3): wt 918
15.12.2017 16:24:38 - debug (3): url: https://api.telegram.org/bot{0}/getUpdates?offset=тутномер
2. roofless 24 10.08.15 09:26 Сейчас в теме
тут http://infostart.ru/public/372352/ нужна платформа не меньше 8.3.6, какая нужна для вашего телемонитора?
3. salexdv 2014 10.08.15 09:39 Сейчас в теме
122. yuran2000 8 15.01.17 23:39 Сейчас в теме
С крайними версиями БП 2.0.66.6 и 3.0.46.16 перестало работать, ждет нажатия "ОК":

15.01.2017 23:31:03 - debug (3): wt 844
! 15.01.2017 23:31:03 - Не удалось выполнить команду "/FileAccounting83_ActiveUsers": Адресат вызова создал исключение.
Предупреждение безопасности

Открывается "Выполнение произвольного кода для Telemonitor" из файла "R:\Soft\Telemonitor\executer83.tep".

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


Разрешить открывать данный файл?
15.01.2017 23:31:03 - debug (5): Команда /FileAccounting83_ActiveUsers выполнена
15.01.2017 23:31:03 - debug (5): url: https://api.telegram.org/bot{0}/sendMessage
15.01.2017 23:31:03 - debug (5): response: Ошибка при выполнении команды
124. yuran2000 8 15.01.17 23:59 Сейчас в теме
125. salexdv 2014 16.01.17 09:14 Сейчас в теме
(124) Спасибо за ссылку.
(123) Такое, к сожалению, реализовать не смогу т.к. программа построена совсем на других принципах и такое поведение не планировалось с самого начала.
166. ndacoder 110 14.08.18 12:14 Сейчас в теме
Разобрался на вин 8.1 работает а вот на сервере 2008 не хочет

14.08.2018 12:04:07 - debug (3): url: https://api.telegram.org/bot{0}/getUpdates?offset=0
14.08.2018 12:04:07 - debug (3): mt wait
14.08.2018 12:04:07 - debug (4): checker: cur.time - 14.08.2018 12:04:07, ls.time - 14.08.2018 12:04:07
14.08.2018 12:04:07 - debug (3): request created
! 14.08.2018 12:04:09 - debug (3): response err: Ошибка на стороне клиента. Код состояния: 401
14.08.2018 12:04:09 - debug (3): mt release
167. salexdv 2014 14.08.18 12:44 Сейчас в теме
(166)
Код состояния: 401

Как организована сеть на 2008-м сервере, сервер в сеть ходит напрямую или через прокси?
4. didkovskij 44 12.08.15 13:33 Сейчас в теме
Спасибо, всё работает!

А есть возможность возвращать не текст, а прикреплять файл, например?
5. salexdv 2014 12.08.15 14:00 Сейчас в теме
(4) didkovskij, нет, пока только текст. Можно доработать. Опишете, зачем такое надо?
6. salexdv 2014 12.08.15 14:55 Сейчас в теме
(4) didkovskij, добавил такую возможность. Для примера код команды:
Результат_Файл = КаталогВременныхФайлов()  + "result.xls";
ТабДокумент = Новый ТабличныйДокумент();
ТабДокумент.Область(1, 1, 1, 1).Текст = "Тестовый файл";
ТабДокумент.Записать(Результат_Файл, ТипФайлаТабличногоДокумента.XLS97);

Т.е. необходимо заполнить переменную Результат_Файл, тогда Telemonitor отправит указанный файл боту.
adhocprog; didkovskij; +2 Ответить
11. didkovskij 44 13.08.15 04:39 Сейчас в теме
(6) например в 1с формируется файл (отчёт, график и т.п.) хочется его прикрепить, чтобы пользователь смог его посмотреть. Спасибо за возможность!
7. sml 36 12.08.15 17:45 Сейчас в теме
ТС, похоже с планировщиками оконными не знаком?
8. salexdv 2014 12.08.15 17:49 Сейчас в теме
12. didkovskij 44 13.08.15 04:43 Сейчас в теме
(7) sml, ну так то можно и web сервис поднять и приложение под андроид написать. Одну и ту же задачу можно кучей разных способов реализовать. Мне идея и реализация понравилась. Например, кто захочет тот и получит нужную информацию, а не так как в планировщике по заданным параметрам, выполнять одно и тоже действие :)
9. Операция1Ы 53 12.08.15 18:19 Сейчас в теме
Круто, а исходники будут?
10. salexdv 2014 12.08.15 18:40 Сейчас в теме
(9) Операция1Ы, не планировал выкладывать.
13. Darklight 27 17.08.15 10:40 Сейчас в теме
Что-то фишку не просёк. Идея общаться с ботом текстовыми командами не впечатлила
Разве не удобнее
1. Сделать отдельную БД, которая будет собирать состояния из целевых баз и показывать сводно при старте и по отдельности на весь экран (без каких-либо запросов со стороны оператора)
2. Нужные дополнительные сведения получать в один-два клика мыши в отельных окнах
3. Получать из базы периодические рассылки важной контроллируемой информации по электронной почте / SMS и по любым иным каналам сваязи
for_sale; +1 Ответить
14. CratosX 109 17.08.15 12:02 Сейчас в теме
(13) Darklight,
Что-то фишку не просёк.

как минимум Телеграм быстр и не требователен, зачастую уже установлен. Установка "отдельной базы" тяжела, требует мобильной платформы
15. salexdv 2014 17.08.15 12:30 Сейчас в теме
(13) Darklight, здесь уже писали про планировщик заданий, что в принципе равносильно периодическим рассылкам, как пишите вы.
Но идея бота не в периодических оповещениях, а в предоставлении информации по требованию. Мне не нужно получать каждый день SMS (электронное письмо и т.д.) о том что все хорошо/все пропало. Я хочу видеть информацию, только когда у меня душа заболела.
16. yuran2000 8 17.08.15 15:11 Сейчас в теме
Идея хорошая, но не везде есть возможность запускать чужие программы.
Пытаюсь на 1С это же написать, по обмену сообщениями трудности не возникло, но вот отправку файла так и не победил.
Думаю, что не туда вставляю Токен.
Т.е., что б бот что-то сделал в базе и отправил отчет в виде файла.
Может, распишите принцип этого процесса?
17. salexdv 2014 17.08.15 16:18 Сейчас в теме
(16) yuran2000, я сам не с первого раза отправил файл, скорее всего ошибка в формировании тела multipart/form-data и определении ContentLength. Попробую сделать в 1С такое и напишу.
18. salexdv 2014 17.08.15 22:03 Сейчас в теме
(16) yuran2000, к сожалению мне не удалось отправить данные 1С на api.telegram.org с помощью multipart/form-data. Испытывал на методе sendMessage, передавая поля chat_id и text. Передавать пробовал с помощью WinHttp.WinHttpRequest.5.1, Msxml2.SERVERXMLHTTP и встроенного HTTPСоединение. Если указывать протокол http, то возвращается ошибка 301, либо text is empty, а если использовать, как положено, https - вылет по таймауту. Причем тело multipart/form-data точно правильное взял его из Telemonitor.
Если найдете решение, дайте знать.
Тело запроса выглядит так

------------ebcd4ec6dea948099c4c47ca5c9541bd
Content-Disposition: form-data; name="chat_id"

XXXXXXXXX
------------ebcd4ec6dea948099c4c47ca5c9541bd
Content-Disposition: form-data; name="text"

test
------------ebcd4ec6dea948099c4c47ca5c9541bd--
Показать
19. eugeniezheludkov 39 18.09.15 03:24 Сейчас в теме
(18) Возился как то с POST "multipart/form-data", оказалось, что кроме boundry, общий пакет делится на несколько пакетов по 2500 байт (точно не помню размер). все браузеры делят, отправляется за несколько посылок.
из RFC http://www.ietf.org/rfc/rfc2388.txt ничего особо не понять , нужно смотреть примеры кода на гитхабе и тд
20. salexdv 2014 18.09.15 07:33 Сейчас в теме
(19) eugeniezheludkov, возможно, но мне и меньшего объема сообщение не удавалось отправить. Пример сообщением выше (18)
21. FSerg 66 18.09.15 22:42 Сейчас в теме
(18) дня три мучался с отправкой файла в телеграмм из 1С.
Из-за того что 1Ска не может рабоать с двоичными данными - единственный способ, которым получилось сформировать правильный запрос - это ОбъединитьФайлы().

Вот такой код у меня заработал:
Сервер = "api.telegram.org";	
врТекст = КодироватьСтроку(СокрЛП(ТестСообщения), СпособКодированияСтроки.КодировкаURL, КодировкаТекста.UTF8);	

СтрокаСоединения = "/bot"+СокрЛП(Объект.АпиКлюч)+"/sendPhoto";

Boundary = "----"+Строка(Новый УникальныйИдентификатор());

//Определяем массив для процедуры ОбъединитьФайлы 
МассивФайловДляОбъединения = Новый Массив; 

//Формируем начальный фрагмент файла POST-запроса 
ИмяФайлаОтправкиНачало = ПолучитьИмяВременногоФайла("txt"); 
ФайлОтправкиНачало = Новый ЗаписьТекста(ИмяФайлаОтправкиНачало, КодировкаТекста.UTF8); 

//Формируем конечный фрагмент файла POST-запроса 
ИмяФайлаОтправкиКонец = ПолучитьИмяВременногоФайла("txt"); 
ФайлаОтправкиКонец = Новый ЗаписьТекста(ИмяФайлаОтправкиКонец, КодировкаТекста.UTF8);

ТекстДляОтправки = "";

// ЧАТ
ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary + Символы.ПС;	
ТекстДляОтправки = ТекстДляОтправки + "Content-Disposition: form-data; name=""chat_id""" + Символы.ПС + Символы.ПС;	
ТекстДляОтправки = ТекстДляОтправки + СокрЛП(Объект.АйдиЧата) + Символы.ПС;

// ПОДПИСЬ	
ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary + Символы.ПС;	
ТекстДляОтправки = ТекстДляОтправки + "Content-Disposition: form-data; name=""caption""" + Символы.ПС + Символы.ПС;	
ТекстДляОтправки = ТекстДляОтправки + СокрЛП("Название картинки!") + Символы.ПС;

// ФОТО
ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary + Символы.ПС;	
ТекстДляОтправки = ТекстДляОтправки + "Content-Disposition: form-data; name=""photo""; filename=""01.jpg""" + Символы.ПС;	
ТекстДляОтправки = ТекстДляОтправки + "Content-Type: image/jpeg" + Символы.ПС;

ФайлОтправкиНачало.ЗаписатьСтроку(ТекстДляОтправки );
ФайлОтправкиНачало.Закрыть(); 
МассивФайловДляОбъединения.Добавить(ИмяФайлаОтправкиНачало); 

МассивФайловДляОбъединения.Добавить(СокрЛП(Объект.ИмяФайла)); 

ТекстДляОтправки = "" + Символы.ПС;
ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary+"--";
ФайлаОтправкиКонец.ЗаписатьСтроку(ТекстДляОтправки);
ФайлаОтправкиКонец.Закрыть(); 
МассивФайловДляОбъединения.Добавить(ИмяФайлаОтправкиКонец); 

ИмяФайлаОтправки = "C:\1C_Base\post.txt";
ОбъединитьФайлы(МассивФайловДляОбъединения, ИмяФайлаОтправки);


HTTPЗапрос = Новый HTTPЗапрос;
Заголовки = Новый Соответствие;

HTTPЗапрос.Заголовки.Вставить("Connection", "keep-alive"); 
HTTPЗапрос.Заголовки.Вставить("Content-Type", "multipart/form-data; boundary="+Boundary); 

HTTPЗапрос.УстановитьИмяФайлаТела(ИмяФайлаОтправки);	
HTTPЗапрос.АдресРесурса = СтрокаСоединения; 

ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
HTTPСоединение = Новый HTTPСоединение(Сервер,,,,,, ЗащищенноеСоединение);

Попытка 
ОтветHTTP = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
Исключение
Сообщить("Ошибка выполенния запроса!");
КонецПопытки;

ДанныеКакСтрока = ОтветHTTP.ПолучитьТелоКакСтроку();
Сообщить("Отчет:");
Сообщить(ДанныеКакСтрока);
Показать
nik073; X_GraY; awa; SirStefan; DmitryNPK; CSiER; adhocprog; JohnyDeath; el-gamberro; +9 Ответить
22. salexdv 2014 19.09.15 10:29 Сейчас в теме
(21) FSerg, спасибо! Обязательно попробую
23. el-gamberro 56 30.09.15 16:34 Сейчас в теме
(21) FSerg, спасибо за разжевывание. :)
Тоже такое попробую.
146. user853472 25.02.18 16:19 Сейчас в теме
(21)
ОтправитьДляОбработки
147. user853472 25.02.18 16:23 Сейчас в теме
(21)
МассивФайловДляОбъединения.Добавить(СокрЛП(Объект.ИмяФайла)); ТекстДляОтправки = "" + Символы.ПС; ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary+"--"; ФайлаОтправкиКонец.ЗаписатьСтроку(ТекстДляОтправки); ФайлаОтправкиКонец.Закрыть(); МассивФайловДляОбъединения.Добавить(ИмяФайлаОтправкиКонец);



Не могу понять, что сюда добавляется? Что такое "Объект" ?

Вот здесь:
// ФОТО
ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary + Символы.ПС;    
ТекстДляОтправки = ТекстДляОтправки + "Content-Disposition: form-data; name=""photo""; filename=""01.jpg""" + Символы.ПС;    
ТекстДляОтправки = ТекстДляОтправки + "Content-Type: image/jpeg" + Символы.ПС;


filename это произвольное название?

а где передается сама картинка?

У меня сервер возвращает "IMAGE_PROCESS_FAILED" . Пожалуйста! Помогите! Третий день отправляю изображение, все никак не отправлю.....
148. user853472 25.02.18 22:15 Сейчас в теме
(21) Подскажите пожалуйста как вывести в данном случае inline_keyboard кнопки? Очень нужно! Можно в ЛС телеграмма @bosprofit
176. vis_tmp 30 11.10.19 07:27 Сейчас в теме
(21)
МассивФайловДляОбъединения.Добавить(СокрЛП(Объект.ИмяФайла));

Скажите, что у вас в "Объект.ИмяФайла" ?
Что содержит этот файл?
24. mrmasson 54 13.10.15 09:00 Сейчас в теме
Идея хороша. решил воспользоватся. Опишу недостатки, которые мешают в полной мере насладиться разработкой:
1. мало документации с Вашей стороны.
2. т.к. код выполняется в безопасном режиме, некоторые вещи невозможно реализовать, например, перезагрузку сервера. Пытаюсь отключить безопасный режим, но...
Ошибка при вызове метода контекста (ЗапуститьПриложение)
Установлен безопасный режим. Выполнение операции запрещено


а так однозначный плюс
25. salexdv 2014 13.10.15 10:52 Сейчас в теме
(24) mrmasson, спасибо за отзыв!
Да, действительно весь код запускается во внешней обработке, которая создается в безопасном режиме.
Я добавлю в настройки возможность запускать небезопасный режим.
А насчет документации даже и не знаю, что сказать. Я тут постарался максимально просто и доступно объяснить как все работает. Как создавать свои команды для бота написал. Если есть какие-то вопросы, пишите, обязательно отвечу.
26. salexdv 2014 23.10.15 11:45 Сейчас в теме
(24) mrmasson, добавил возможность запуска кода в небезопасном режиме. Нужно в settings.ini добавить строку
[SafeMode1C]
Enabled=0
27. JohnyDeath 299 30.10.15 09:27 Сейчас в теме
Я все-таки не понял, почему отдельная программа, а не планировщик или http-сервис в самой 1С? Зачем лишняя прослойка?
28. salexdv 2014 30.10.15 10:04 Сейчас в теме
(27) JohnyDeath, чтобы получать информацию, когда она действительно нужна. Не будем брать в расчет всякие отказы, когда что-то не работает. В этом случае, конечно, удобнее планировщиком опрашивать какие-то параметры и, в случае возникновения критической ситуации, оповещать об этом.
Telemonitor немного про другое. Например, для обновления конфигурации БД требуется реструктуризация, которую невозможно выполнить с работающими пользователями. Дело к вечеру, а пользователи все работают. С помощью Telegram можно отправить команду боту, пусть будет /MyBase_GetActiveUsers. Когда увидим, что пользователей нет, можно запустить /MyBase_UpdateDB.
Другой пример, хотим увидеть сколько задач выставлено нам в базе, отправляем /MyBase_GetTasks UserID. Или нужно узнать сколько новых заказов ждут обработки, тогда /MyBase_GetNewOrders.
Вариантов возможного использования масса, причем использовать бота может не только админ/программист, а директор, менеджер, бухгалтер и т.д.
Надеюсь теперь идея ясна.
29. JohnyDeath 299 30.10.15 16:34 Сейчас в теме
(28) идею-то я сразу понял. Я не понял почему все это нельзя обрабатывать на стороне 1С, используя, например, http-сервис?
Или, если лень заморачиваться с публикацией сервиса, создать регламентное задание, в котором будет периодически вызываться getUpdates телеграма?

Вы же создаете дополнительную прослойку, которая плюс ко всему имеет закрытый код.
30. salexdv 2014 02.11.15 09:10 Сейчас в теме
(29) JohnyDeath, программа использует NET.Framework, поэтому посмотреть код, нет никаких проблем.
Http-сервисы, конечно, можно использовать, можно даже и без них обойтись, но тогда придется либо изменять конфигурацию и держать web-сервер, либо постоянно держать открытым сеанс с обработкой, которая будет вызывать getUpdates. Так что в любом случае, как вы говорите "прослойка", какая-никакая, а нужна. Весь вопрос в том, самому её делать, либо взять готовую.
Моё решение позволяет все делать без изменения конфигурации(й) и не писать самому взаимодействие с Telegram API, а сосредоточится только на создании функционала бота.
Как я уже отмечал ранее, программа изначально писалась для собственных нужд, поэтому я никого не призываю пользоваться именно моим "велосипедом", тут каждый волен сделать свой.
31. nomadon 417 20.11.15 11:39 Сейчас в теме
32. salexdv 2014 20.11.15 12:50 Сейчас в теме
(31) nomadon, спасибо я оценил уже. Отличная вещь!
33. maxx 938 25.01.16 11:49 Сейчас в теме
Подскажите, а то мало знаю по всякими месенджерам, боты, которые вы создаёте, доступны абсолютно другим пользователям Telegram. То есть я могу найти вашего бота и им воспользоваться злонамеренно?
34. salexdv 2014 25.01.16 14:40 Сейчас в теме
(33) maxx, если вы знаете имя бота, то сможете его найти и пользоваться
35. JohnyDeath 299 26.01.16 08:48 Сейчас в теме
(33), (34) но вроде как в боте можно прописать желаемых участников или схему входа (по паролю и т.п.), т.е. при желании левые акки к вам не придут
36. salexdv 2014 26.01.16 08:58 Сейчас в теме
(35) JohnyDeath, можно команды без пароля не принимать. Да и найти бота не зная его точного имени сложно
37. adhocprog 1201 12.02.16 15:28 Сейчас в теме
38. amitin78 02.03.16 21:04 Сейчас в теме
Всем Доброго вечера. Подскажите студенту как заполнить файл settings. Всем заранее спасибо.
39. amitin78 02.03.16 21:25 Сейчас в теме
Разобрался.
Просьба подсказать как задать выполнение команды Боту в 1с. Для примера сделать Синхронизацию. Сам так сказать процесс.
40. amitin78 02.03.16 21:36 Сейчас в теме
И само собой как запустить саму 1с перед этим. Буду благодарен за подсказки.
41. salexdv 2014 03.03.16 08:57 Сейчас в теме
(40) amitin78, 1с запускать не надо. Telemonitor сам создает Com-соединение, когда получает команду. Что именно вам не понятно с командами? Файлы *.tcm - это и есть описание команд. Имя файла - это имя команды. Первая строка в файле - тектовое описание команды, начиная со второй строки - исполняемый в 1С код.
42. amitin78 03.03.16 19:42 Сейчас в теме
salexdv Спасибо с этим разобрался.
После этого возникло большое желание использовать данный момент в разных задачках. Просьба добавить функционал запуска BAT файлов. Поясню: файловая база, есть задачки которые делает робот через запуск BAT файлов по времени. Используя Ваш Телемонитор можно это дело сделать по нажатию команд в Телеграмме. Очень удобно было-бы. Как дополнение к запланированным процессам. Заранее спасибо.
43. salexdv 2014 03.03.16 21:46 Сейчас в теме
(42) amitin78, так запускаете батники через 1С, и ничего дорабатывать не придется :-)
Напишите в команде
ЗапуститьПриложение(<ПутьКФайлуBat>);
44. amitin78 04.03.16 22:28 Сейчас в теме
(43) Фся фишка запускать все по команде удаленно с телефона, планшета, компьютера. Как я с телефона дам команду в 1с? А вот через Ваш Telemonitor должно получиться. Просьба доработать функционал. Благодарных пользователей будет много как поймут плюсы. Спасибо.
45. salexdv 2014 05.03.16 10:45 Сейчас в теме
(44) amitin78, вы, видимо, не совсем поняли принцип работы. Посмотрите на схему вначале статьи. Вы с телефона в Telegram отдаете команду, а уже Telemonitor выполняет код команды в 1С. Получается вы на смартфоне выбираете команду "ЗапуститьBAT", а на компьютере, где стоит 1С и Telemonitor выполняется код
ЗапуститьПриложение(<ПутьКФайлуBat>);
. Таким образом через 1С запускается батник в системе.
46. amitin78 05.03.16 10:55 Сейчас в теме
Это(45) Это конечно да. То есть без 1с вообще не будем никакого действия? А вот скан например тоже средствами 1с сделан? Если тогда моя идея идет немного дальше. Запустить Батник не привлекая 1с. Это не возможно сделать?
47. amitin78 05.03.16 12:26 Сейчас в теме
salexdv как подсказали получилось УРА (ЗапуститьПриложение(<ПутьКФайлуBat>);).

Вопрос: создаю свой файл для команды *.tcm, не сразу подхватывает Телеграмм как команду. Ему время надо для этого, просьба уточнить.
48. salexdv 2014 05.03.16 14:12 Сейчас в теме
(47) amitin78, все команды считываются только при запуске Telemonitor. На ходу новые команды не подхватываются.
49. Il 25 16.03.16 07:47 Сейчас в теме
Классный и удобный бот!
есть маленькая хотелки:
- возможно ли в ini файлах баз прописывать каким юзерам телеграмма есть доступ? соответственно у этого юзера будут видны только команды его базы.
- и сделать разрешение/запрет на команды /screen также нужным юзверям?
ЗЫ. можу простимулировать на пивасик, для поднятия боевого тонуса ;)
50. salexdv 2014 16.03.16 10:14 Сейчас в теме
(49) Il, а почему именно в ini базы данных? Может лучше в глобальных настройках бота?
51. Il 25 16.03.16 13:20 Сейчас в теме
(50) в глобальном ini нет списка баз.
а так к примеру база А иванову, петрову, база Б всем, база С петрову и сидорову...
53. salexdv 2014 17.03.16 12:30 Сейчас в теме
(51) Il, ограничение по именам пользователей добавил. Описание в секции "Последние изменения".
54. Il 25 17.03.16 16:44 Сейчас в теме
(53) вот спасибо!
скажи куда благодарность можно перевести (тел, ya, visa)?
такие интересные идеи уже мона реализовать с этим функционалом...
55. salexdv 2014 17.03.16 17:06 Сейчас в теме
(54) Il, спасибо сказали, уже хорошо :-) Я в первую очередь для себя делал программу, а раз ещё кому-то пригодилось - вообще отлично.
vasiliy_b; +1 Ответить
52. Il 25 16.03.16 13:30 Сейчас в теме
(50) ну и до кучи (что-то я разошелся ::) передавать в 1с параметром имя юзверя телеги (тоже можно вынести в настройку вкл/выкл)
56. Andrey_R91 17.03.16 19:06 Сейчас в теме
Доброго времени суток.
Отписываюсь в данной теме так как она более приближенная к моей задаче.
Для начала опишу конечную цель:
Нужно с определенных чатов удалять/добавлять пользователей, имея их номера телефонов.
Я так понимаю, бот телеграма нам не совсем здесь интересен, по этому нужно использовать именно методы обычного API.

В API есть методы управления чатами. Но не совсем понятно как можно узнать ID добавляемого контакта, зная его телефон?

Может кто сталкивался с подобной ситуацией? Кто-то сталкивался с взаимосвязью 1С - API Telegram ?
Буду благодарен за направления мыслей в нужную сторону :)
57. salexdv 2014 18.03.16 08:57 Сейчас в теме
(56) Andrey_R91, к сожалению, не встречал такого функционала
58. Dobermann86 30.03.16 11:35 Сейчас в теме
Кто нибудь подскажет как ботом получить файл(или фото) в 1С и дальше сохранить его на HDD?
59. salexdv 2014 30.03.16 12:48 Сейчас в теме
(58) Dobermann86,
Чтобы бот вернул файл, например, вы хотите получать какой-нибудь отчет или прайс, то в коде команды необходимо заполнить переменную Результат_Файл.

Сформируйте файл в 1С, сохраните на диск и поместите полное имя файла в переменную Результат_Файл
60. salexdv 2014 30.03.16 12:49 Сейчас в теме
(58) Dobermann86, вот здесь (6) я показывал, как такое сделать.
61. zhurba 23 11.04.16 00:42 Сейчас в теме
Оч.полезная штуковина! Спасибо ))

Пожелания :)
a. Было бы очень хорошо запускатьTelemonitor как сервис (!!!)
b. Хорошо бы иметь возможность настраивать "белый" список пользователей для каждой команды;
с. мелочь, но все же - в контекстное меню по иконке в трее добавить "Перезапустить".
62. zhurba 23 11.04.16 00:45 Сейчас в теме
Вдогонку:

d. Передавать в 1С имя пользователя, который отправил команду.
63. zhurba 23 11.04.16 23:06 Сейчас в теме
(62) И еще одна "хотелка":

е. Хотелось бы иметь возможность в папку с описанием базы положить файл "nocommand.tcm" и передавать в него сообщения от пользователя без слеша - не команды. Это позволит реализовывать "многоходовые" команды (как в @BotFather и пр.), т.е. сначала бот получает команду, а потом задает пользователю вопрос и ждет от него ответ (команды с параметрами менее юзабильные).
64. salexdv 2014 12.04.16 08:53 Сейчас в теме
(63) zhurba, спасибо за отзыв и пожелания. У меня была мысль реализовать "диалог" с ботом, но пока, к сожалению, совсем нет на это времени. Программа писалась буквально за 2 дня для решения одной насущной проблемы. Все остальные доработки делаю, когда есть свободное время, а это случается нечасто.
68. salexdv 2014 15.04.16 10:41 Сейчас в теме
(63) zhurba, добавил поддержку диалоговых команд. Теперь код команды можно описать так, чтобы бот запрашивал дополнительные параметры. Если есть возможность, проверьте и отпишитесь.
70. Vladimir_Konyrev 226 25.08.16 14:44 Сейчас в теме
(68)
Добрый день, подскажите можно ли организовать чат без установки каких-либо доп. приложений на сервер (все работают в терминале)?
71. salexdv 2014 25.08.16 14:50 Сейчас в теме
(70) Vladimir_Konyrev, приложение в каком-то смысле для создания чата, но не между людьми. Диалог Человек <-> Бот Telegram - вот назначение программы. Для создания чатов между сотрудниками вам надо найти что-то другое.
65. zhurba 23 12.04.16 15:03 Сейчас в теме
Обнаружилась неприятная "фича" :(

В чате случайно задел кнопку с микрофоном. Записанное аудио отправилось боту и тот "повис" - все последующие команды не обрабатываются. То же самое происходит если отправить боту фоточку.

"Полечил" бота отправкой через браузер команды getUpdate со смещением.
Хотел подключить к боту своих юзверей, но увы, придется пользоваться только мне одному...
66. salexdv 2014 12.04.16 15:48 Сейчас в теме
67. salexdv 2014 14.04.16 11:31 Сейчас в теме
(65) zhurba, ошибка, приводившая к зависанию, исправлена.
69. brrart 25 27.06.16 22:19 Сейчас в теме
Отличная штуковина. Всё просто и понятно. Супер!!!!
72. Снежный_человек 06.09.16 14:24 Сейчас в теме
Добрый день! Если включить бота в группу, то он понимает только команду /start. Если общаться с ботом напрямую, то понимает все команды, созданные мной в настройках. Хотелось бы, чтоб в группе он тоже работал. В группе все видят, кто, когда, какие команды боту давал.
73. salexdv 2014 06.09.16 15:20 Сейчас в теме
(72) Снежный_человек, с группами не работал. Обязательно проверю
103. Il 25 29.09.16 09:01 Сейчас в теме
(72) Присоединяюсь к просьбе... полезная фишка
104. salexdv 2014 29.09.16 09:08 Сейчас в теме
(103) Il, к какой просьбе? Если вы про команды с параметрами, то они есть и работают.
105. Il 25 01.10.16 02:25 Сейчас в теме
(104) я про добавление бота в группу.
121. Il 25 12.12.16 04:17 Сейчас в теме
вопрос (72), про добавление бота в группу еще смотрели?
74. Снежный_человек 06.09.16 15:51 Сейчас в теме
Есть еще вопрос, долго ли ждет бот параметра, когда используется команда с параметрами? Настраивается ли таймаут?
75. salexdv 2014 06.09.16 16:27 Сейчас в теме
(74) Снежный_человек, таймаута нет, бот будет ожидать бесконечно
76. Снежный_человек 07.09.16 10:54 Сейчас в теме
При тестировании в файловом режиме все ок. При тестировании в клиент серверном режиме на той же базе исполняемый код команды (пытаюсь провести документ) вываливается в исключение со следующей ошибкой

Ошибка при вызове метода контекста (Записать)
ЗаявкаОбъект.Записать(РежимЗаписиДокумента.Проведение);
по причине:
Ошибка при выполнении обработчика - 'ПередЗаписью'
по причине:
Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода ПередЗаписьюЗаявки ()
77. Снежный_человек 07.09.16 10:56 Сейчас в теме
Процедура "ПередЗаписьюЗаявки()" находится в общем серверном модуле и на нее ссылается мной добавленная подписка на событие. Первый ее параметр - Источник
78. Снежный_человек 07.09.16 10:58 Сейчас в теме
Подозреваю, что то не так у вас в приложении с исполнением кода 1С &НаКлиенте и &НаСервере
80. salexdv 2014 07.09.16 11:27 Сейчас в теме
(78) Снежный_человек, в описании программы сказано, что весь код выполняется через метод Выполнить(). Всё это работает в режиме внешнего соединения. Проверьте свою конфигурацию на работу в режиме "Внешнее соединение" и "Внешнее соединение (клиент-сервер)". Думаю, проблема как раз в этом.
79. Снежный_человек 07.09.16 11:27 Сейчас в теме
Другими словами, если использовать подписку на событие документа "ПередЗаписью", то при исполнении процедуры этой подписки в общем серверном модуле с использованием параметра "Источник" в клиент серверном варианте не работает. Текст ошибки выше.
81. Снежный_человек 07.09.16 13:56 Сейчас в теме
Да, все верно. В указанном общем модуле установил галку "Внешнее соединение". Все заработало.
82. Снежный_человек 15.09.16 15:25 Сейчас в теме
Добрый день! Поставил нескольким юзверям. Обнаружил проблему зависания приложения телемонитор, причем, если жать на зависший экземпляр правой кнопкой мыши в трэе, то нет появления меню Выход. причем бот реагирует на команду старт, выдает список доступных команд, но на полученную из списка команду никак не реагирует. Лечится убиванием процесса telemonitor в диспетчере задач и перезапуском. До следующего повторения зависания.
83. Снежный_человек 15.09.16 15:25 Сейчас в теме
Файл лога ошибок не создается
84. salexdv 2014 15.09.16 16:00 Сейчас в теме
(83) Снежный_человек, у себя такого поведения не встречал. Что за операционная система?
85. Снежный_человек 15.09.16 16:39 Сейчас в теме
Windows 2008 Server. Я, правда, создал каждому юзеру отдельного бота и запускал несколько приложений в одном терминальном сеансе, причем переименовывал файл Telemonitor.exe в ****.exe, , где *** имя пользователя латиницей, чтобы видеть, чья именно копия телемонитора отваливается. Сейчас оставил только одну копию, проверить на предмет конфликта запущеных копий. Пока работает, часа 2
Оставьте свое сообщение

См. также

Универсальный редактор данных (УРД) Промо

Инструментарий разработчика Администрирование данных 1С v8 Абонемент ($m)

Универсальный редактор данных (УРД) - это лучший инструмент в своем классе, который позволяет редактировать реквизиты и движения объектов

1 стартмани

27.08.2021    4331    98    Adeptus    51    

Внешняя компонента: Android tools

Мобильная разработка Разработка внешних компонент v8 v8::Mobile Абонемент ($m)

Несколько дополнительных функций для мобильного приложения\клиента под Android. Размер архива внешних компонент под архитектуры ARM и x86 - 230KB.

1 стартмани

12.01.2021    4908    15    KAV2    8    

Оптимизация размера изображений из присоединенных файлов УТ 11.4

Администрирование данных 1С Обработка справочников Управление торговлей Расширения v8 УТ11 Россия Абонемент ($m)

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

5 стартмани

10.07.2020    7527    2    Neti    4    

"Учет штрафов ГИБДД" с возможной загрузкой из открытых источников в интернет Расширение конфигурации 1С: Предприятие 8.3

Обработка документов WEB v8 v8::УФ 1cv8.cf Россия БУ УУ Абонемент ($m)

Расширение конфигурации Бухгалтерия предприятия, редакция 3.0 (при минимальных изменениях любой типовой конфигурации), позволяющее вести историю данных по штрафам ГИБДД для справочника транспортных средств компании. Бонусом поставляется внешняя обработка, способная загружать эти данные из открытых источников в интернет.

4 стартмани

30.12.2019    18613    21    capitan    11    

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек. Промо

Чистка базы Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Россия Абонемент ($m)

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018    52358    512    Eugen-S    35    

Пакетное пробитие чеков на Онлайн-кассе при оплатах от физических лиц на расчетный счет

Банковские операции Кассовые операции Обработка документов v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Автоматизация процесса пробития чеков онлайн при поступлениях на расчетный счет от физических лиц. Помогает сократить трудозатраты таким организациям, как МФЦ, Управляющие компании и т.д. Подходит для 1С:Бухгалтерия 3.0 любой версии (базовая, ПРОФ, КОРП). Не изменяет конфигурацию. Конфигурация остается на поддержке (типовая).

2 стартмани

24.09.2019    21821    8    r.resh39    7    

Списание (корректировка) задолженности контрагентов УНФ 1.6

Дебиторская и кредиторская задолженность Обработка документов Дебиторская и кредиторская задолженность Закрытие периода v8 УНФ Украина БУ Абонемент ($m)

Обнуление задолженности контрагентов в конфигурации "Управление небольшой (нашей) фирмой" версии 1.6 с помощью документа "Корректировка регистров".

1 стартмани

24.07.2019    32196    21    DMon    1    

Регистрация документов с измененной суммой

Обработка документов v8 1cv8.cf Абонемент ($m)

Обработка берет информацию из истории изменения документов. Удобна для администраторов, когда документы с измененной суммой по какой-то причине не регистрируются в плане обменов. Можно регистрировать не все документы, а только те, которые были изменены.

1 стартмани

20.04.2019    26501    6    ryan    0    

Пометка на удаление неиспользуемых элементов справочников и документов Промо

Чистка базы Обработка документов Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

В ходе работы в программе в ней зачастую накапливается "мусор". Данная разработка может помочь убрать его... (обычные или управляемые формы)

1 стартмани

02.02.2010    39736    720    AnryMc    53    

Блин, мы забыли включить регламентные задания…

Сервисные утилиты v8 Абонемент ($m)

Привет, Инфостарт! Сегодня расскажу, как я решил проблему с выключенными регламентными заданиями в рабочих базах. Желая исключить человеческий фактор и минимизировать количество ошибок, я написал небольшую конфигурацию.  В конфигурации два регламентных задания. Первое периодически подключается к кластеру и сохраняет текущие параметры: имя, Сервер БД, базу СУДБ, блокировки входа и регламентных заданий и т.д. Второе задание периодически проверяет эти параметры на ошибки.

1 стартмани

08.04.2019    23955    19    slozhenikin_com    37    

Валовая прибыль для УПП 1.3, КА 1.1 в режиме РАУЗ (работа типового отчета без доработок конфигурации)

Обработка документов v8 КА1 УПП1 УУ Абонемент ($m)

Простое и мгновенное решение для использования типового отчета "Валовая прибыль" в конфигурациях "Управление производственным предприятием 1.3", "Комплексная автоматизация 1.1" (а также отраслевых решений на их базе) при включенном режиме РАУЗ (расширенная аналитика учета затрат). Не требует настройки или изменения конфигурации, либо может быть, для дополнительного удобства, интегрировано в нее с минимальными доработками.

2 стартмани

21.01.2019    27629    33    stvorl    12    

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019)

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

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    60836    263    informa1555    234    

Удаление и/или копирование сохраненных в 1С настроек (например настроек печати табличных форм) Промо

Универсальные обработки Сервисные утилиты v8 Абонемент ($m)

Иногда нужно удалить сохраненную в 1С "покореженную" настройку или скопировать "удачную" другому пользователю...

1 стартмани

01.09.2012    65331    1375    AnryMc    46    

Легкое и гибкое управление списком доступных баз 1С у пользователей

Стартеры 1С Сервисные утилиты Администрирование СУБД v8 1cv8.cf Россия Абонемент ($m)

Когда в локальной сети много пользователей, а еще большое количество различных баз и при этом каждому нужны свои, то администрирование этого зоопарка превращается в АД! Этот комплекс позволяет централизованно управлять списком доступных баз в разрезе пользователей. За пару кликов можно добавить или убрать базу у всех пользователей.

7 стартмани

05.12.2018    21022    22    RomikR    9    

Многопоточная обработка данных

Производительность и оптимизация (HighLoad) Администрирование данных 1С v8 v8::УФ 1cv8.cf Абонемент ($m)

Конфигурация "Универсальные механизмы: пакеты данных". Набор инструментов для быстрой организации отказоустойчивой многопоточной обработки данных.

1 стартмани

23.11.2018    29167    105    _ASZ_    17    

Обнуление остатков регистров бухгалтерии и накопления

Универсальные обработки Чистка базы v8 v8::БУ v8::ОУ v8::УФ КА1 БП2.0 ЗУП2.5 УТ10 УПП1 УНФ БГУ ERP2 БП3.0 УТ11 УХ КА2 ЗУП3.x Россия Абонемент ($m)

Обработка позволяет обнулить остатки по регистру накопления или бухгалтерии на определенную дату. Поддерживается большинство типовых конфигураций (БП 3, БП 2, УТ 11, УТ 10, ЗУП 3, ЗУП 2, БГУ 2, БГУ 1, ERP, УПП, КА 2, КА 1, УХ 3, УХ 1, УНФ). Гибкая настройка (отборы, заполнение реквизитов и любых полей корр. счета, возможность обнулять ресурсы выборочно). Несколько режимов работы. Два интерфейса: простой и с расширенным набором настроек.

2 стартмани

19.11.2018    34110    411    morozov.sv    55    

Групповая установка даты выплаты в документах "Отпуск" и "Командировка" на заданную дату и перерасчет отобранных документов Промо

Обработка документов Зарплата Управление персоналом (HRM) Зарплата v8 v8::СПР ЗУП3.x БУ Абонемент ($m)

Обработка позволяет расчетчикам сократить время, затрачиваемое на расчет отпусков и командировок.

2 стартмани

15.02.2017    20785    86    ser6702    18    

Универсальный инструмент для переноса данных через табличный документ (УФ)

Обработка документов Универсальные обработки Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Для опытных пользователей, разработчиков, администраторов, консультантов

5 стартмани

15.10.2018    46049    151    json    44    

TextRadar - нечеткий поиск в тексте

Разработка внешних компонент Поиск данных v8 1cv8.cf Абонемент ($m)

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

1 стартмани

19.09.2018    22954    32    TSSV    19    

Помощник корректировки остатков ЕГАИС в небольшом магазине. Розница 2.2

Розничная торговля Обработка документов Розничная торговля v8 Розница Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Россия УУ Абонемент ($m)

Данная обработка упрощает корректировку остатков алкогольной продукции небольшого магазина, где предполагается передача всей продукции в торговый зал сразу после приемки.

5 стартмани

08.09.2018    43698    84    asdfgcom    47    

StartManager 1.4 - Развитие альтернативного стартера Промо

Стартеры 1С v7.7 v8 Абонемент ($m)

Очередная редакция альтернативного стартера, являющегося продолжением StartManager 1.3. Спасибо всем, кто присылал свои замечания и пожелания, и тем, кто перечислял финансы на поддержку проекта. С учетом накопленного опыта, стартер был достаточно сильно переработан в плане архитектуры. В основном сделан упор на масштабируемость, для способности программы быстро адаптироваться к расширению предъявляемых требований (т.к. довольно часто просят добавить ту или иную хотелку). Было пересмотрено внешнее оформление, переработан существующий и добавлен новый функционал. В общем можно сказать, что стартер эволюционировал, по сравнению с предыдущей редакцией. Однако пока не всё реализовано, что планировалось, поэтому еще есть куда развиваться в плане функциональности.

1 стартмани

23.04.2014    143899    1763    Alexoniq    1573    

Расширение резервов отпусков

Обработка документов Зарплата Зарплата v8 v8::СПР ERP2 ЗКГУ3.0 ЗУП3.x Россия БУ Абонемент ($m)

Произвольная настройка базы для расчета резервов отпусков.

2 стартмани

10.08.2018    36782    65    СергейКа    30    

Очистка периодических регистров посредством T-SQL (удаление записей, кроме среза последних)

Чистка базы v8 Абонемент ($m)

Обработка для ленивых. Составит вместо Вас запрос для SQL, который удалит все не актуальные записи (т.е все, кроме среза последних)

5 стартмани

22.06.2018    20079    21    Alexander.Shvets    9    

Приложение Android для идентификации/распознавания образов (с обучением с одного раза, One-Shot Learning) с возможностью работы с 1С через веб-сервис

Мобильная разработка v8 Абонемент ($m)

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

1 стартмани

19.06.2018    18921    5    informa1555    16    

Правильные аналоги номенклатуры (кроссы запчастей) для 1С / Управляемые формы Промо

Обработка справочников Оптовая торговля Учет ТМЦ Оптовая торговля Учет ТМЦ v8 v8::УФ 1cv8.cf УУ Абонемент ($m)

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

5 стартмани

29.07.2015    46010    3    taurus__    23    

Автоматическое заполнение графиков в ЗУП 3.1

Зарплата Учет рабочего времени Обработка справочников Зарплата Учет рабочего времени v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Данная разработка будет актуальна для организаций с большим количеством графиков (несколько десятков/сотен).

1 стартмани

05.05.2018    31228    18    notserioussam    2    

Добавление возможности в конфигурации ЗУП 3.1 работать с фотографиями сотрудников (Зарплата и Управление Персоналом, редакция 3.1)

Обработка справочников Управление персоналом (HRM) Управление персоналом (HRM) v8 v8::СПР ЗУП3.x БУ Абонемент ($m)

Добавление возможности в ЗУП 3.1 работать с фотографиями сотрудников (физических лиц). Расширение тестировалось на релизе ЗУП 3.1.5.129.

1 стартмани

09.04.2018    37596    80    charivnick    4    

Корректировка остатков ЕГАИС, возврат из регистра 2, загрузка ТТН из файлов, другое для УТ10.3

Розничная торговля Обработка документов Розничная торговля v8 v8::ОУ УТ10 Россия БУ Абонемент ($m)

Набор обработок для автоматизации работы с ЕГАИС: Обработка корректировки остатков ЕГАИС для УТ 10.3, аналогичная имеющимся в УТ 11, Рознице 2.2. Автоматически формирует документы "Передача в торговый зал", "Акт постановки на баланс в торговом зале", "Акт списания в торговом зале". Обработка возврата из регистра 2 с подбором справок Б. Обработка формирования ТТН из файлов xml.

1 стартмани

24.01.2018    45277    20    biz-intel    6    

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника. ЗУП 3.1

Обработка документов Загрузка и выгрузка в Excel Зарплата Зарплата v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Абонемент ($m)

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника по данным экономического отдела. ЗУП 3.1.

3 стартмани

20.12.2017    60838    35    mvv1975    7    

Мобильное приложение "Отчет по проделанной работе"

Мобильная разработка Учет рабочего времени Учет рабочего времени v8 Россия УУ Абонемент ($m)

Приложение выполняет фиксацию рабочего времени у клиентов, а также заявок на работы, пригодится как шаблон для разработки своего или как готовое решение для работников в сфере услуг, которые фиксируют время у клиентов. В приложении 2 документа: первый "отчет за день", второй "заявка" и полезный инструмент "Отчет задачи", который в свою очередь создан для просмотра, анализа и закрытия заявок. Тестировал на Iphone 6s.

10 стартмани

01.12.2017    27651    10    olejnikov_m    6    

Копирование меню в Трактир Management

Обработка документов Производство готовой продукции (работ, услуг) Производство готовой продукции (работ, услуг) v8 1cv8.cf Рестораны, кафе и фаст-фуд Россия УУ Абонемент ($m)

Механизм копирования меню в Трактир Management. Данная обработка расширяет функционал типового решения Трактир Management, позволяя быстро вводить в эксплуатацию новую точку путём создания нового меню на основании имеющегося.

1 стартмани

28.11.2017    35924    3    integrator1983    0    

Быстрое удаление неиспользуемых версий 1С:Предприятие 8, кэша метаданных и информационных баз

Сервисные утилиты v8 Абонемент ($m)

При обновлении платформы 1С:Предприятие 8 предыдущие версии не удаляются. Со временем количество неиспользуемых версий платформы растет. Они занимают место на диске. Для решения этой проблемы предназначена программа OneCleaner. Она позволяет быстро удалить неиспользуемые версии платформы, а также почистить кэш метаданных и удалить ненужные информационные базы данных.

1 стартмани

14.11.2017    27954    96    bonv    15    

Помощник по закрытию месяца для УТ 11.3

Обработка документов Закрытие периода Закрытие периода v8 v8::ОУ УТ11 Россия УУ Абонемент ($m)

Помощник по закрытию месяца для УТ 11.3. Имеет две функции: обнуление товаров "К оформлению" в интеркампани и обнуление отрицательных остатков в регистре "Себестоимость товаров".

5 стартмани

10.11.2017    31381    13    Zalipaka    1    

Очистка регистрации обмена

Чистка базы v8 v8::ОУ УТ10 Абонемент ($m)

Данная обработка предназначена для очистки узла. Для очистки необходимо указать период,организацию.

1 стартмани

19.09.2017    20816    9    serg-lom89    0    

Загрузка дополнительных реквизитов и сведений справочника Номенклатура из Excel и таблиц УТ 11, ERP 2

Обработка справочников Загрузка и выгрузка в Excel Учет ТМЦ Учет ТМЦ v8 v8::ОУ ERP2 УТ11 Россия УУ Абонемент ($m)

Внешняя обработка "Загрузка дополнительных реквизитов и сведений справочника Номенклатура"

1 стартмани

07.08.2017    51868    327    Windyhead    45    

Упрощение работы с актами сверки в УТ/КА/УПП - вывод номеров счетов в документе и печатной форме

Обработка документов Печатные формы документов Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 КА1 УТ10 УПП1 БУ УУ Абонемент ($m)

Обычно акт сверки с клиентами содержат информацию о документах реализации товаров (накладных) и выполненных платежах. Но платежи делаются на основании счетов, номера которых отсутствуют в актах, что затрудняет собственно сверку. Данная обработка находит соответствующие расходным накладным счета/заказы, показывает их в форме документа и выводит в печатную форму акта.

2 стартмани

12.05.2017    38515    4    denmax    7    

Автокликер для 1С

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

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

1 стартмани

03.04.2017    35967    79    slava_1c    67    

DroidRAC2 - консоль администрирования кластера серверов 1С:Предприятие 8.3 под Android

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

DroidRAC2 - клиент для RAS-сервиса кластера серверов платформы 1С:Предприятие 8.3 под Android.

1 стартмани

24.02.2017    26575    11    user700211_a.straltsou    20    

Статистика базы данных с отбором по подсистемам (кол-во и открытие списков: документов, справочников, регистров) и анализ наличия основных реквизитов: универсальная обработка (два файла - обычный и управляемый режим)

Статистика базы данных v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

20.02.2017    21454    56    strelec13    12    

Определение ИНН Сотрудника (service.nalog.ru). ЗУП, редакция 3.1 и 2.5 (Проф и Корп)

Обработка справочников Управление персоналом (HRM) Управление персоналом (HRM) v8 v8::СПР ЗУП2.5 Россия БУ Абонемент ($m)

Внешняя печатная форма для справочника "Сотрудники организаций". ЗУП, редакция 3.1 и 2.5 (Проф и Корп)

1 стартмани

03.02.2017    78526    51    Indgo    34    

Удаление помеченных объектов, замена ссылок. Обычное и управляемое приложение. Не монопольно, включая рекурсивные ссылки, с отбором по метаданным и произвольным запросом

Чистка базы v8 1cv8.cf Абонемент ($m)

Обработка удаления помеченных объектов с расширенным функционалом. Работает в обычном и управляемом приложении. Монопольный и разделенный режим работы. Отображение и отбор по структуре метаданных. Отборы данных произвольными запросами. Копирование и сохранение отборов. Удаление циклических ссылок (рекурсия). Представление циклических в виде дерева с отображением ключевых ссылок, не позволяющих удалить текущий объект информационной базы. Удаление записей связанных независимых регистров сведений. Групповая замена ссылок. Индикатор прогресса при поиске и контроле ссылочности.

10 стартмани

31.10.2016    61661    740    m..adm    226    

1Script – язык для автоматизации рутины в жизни специалиста по 1С

Математика и алгоритмы Бесплатно (free)

Мы все здесь – автоматизаторы бизнеса. Мы занимаемся этим каждый день и делаем это хорошо. Но практика показывает, что специалисты по 1С очень редко, очень мало автоматизируют сами себя. Есть много мелких задач, которые мы, 1С-ники, привыкли делать руками, хотя большой класс из этих задач можно было бы переложить на работу машины. Именно об этом и хотелось бы сегодня поговорить.

14.09.2016    56838    Evil Beaver    90