Как добавить пдф файл в 1с битрикс
Объекты ActiveX недоступны для размещения в управляемых формах, как было ранее в обычных, при этом необходимость размещения таких объектов востребована.
Покопался на форумах, мне нужно было разместить файл PDF в управляемой форме, чтобы доступ был в веб-клиенте. В тонком клиенте получилось (не как в обычной форме, но довольно просто), а в веб-клиенте потребовалось покопаться. Привожу описание как сделал размещение файла PDF.
Сразу замечу, что у Вас уже должен быть установлен веб-сервер и база 1С опубликована на нем.
Моя ситуация: веб-сервер IIS, база 1С 8.3 в клиент-серверном варианте.
В качестве примера создаю простую обработку с управляемой формой.
1) В начале нам необходимо разместить на форме объект, который будет визуально отображать наш файл.
Для этого:
- Добавим реквизит формы "Реквизит1" с типом "Строка"
- Разместим реквизит на управляемой форме
- Изменим для реквизита на форме свойство "Вид", установив его в "Поле HTML документа"
2) ВАРИАНТ для Тонкий клиент, Толстый клиент:
Открытие файла осуществляется простым присваиванием реквизиту формы "Реквизит1" пути к файлу.
Примечание: Здесь, например, можно организовать диалог выбора файла и отображать конкретный файл.
Если же, например, файлы хранятся в базе, то предварительно сохранить файл в предопределенный каталог.
3) ВАРИАНТ для Веб-клиент:
Документ HTML в веб-клиенте приобретает тип "ВнешнийОбъект", в тонком клиенте он имеет тип "COM-объект". Исходя из этой ограничивающей особенности режима веб-клиента "Реквизит1" необходимо определять ещё на сервере тегами HTML.
data = "путь к опубликованному на веб-сервере файлу"
type = "тип приложения для открытия"
width = "ширина окна"
height = "высота окна"
Обработка выгрузки и загрузки данных через XML между идентичными конфигурациями с возможностью установки произвольных отборов на выгружаемые объекты.
Подключаемый отчет на системе компоновки данных по типам объектов 1С показывает: 1) Совокупности таблиц SQL для хранения объекта 1С и их предназначение; 2) Число объектов данного типа; 3) Размеры хранения данных и индексов в MB (мегабайтах); 4) Сравнение данных двух баз
Предназначается для запуска сеанса другого пользователя из своего сеанса 1С (если пароль вам неизвестен).
Если пользователю не хватает прав на объект, то на практике в 90 % случаев, недостающую роль можно найти через типовой регистр сведений Права ролей. Также с помощью дополнительного отчета или небольшого расширения можно ускорить описанный процесс.
Онлайн диаграмма доступных лицензий 1С и показателей ресурсов сервера 1С в различных измерениях и отборах.
Обработка ищет все объекты базы, в которых одновременно присутствуют перечисленные элементы. Построена на базе типовой обработки Все функции - Стандартные - Поиск ссылок на объект, но позволяет накладывать отбор не по одному объекту, а по нескольким, что позволяет настраивать поиск по комбинациям условий
Часто не хватает визуализации хронологии документов в структуре подчиненности и кнопок проведения. Это расширение конфигурации, с функционалом структуры подчиненности документов, отображающее хронологическую последовательность документов во времени и дающее доступ к проведению, отмене проведения, пометке на удаление документов непосредственно в форме подчиненности.
Обработка для массовой проверки доработок конфигурации: Открытие форм, Печать, Формирование отчетов, Проведение документов, Запись справочников, ПВХ, ПВР. Выдает список обнаруженных ошибок. Рекомендуется применять для тестирования обновленной конфигурации, перед установкой пользователям. В коде используются универсальные методы поэтому подходит для большинства конфигураций, построенных на базе библиотеки стандартных подсистем.
Групповая обработка ссылок вида Объект не найден (502:37855254002e11eb11e73b8f36150d9e) заполняется максимально просто копированием и вставкой из буфера: 1) Выделяет уникальные идентификаторы (далее УИ); 2) Ищет ссылки на объекты базы по УИ; 3) Создаёт пустые объекты с указанным УИ; 4) Регистрирует найденные ссылки для обмена данными. Работает на любых продуктах 8.3
Обработка на управляемых формах для работы с календарями google, событиями календарей и контактами.
Обработка проверяет наличие и решает проблему с ошибкой развернутого сальдо в Оборотно-сальдовой ведомости (регистр бухгалтерии Хозрасчетный) из-за ошибки Универсального редактора реквизитов или кода программиста, устанавливающего пустые ссылки в значениях Валюты, Подразделения, Направления деятельности не равными NULL. И пересчёт итогов тут точно не поможет.
Выполнил 3 разных теста для проверки серверного оборудования (тест 1С, тесты gilev) на возможное число 1С онлайн-пользователей одновременно работающих на нем и интерпретировал результаты тестов через легких, средних и тяжелых пользователей с помощью таблицы с профилями реальных пользователей.
Перед началом проекта требуется определить параметры серверного и клиентского оборудования, необходимые для работы внедряемой программы 1С:Предприятие, и учесть будущую нагрузку, которая ляжет на систему в реальной рабочей обстановке. Мощность оборудования должна быть достаточной для нормальной работы пользователей. Но как подобрать сервер простым способом?
На время сеанса отключаем контроль остатков и проверку документов в ERP, КА, УТ типовыми средствами и простым расширением.
Часто при моделировании примеров бизнес-процессов, на запуске в эксплуатацию или закрытии требуется несколько раз прогнать ситуацию с разными настройками, а для этого изменить, удалить ранее введенную цепочку документов. Дается все это с трудом. Ты уверен, что не навредишь своими действиями системе, но документы цепляют друг друга и ругаются контролями остатков, не разрешая тебе менять их в произвольном порядке.
Есть несколько удобных опций для облегчения внесения изменений.
Для уведомления пользователей программных продуктов 1С о разных событиях, в них включена подсистема «Новостной центр». Это довольно удобная штука, т.к. новостные ленты сообщают о выходе обновлений, о новостях и событиях в сфере учёта. Но можно увеличить пользу от новостной подсистемы используя её локально в рамках 1С базы. Например, внутренняя служба техподдержки или внедряющая компания может через новостную ленту оповещать пользователей информационной базы об изменениях в программе, совещаниях, проведении тестирований, заполнения нужных документов или сдача отчетов к определенной дате и т.п.
Пример технического задания для практического понимания основных разделов.
Кратко описаны основополагающие моменты при старте групповой разработки конфигурации несколькими программистами. Полезно для проектной документации как требование к разработчикам или сопровождающей компании
Ссылка на компетенции по 1С:ERP - команда со знаниями, умениями и успешными проектами.
Сразу уточню, эта информация предназначена для разработчиков или технических специалистов. Все настройки приведены для виртуальной машины Битрикс. Цель данного материала - показать как работает генерация PDF-файлов на сервере и подсказать быстрое решение этой задачи.
Я пробовал много модулей для конвертации html в pdf и расскажу о самом простом и который без проблем поддерживает русский язык. Это MPDF версии 6. Можете устанавливать версию и выше, но зачастую необходимости в этом нет, а проблем с настройками получите гораздо больше.
Итак, скачиваете архив MPDF здесь. Закачиваете все файлы к себе на сайт в директорию, например, /mpdf/.
Дальше вам нужно определить, в какой директории вы будете генерировать pdf. Это важно, т.к. для этой директории мы установим специальные параметры на сервере. Например, вы будете генерировать pdf в папке /pdf/. Размещаете там файл index.php в кодировке utf-8, в котором размещаете такой код:
<?
// подключение служебной части пролога для работы API Битрикса
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
include($_SERVER["DOCUMENT_ROOT"]."/mpdf/mpdf.php");
$html = '<div>Здесь содержимое PDF в виде html-кода.<br>Спасибо RushStudio.by за помощь.</div>';
//настройки для работы с кириллическими символами
$mpdf = new mPDF('utf-8', 'A4', '10', 'Arial');
$mpdf->charset_in = 'utf-8';
//генерируем PDF
$mpdf->WriteHTML($html);
$mpdf->Output();
// подключение служебной части эпилога
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
exit;
?>
<Directory /home/bitrix/www/pdf>
php_admin_value mbstring.func_overload 0
</Directory>
Где /home/bitrix/www/pdf - путь на сервере к директории, где генерируются PDF. Эту настройку нужно сделать, чтобы работала поддержка русского языка.
Читайте также: