, не надо использовать и повторяющиеся блоки, и таблицу. Таблица множится автоматически, если в строках есть поля из элементов списков. Попробуй из шаблона убрать повторяющиеся блоки.
15.12.2021 00:09:54
Компания - это поле у сделки. Соответственно, надо фильтровать сделки по полю COMPANY_ID
А ещё можно использовать более модный подход с Ниже пример кода, как найти идентификаторы сделок, привязанных к компании с ид 26
|
|||
|
10.12.2021 16:01:25
|
|
|
06.12.2021 11:49:51
А вам точно надо добавлять сообщение в ленту? Может быть лучше таймлайн?
Лента не поддерживается в смарт-процессах. |
|
|
29.11.2021 10:19:38
Тут есть два пути.
1. Через событие onBeforeProcessDocument добавить дополнительные поля в провайдер товара внутри сделки на этапе генерации документа 2. Сделать своего наследника провайдера товаров, сделать своего наследника провайдера сделки, с помощью обработчика события onDataProviderManagerFillSubstitutionProviders подсунуть своего провайдера. В этом случае и через интерфейс всё будет работать |
|
|
24.11.2021 09:58:32
REST API для новых счетов точно такой же, как и для элементов смарт-процессов. Только здесь у нас фиксированный entityTypeId = 31.
На днях будет опубликована документация с перекрестными ссылками |
|
|
17.11.2021 10:41:33
Интересный пример, напишите в техподдержку, чтобы запрос зафиксировали. Но вряд ли будет сделано быстро. Пока что будет проще через внешний js заблокировать переход в режим редактирования у таких полей. По поводу настроек отображения в интерфейсе - согласен, что это важно. В данный момент по продукту мы постепенно движемся в этом направлении (чтобы администратор мог принудительно настроить интерфейс для пользователей, и они не могли его менять). Но это длинный путь, придется подождать |
|||
|
01.11.2021 10:37:14
Андрей Бубнов, в документации указано, как вставлять картинки - также, как печати и подписи. В шаблоне должна быть произвольная картинка, внутри неё код.
|
|
|
28.10.2021 16:04:55
Nona Khujadze,если речь о возможности склеить два куска шаблона, то такого нет. Каждый шаблон - это docx файл с кучей файлов и связей внутри, их нельзя просто склеить
|
|
|
18.10.2021 10:44:05
На данный момент есть два варианта "вклиниться" в процесс изменения элемента смарт-процесса
1. перехватить орм-событие таблета (класс таблета можно получить через Service\Factory::getDataClass()). 2. переопределить фабрику для конкретного смарт-процесса, где в методе getUpdateOperation() добавить соответствующий Operation\Action |
|
|
01.10.2021 22:21:52
Может лучше использовать смарт-процессы?
Возможно, там из коробки есть почти всё, что надо. А чего не надо, можно закастомисть |
|
|
17.09.2021 09:33:02
Александр Ким, наверное, потому что вы им неправильно воспользовались. При правильном использовании всё работает. Пишите подробнее, где и что вы делаете
|
|
|
08.09.2021 10:13:32
Дмитрий Несвященко, подсунуть документ, созданный на основе одного провайдера, в список документов другого провайдера по-простому не получится.
Чтобы сделать как вам нужно, придется пойти следующим путем: 1. С помощью описанного мной способа надо заменить ссылку "Список документов" на вашу собственную страницу (либо ниже добавить ещё одну) 2. Создать новую страницу 3. Скопировать полностью компонент documentgenerator.documents 4. В классе компонента заменить метод \DocumentGeneratorDocumentsComponent::getListFilter(), сформировав нужный вам фильтр для списка. 5. Возможно, понадобятся манипуляции с фильтром, чтобы добавить туда новые поля. Но это всё можно сделать в этом же компоненте. Можно попробовать другой вариант - встроить js-либу, которая будет показываться на странице списка документов и аяксом добавлять в грид строки. Но работать и выглядеть будет стремно. По поводу ссылки на страницу документа, можете посмотреть ссылку фрейма в слайдере просмотра документа. /bitrix/components/bitrix/crm.document.view/slider.php?documentId=417 По прямой ссылке будет открываться без слайдера. Если нужен слайдер, то можно воспользоваться методом BX.DocumentGenerator.openUrl() из js-экстеншена documentpreview |
|
|
06.09.2021 11:05:59
При первом клике на эту кнопку содержимое выпадающего меню формируется аяксом. Надо перехватить событие аякса и подкинуть в response дополнительный пункт. Другой вариант - перехватить клик на кнопку и запустить полностью свою логику. Ещё вариант - перехватить событие показа попапа и наполнить контентом самостоятельно. В любом случае это надо делать на фронте |
|||
|