Бизнес-процессы: как переименовать файл с помощью вебхука
У меня есть статья с примером бизнес-процесса, который переименовывает загруженный файл.
Переименовать файл можно так же с помощью вебхука, и это позволяет немного упростить схему бизнес-процесса.
Как это сделать
Для переименования файла используем метод rest api disk.file.rename. У метода 2 параметра: id - идентификатор файла и newName - новое имя файла.
На что нужно обратить внимание
Действие Webhook в бизнес-процессе выполняет запрос из поля Хендлер и не возвращает никаких данных. Это значит, что в случае, если запрос будет выполнен с ошибкой, файл просто не переименуется и мы об этом не узнаем. Например, такое может быть, если в новом имени файла будут присутствовать недопустимые символы.
В такой ситуации поможет только очень тщательное тестирование процесса, логирование получившегося запроса и проработка возможных ошибок.
Здравствуйте, Любовь. Большое спасибо за пример. Все сделал, но такое ощущение что вебхук не срабатывает, файл не переименовывается. Как-то можно проверить сработал вебхук или нет?
ОтветитьУдалитьДобрый день!
УдалитьДля проверки можно вывести получившийся адрес вебхука себе в уведомление и скопировать его в адресную строку браузера. В браузере будут выводиться детали: либо успешно выполненный запрос, либо сообщение об ошибке.
Любовь, добрый день. Спасибо что делитесь опытом. Подскажите пожалуйста, а если файл не загружается на диск а формируется из шаблона прямо в сделке,в ручную или автоматически (понимаю, при этом файл физически, формируется тоже на диске) возможно ли его переименовать?
ОтветитьУдалитьДобрый день!
УдалитьУ меня была такая задача.
Файл формировали из шаблона автоматически, через бизнес-процесс.
Насколько я помню, потом получали ID этого файла из доп результатов, копировали файл в другую папку, переименовывали и работали с ним - так требовалось по ТЗ. Но кажется, исходный файл при этом оставался с исходным именем и переименовать не получалось. Сейчас уже не уверена.
Добрый день! У меня такой вопрос, даже не вопрос, а проблема )))
ОтветитьУдалитьНеобходимо вывести множественные поля в шаблон документа и это оказалось большой проблемой.
Например: Есть проект, каждый проект с абсолютно разыми этапами, исполнителями(сотрудники на портале) и датами.
Этап исполнитель Дата
--------------------------------------------------------------------------------------------
Заключение Иванов А.А. 10.10.2021
контракта Петров ВВ
Сидоров ЕЕ
----------------------------------------------------------------------------------------------
Подписание Савчук ОО 21.10.2021
контракта Савельев АА
----------------------------------------------------------------------------------------------
и т. д. их может быть и 40 и 50
Думал как это сделать, игрался с полями, добавление через бизнес-процесс, но 40, 50!!!
И, попытался это сделать через смарт-процесс, создал процесс, добавил необходимые поля и... все получилось практически идеально )) но, всегда есть но. Для того, чтобы они появлялись в шаблоне их необходимо было добавлять к сделке, хотя, добавляя в сделке процесс, он автоматически подтягивал сделку в процессе.
В сделке добавил поле с привязкой к CRM смарт-процесс. Создавая несколько этапов в смарт-процессе, я могу в поле сделке их добавлять. Как говорил ранее, есть но!!! В этом поле выводятся все добавленные процессы, которые относятся к сделке и не относятся, появляется путаница. Для идеала нужно, чтобы в поле автоматически появлялись созданные смарт-процессы, которые добавлялись в сделке, как по Вашему мнению это можно сделать?
Заранее безумно благодарен!!!
Этап исполнитель Дата
Удалить--------------------------------------------------------------------------------------------
Заключение________Иванов А.А.________ 10.10.2021
контракта __________Петров ВВ
___________________Сидоров ЕЕ
----------------------------------------------------------------------------------------------
Подписание ________Савчук ОО _________21.10.2021
контракта __________Савельев АА
----------------------------------------------------------------------------------------------
пробелы здесь удаляются
Здравствуйте)
УдалитьПока, к сожалению, нет возможности разобраться в задаче. Со смарт-процессами пока мало работала. Если будут идеи - напишу)
Добрый день. Все получилось, но есть одно "но", может Вы подскажете. Если загружать сразу 3-4-5 файлов, переименовывается только один, остальные остаются с прежними названиями. Как-то можно реализовать все что б переименовывать сразу несколько с добавлением какого-то индекса?
ОтветитьУдалитьВладимир, добрый день!
УдалитьЕсли файлов несколько, то нужно их обойти с помощью итератора и на каждой итерации вызвать вебхук для переименования.
Спасибо за статью. Впервые опробовал вебхуки.
ОтветитьУдалитьРеализовал вебхук для сообщения в чат группы из бизнес-процесса.
Почему-то нет стандартного активити, которое могло бы писать в чаты сообщение.
Да, пока либо вебхуком, либо плагинами из Маркета можно отправить сообщение в чат.
УдалитьВопрос:
ОтветитьУдалитьПри переименовании файла - мы меняем и его разрешение (можем менять).
А как сделать, чтобы формат файла не менялся при переименовании, при условии - что загружаемые файлы могут быть разных форматов и мы не можем прописать тот же docx...
Добрый день!
УдалитьНе совсем поняла вопрос.
То есть надо переименовать файл, но при этом сохранить исходное расширение?
Здравствуйте, спасибо за ценные советы
ОтветитьУдалитьЯ нашел то что я хотел (хотя я думал что это невозможно, но это Битрикс24 с колоссальными возможностями)
У меня есть ещё проблема во внедрении.
Как можно настроить шаблон товарного чека в Битрикс24 для кухни (без подключения кассы).
Привет шаблона
ОтветитьУдалитьНомер заказа
---------------------------------
Товар 1 сумма
Товар 2. Сумма
Итого:. Сумма
================
Дата:
Телефон компании:
Адрес:
Добрый день!)
УдалитьК сожалению, не подскажу.
В последнее время в основном работаю с бизнес-процессами.
Здравствуйте! Спасибо за советы!
ОтветитьУдалитьВы не реализовывали задачу - с помощью rest добавить товарные позиции из сделки в смарт-процесс ?
Я так понимаю метод crm.item.productrow.add - а как правильно его использовать в вебхуке не получается разобраться
Получилось частично разобраться, с помощью приложения из маркета).
УдалитьА вот как прописать параметры правильно в стандартном активити WebHook? помогите, пожалуйста.
Метод crm.item.productrow.add
Параметры:
{
"fields": {
"ownerId": 26,
"ownerType":"Tbe",
"productId": 2,
"price": 2000,
"quantity": 4
}
}
/crm.item.productrow.add.json?ownerId=26&ownerType=Tbe&fields[productId][]=2&fields[price][]=2000&fields[quantity][]=2
УдалитьВ таком виде не работает( что не так?
Добрый день!)
УдалитьЕсли ещё актуально, то должно сработать так:
/crm.item.productrow.add.json?fields[ownerId]=1&fields[ownerType]=Ta7&fields[productId]=1 только с Вашими значениями.
У меня товарная позиция добавилась
Спасибо! Получилось!
Удалить👍
Удалитьтоповый контент
ОтветитьУдалить👍
УдалитьЗдравствуйте! Может быть сталкивались с таким вопросом - на определённой стадии, автоматически, добавить сотрудника в чат сделки/лида.
ОтветитьУдалитьДобрый день!)
УдалитьДля облака или коробки?
Для коробки есть пример кода.
Здравствуйте! Для облака
УдалитьСотрудника в чат сделки/лида можно добавить с помощью im.chat.user.add.
УдалитьНо получить ID чата сделки/лида, который нужно передать в параметр CHAT_ID, можно только с помощью дополнительных доработок или с помощью плагинов из Маркета.
Спасибо большое за ответ!
УдалитьЗдравствуйте.
ОтветитьУдалитьПодскажите, а как с помощью вебхука заполнить множественное поле типа "Привязка к сущности CRM"?
Мне нужно привязать поле к CO_123 и к C_123 например.
Спасибо.
Добрый день!
УдалитьА заполнить множественное поле нужно у какого объекта?