В плане передачи HTML в документ ничего не поменялось. Ни ссылки, ни таблицы не преобразовываются.
Запрос есть, но пока что нет в планах на реализацию
Запрос есть, но пока что нет в планах на реализацию
|
В плане передачи HTML в документ ничего не поменялось. Ни ссылки, ни таблицы не преобразовываются.
Запрос есть, но пока что нет в планах на реализацию |
|
|
|
|
Я правильно понимаю сценарий? 1. парсить HTML-код, находить в нем таблицу, и пробрасывать в провайдер. 2. находить картинку, и так же пробрасывать в провайдер. =============== ACHTUNG!!! Вопросы: 1. А если несколько таблиц? Могу ли я сделать так чтобы передать в провайдер произвольное количество таблиц и произвольное количество картинок, При этом располагающиеся в произвольных местах? ------------- Т.е. грубо говоря в шаблоне будет 1 переменная: {Content} которой я буду скармливать весь собранный контент тела письма? |
|||
|
|
|
|
Ахат Баязи, вариант с {Content} не будет работать.
Единственный вариант - это унаследовать класс DocxXml и в нем переопределить метод \Bitrix\DocumentGenerator\Body\DocxXml::htmlToXml(), где парсить самому таблицу из html и формировать требуемый xml |
|
|
|
|
Не так давно добавил поля вариаций в документы. Про отгрузки и оплаты из заказов помню, займусь в этом месяце.
|
|||||||
|
|
|
|
Ну и не забываем, что всегда есть вариант сделать свою реализацию провайдера заказа и добавить туда необходимые поля. Это не так сложно, в доке есть пример
|
|
|
|
|
|
|
|
|
|
|
|
Дмитрий Б, crm 21.300.0
В хелпдеске ещё небольшая статья появится с пояснениями, когда какие поля чем заполняются, но пока не опубликована |
|
|
|
|
|
Александр Исупов, поправлю, будет в этом флаге отдавать "Да" или "Нет".
По поводу условий - шаблоны не поддерживают никакие условия / вычисления. Вставку определенного куска текста по условию можно сделать через робота / БП, это не сложно. Печать оплат и отгрузок я сделал (код написал), но выйдет не скоро. Можно будет напечатать список оплат и отгрузок из заказа и сделки (если включен режим работы "без заказа"), а ещё кнопка "Документ" появится в карточке оплаты и карточке отгрузки. Присылайте ваши шаблоны, я проверю, будут ли они работать корректно, всех ли полей хватает. Пока что есть проблема в том, что если нет ни одной оплаты/отгрузки, таблица из шаблона всё равно попадает в документ. |
|
|
|
|
|
|||
|
|
|
|
Антон Горбылев, сделать вставку куска текста через робота или бп - сложно.
Кажется что нужно написать простой робот или бп генерации документа. А по факту у вас есть компания где люди ежедневвно работают с генератором, и вот это "просто через Бп сделайте" приводит к каскаду проблем в автоматизации и в работе И целый ворох -если это робот - робот это стадия. Генерация доков - это рутинная операция, на одной стадии 2-3 документа. К роботам привязать - усложнить воронку. -если бп - вместо кнопки Документы теперь нужно жать на непонятный квадратик БП, реальное усложнение интерфейса. Поведение абсолютно разное/ -обучение работе новыми нужными кнопками, программирование if умы людей - вот эти документы там а эти здесь -либо вообще перенос всех документов на БП. - куча работы -если переносим в БП кнопка Документы никуда не пропадает в нее все лезут и документов там не находят! - отстутсвует интерактивный запрос использования прошлого нумератора, который есть в документах. Средствами БП также интерактивно оно не решается. - отствие прав на документы. Нельзя сделать чтобы человек не видел то что ему не нужно. В БП можно только показызывать все варианты, но делать проверки через условия. Т.е. от системы "пользователь не может ошибиться" мы переходим к системе - у пользователя куча вариантов нажать не туда и получить ошибку Уже к илометры бп написаны, это проходили. Что дальше, писать рест приложение? Я понимаю что скорее всего приоритеты сейчас кардинально другие, там SPA все такое. Как я вижу реально что бы помогло лично в моих десятках кейсов: - простейшие if условия в полях генератора и\или - возможность, документы генерируемые БП также показывать в разделе документы. Чтобы было единообразие - документы в документах. как идея - в настройках генератора в шаблоне документа указывать бп-обработчик который будет запускаться при генерации этого документа (для каждой сущности свой?), при этом сама генерация полностью переходит в БП. Т.е. написали БП генерации документа по сделке. В настройках генератора указали что при выборе этого документа запускать этот БП. Для человека все прозрачно - генерирует документ, получает документ. Под капотом мы уже сами обеспечиваем чтобы документ был с нужными данными. Может еще какой то способ предложите как сделать так чтобы у пользователя не было 2-3-4-10 кнопок, а чтобы была одна кнопка Документы, с которой он был работал? |
|
|
|
|
init.php
MyClass
|
|||||||
|
|
|
Сделать полноценные выражения (как в БП) - задача сложная. Реализация с простыми ифами и вырезанием части текста - точно поможет? Сложного на ней ничего не собрать, да ещё и при большом количестве текст начнет разъезжаться. Мне больше нравится идея с реализацей редактирования сгенерированных документов через "Документы" в диске, сейчас думаем над этим. |
|||
|
|
|
По поводу списка товаров в заказе - это не ко мне, но я передам запрос. |
|||
|
|
|
Насчет простых ифов сделайте голосовалку на пп, посмотрим мнение коллег. У нас сейчас и на стандартных полях текст разъезжается, выкручиваюсь тем что уменьшаю шрифт хвоста, типа {Thistlongfieldname} Редактор документов - тоже очень интересно. На вебинаре еще расскзывал запрос - практически на каждом портале одна и та же проблема - типовому клиенту делается обычно 2 или больше документов (договор+ счет или договор+счет+акт), а сейчас в генераторе кнопка Отправить - отправляет только один текущий открытый документ. Приходится сначала все себе качать на комп потом прикреплять, ведь клиенту пишут одно письмо. . Огромный запрос кнопка сохранить документы на Битрикс.Диск и прикреплять в письма оттуда же, без скачивания на комп. ЮВ вроде поддержал, но когда оно будет не известно) |
|||||
|
|
|
|
Помогите решить простую проблему. Не могу отправить по почте сгенерированный в БП коробочной версии файл Docx.
БП предельно простой 1) "php код" генерирует документ и сохраняет его в переменную с типом "Файл" 2) "Почтовое событие" отправляет письмо пользователю с вложением в виде этой переменной. Письмо приходит, а вложения нет! php код
Почтовое событие
Пробовал заменить "Почтовое событие" на "Загрузить файл в хранилище Диска" - эффект тот же - ничего не сохраняется. Пробовал в переменную 'filename' передавать не имя файла в ФС а сам $content - опять ничего не происходит. Пробовал менять тип у переменной 'filename' на "Файл (Диск)" - всё по прежнему. Если вывести $content на печать то там содержимое файла есть. Я понимаю что где-то туплю страшно но не могу понять где именно ![]() |
|||||||
|
|
|
|
Добрый день!
Возможно нужно передавать id файлов.
|
|||
|
|
|
А можно этот ID получить без копирования файла? Т.е. как правильно сохранить файл из генератора чтоб на выходе получить вожделенный ID? У класса Body генератора есть метод Save который умеет сохранять содержимое файла на диск или в Storage но я не пойму как им пользоваться. |
|||||
|
|
|
|
Вот здесь посмотрите пример
Посмотрите:
В массиве будет ключ [emailDiskFile] - ID файла. Возможно получится его использовать. |
|||
|
|
|
|
Загрузить документ в поле документа процесса в ленте.
|
|||
|
|
|
|
Удалить файлы после генератора документа:
|
|||||
|
|
|
||||