Bitrix

1С-Битрикс — Как добавить свой документ заказа

После оформления заказа клиентом интернет-магазина, администратор интернет-магазина может выполнить всевозможные действия с заказом на странице управления заказами в том числе и распечатать ряд документов: накладная, инвойс, счет, счет-фактура и бланк заказа. Редко, на бывает необходимо либо изменить какой-либо документ, либо добавить новый. В качестве примера возьмем, что нам требуется добавить документ, который бы выводил слово «Спасибо за заказ» и печатал ниже сумму заказа. Документ назовем «Благодарность».

Для начала нам нужно узнать где 1С-Битрикс хранит шаблоны документов. Из документации узнаем, что предустановленные шаблоны документов заказа находятся в папке /bitrix/modules/sale/reports/, а новые документы следует добавлять в папку /bitrix/admin/reports/ (если мы хотим изменить предустановленный шаблон документа, то нам следует его скопировать из папки /bitrix/modules/sale/reports/ в папку /bitrix/admin/reports/ и изменить его копию в /bitrix/admin/reports/).

Сам шаблон документа представляет собой html-страницу с интегрированными кусками php-кода.

Верх страницы предваряется кодом: <?if (!defined(«B_PROLOG_INCLUDED») || B_PROLOG_INCLUDED !== true) die();?> который останавливает выполнение страницы, если идет ее прямой вызов из адресной строки браузера.

Затем необходимо указать тайтл — он будет показываться на странице печати заказа: <title langs=»ru»>Благодарность</title>.

Также желательно установить кодировку документа таким образом: <meta http-equiv=Content-Type content=»text/html; charset=<?=LANG_CHARSET?>»>

В документ заказа приходят несколько массивов данных, которые можно использовать:

  • $arOrder — массив атрибутов заказа (ID, доставка, стоимость, дата создания и т.д.)
  • $arParams — массив из настроек Печатных форм
  • $arUser — массив из настроек пользователя, совершившего заказ

В нашем документе, который мы хотели сделать, — нам нужно использовать 2 переменные: $arOrder[«PRICE»] — общая стоимость заказа и $arOrder[«CURRENCY»] — валюта заказа.

Ну и вот наконец наш документ:

<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();?>
<html>
<head>
<title langs="ru">Благодарность</title>
<meta http-equiv=Content-Type content="text/html; charset=<?=LANG_CHARSET?>">
</head>
<body>
<p>Спасибо за заказ!</p>
<p><?=$arOrder["PRICE"]?> <?=$arOrder["CURENCY"]?></p>
</body>
</html>

 

Мы решили, конечно же, простейшую и крайне надуманную задачу, но это задача, я надеюсь, поможет прояснить вопросы, связанные с созданием и изменением шаблонов документов заказа в 1С-Битрикс.

Комментариев: 5

Оставить комментарий на Виталий Соков Отменить

Ваш электронный адрес не будет опубликован.Обязательные для заполнения поля отмечены *

один + 18 =