Есть "костыльный" способ - открыть слайдер "Принять оплату" через редактор SMS в таймлайне, создать через него оплату и в текст SMS упадет ссылка, но она не будет отправлена. Дальше эту ссылку можно скопировать и отправить другим способом.
|
, если у вас лицензия энтерпрайз, то можете установить и настроить локально модуль transformercontroller.
Если нет, то надо делать конвертацию полностью самостоятельно - подписывайтесь на события, конвертируйте, сохраняйте (можно посмотреть класс \Bitrix\DocumentGenerator\Integration\TransformerManager) |
|
|
|
|
|
Странно, что у вас в поле сделки светится абсолютный путь к файлу. По-хорошему там должна быть ссылка на эндпоинт, который отдает файл с проверкой авторизации. В этом случае на отдачу файл отдавался бы с тем именем, что записано в БД, а не фактическое.
По поводу имени файла. Вполне возможно, что у вас включена галка "Контролировать загрузку дубликатов файлов:" в настройках главного модуля. В этом случае один и тот же файл не сохраняется дважды, разные записи в b_file ссылаются на один физический файл. Я бы рекомендовал разобраться с абсолютным путем файлу - это должно решить проблему |
|
|
|
|
|
По умолчанию файлы и так хранятся на диске.
ид файлов находятся в $document->FILE_ID (docx) $document->PDF_ID (pdf) $document->IMAGE_ID (jpg) это ид из таблицы \Bitrix\DocumentGenerator\Model\FileTable В этой таблице хранится тип хранилища (STORAGE_TYPE) и ид в этом хранилище (STORAGE_WHERE). Соответственно, если хранилище - диск, то в STORAGE_WHERE будет лежать ид таблицы b_disk_object. Если надо пересохранить файл в пользовательское хранилище на диске, то я бы предложил получить ид файла из b_file через \Bitrix\DocumentGenerator\Model\FileTable::getBFileId() и пересохранить его куда надо |
|
|
|
|
|
, а не проще ли иметь два шаблона на этот случай, а создание документа создавать через БП?
Такие манипуляции с содержимым - это уже сложно для события. Содержимое повторяющихся блоков стирается, если - Body знает, что это повторяющаяся область, привязанная к полю со списком - этот список пустой. Соответственно, вам надо всегда инициализировать оба списка для обеих областей, но заполняться должен только один из них. Но это только теория, на практике не знаю, будет работать или нет (по идее должно) |
|
|
|
|
|
Компания - это поле у сделки. Соответственно, надо фильтровать сделки по полю COMPANY_ID
А ещё можно использовать более модный подход с Ниже пример кода, как найти идентификаторы сделок, привязанных к компании с ид 26
|
|||
|
|
|