- Платформа PARTS SOFT /
- Возможности /
- Шаблоны xls документов (накладные, упд, счета, счета фактуры)
Шаблоны xls документов (накладные, упд, счета, счета фактуры)
В разделе админпанели Служебные → Шаблоны документов можно создавать собственные шаблоны документов в формате XLS
Используется jXLS 1.X для создания Excel 2007 или 2010
Список шаблонов
Здесь отображаются как стандартные шаблоны, предустановленные нами, так и ваши собственные.

Список шаблонов документов
1. Скачать файл шаблон в XLS-формате.
2. Отредактировать параметры шаблона
3. Удалить шаблон
4. Добавить новый шаблон
Создание шаблона
Для добавления нового шаблона (например, для бланка заказа):
ШАГ 1. В списке шаблонов найдите подходящий под ваш тип документов и скачайте его (иконка с документом). В нашем случае Стандарт - Бланк заказа.
ШАГ 2. Подготовьте файл шаблона. После этого вернитесь в раздел админпанели Служебные → Шаблоны документов и нажмите кнопку Создать.
ШАГ 3. Отредактируйте параметры шаблона:

Параметры шаблона
| Настройка | Описание |
|---|---|
|
Наименование |
Название шаблона для списка из раздела в Служебные → Шаблоны документов. |
|
Группа |
Выберите группу документов, для печати которых сможет применяться шаблон:
|
|
Регион |
Определяет привязку шаблона к конкретным регионам. Выбрать шаблон смогут только:
Если поле оставить пустым, то данный шаблон будет доступен во всех регионах. |
|
Тип клиента |
Определяет привязку шаблона к типу клиента: Физ.лицо или Юр.лицо. По умолчанию указан вариант Любой (для всех типов клиентов). Например, если для шаблона счета выбрано Физ.лицо, то менеджер сможет выбрать его только для печати счета клиента - частного лица. Аналогичное поведение будет и для клиента на сайте (при условии, что для шаблона включена опция Показывать в клиентской части) — в разделе Счета личного кабинета при нажатии на кнопку Скачать. |
| Активен | Включите галочку, чтобы данный шаблон можно было выбрать для печати документа в админпанели. Если шаблон настраивается для бланка заказа, то он будет доступен при нажатии на кнопку Печать в разделе админпанели Заказы → По группам. |
|
Показывать в клиентской части |
Включите галочку, чтобы данный шаблон можно было выбрать для печати документа на сайте. |
|
Файл шаблона |
Выберите и загрузите подготовленный файл шаблона (см шаг 1 текущей инструкции). Файл должен быть в формате XLS 97-2003. Другие форматы не поддерживаются.
|
ШАГ 4. Сохраните изменения. Теперь шаблон появится среди доступных на печать.

Выбор шаблона
Вывод списка позиций, даты заказа, названия компании и других параметров
Для этого используются переменные. Например:
-
${order.orderId}— номер заказа клиента -
${order.dateWords}— дата заказа словами -
${order.customer.shortEssential}— реквизиты клиента -
${order.region.essential.companyName}— название компании -
${order.sumRublej}— сумма заказов в рублях
Для списка позиций используется оператор цикла <jx:foreach items="${order.orderItems}" var="order_item"></jx:foreach> где
-
order.orderItems— массив переменных для перебора -
order_item— наименование переменной в цикле -
status— переменная информации о цикле
Цикл необходимо закрыть оператором </jx:foreach>. Операторы начала цикла и конца цикла должны быть проставлены в пустых строках до и после строки шаблона таблицы списка.

Вывод списка позиций
В результате получаем:

Сформированный по шаблону бланк заказа
Подробнее о переменных в шаблонах
Для каждой группы документов в шаблоне присутствует корневой объект:
-
Заказы —
order -
Накладные —
invoice -
Счета —
bill -
Возврат —
productReturnReasonRequest -
ПКО —
balancePko
У этих объектов есть зависимые объекты и собственные поля:
invoice — накладная
-
id— ID документа в системе -
createdAt— дата создания -
sum— сумма -
sumNds— сумма НДС -
sumWithoutNds— сумма без НДС -
qnt— количество единиц товара, не путать с количеством позиций документа -
weight— сумма веса позиций по накладной -
positionCount— количество позиций заказа -
positionCountWord— количество позиций документа словами -
monthNum— месяц номер (v1.1) -
monthWord— месяц создания документа словами -
year— год создания документа -
day— день создания документа -
ndsPercent— процент ндс -
no— номер документа -
autosDescription— если накладная создана из заказа к которому привязан автомобиль, переменная выведет название автомобиля -
sumRublej— сумма словами рублей -
sumGriven— сумма словами гривен -
sumTenge— сумма словами тенге -
dateWords— дата словами, например 12 декабря 2017 года -
documentCreatedAt— дата документов по данным поставщика -
documentCreatedAtWords— дата документов по данным поставщика словами -
customer— ссылка на объект типа customer (Пользователь) -
region— ссылка на объект типа region (Регион) -
invoiceItems— список позиций документа
invoiceItem — позиция накладной
-
oem— номер детали -
makeName— производитель детали -
detailName— название детали -
price— цена за единицу -
priceWithoutNds— цена без НДС -
qnt— количество -
sum— сумма -
sumWithoutNds— сумма без ндс -
ndsSum— сумма с ндс -
gtd— номер накладной -
countryDigitalCode— код страны -
countryCode— буквенный код -
countryShortName— короткое наименование страны -
countryFullName— полное наименование страны -
weight— вес детали -
tnvdCode— код ТНВД -
currency— код валюты (накладные поставщиков) -
currencyCode— цифровой код валюты (накладные поставщиков) -
unit— единица измерения (накладные поставщиков) -
orderItemComment— комментарий позиции клиентского заказа (добавлено 03.11.2021) -
stockBatchesAsLabel— в какой ячейке на складе находилась позиция (добавлено 11.06.2024)
customer — клиент
-
id— ID клиента -
updCompileName— имя клиента для УПД (без ID клиента) -
email— адрес электронной почты -
balance— баланс -
compileName— имя клиента -
contractComment— Основание (договор, доверенность) -
urType— тип клиента 0 — юр. лицо, 1 — физ. лицо -
contact— ссылка на объект contact (Контакты) -
essential— ссылка на объект essential (Реквизиты) -
deliveryAddress— ссылка на объект address (адрес доставки) -
officialAddress— ссылка на объект address (юр. адрес / адрес регистрации) -
clientCoef— клиентский коэффициент наценки -
staticStockCell— ячейка склада (информационная)
contact — контакты
-
phone— основной номер телефона -
cellPhone— добавочный номер телефона -
skype— скайп -
email— email (только для региона)
address — адрес
-
shortAddress— адрес краткий -
fullAddress— адрес полный
region — регион
-
name— название региона -
nds— уровень НДС в регионе -
contact— ссылка на объект contact (Контакты) -
essential— ссылка на объект essential (Реквизиты) -
deliveryAddress— ссылка на объект address (Адрес Доставки) -
officialAddress— ссылка на объект address (Юр. адрес)
essential — реквизиты
-
companyName— название компании -
ceoName— ФИО директора -
buhName— ФИО бухгалтера -
inn— инн -
kpp— кпп -
bik— бик -
bank— Наименование банка -
cityBank— Год банка -
loroAccount— Счет -
ogrn— ОГРН -
okpo— ОКПО -
korrSchet— Корр счет банка -
shortEssential— краткие реквизиты
order — заказ
-
id— ID заказа -
customer— ссылка на объект customer (Клиент) -
region— ссылка на объект region (Регион) -
createdAt— дата создания -
orderId— ID заказа в разрезе клиента -
sum— сумма -
qnt— количество -
currentQnt— количество актуальное -
sumRublej— сумма в рублях -
sumGriven— сумма в гривнах -
sumTenge— сумма в тенге -
dateWords— дата словами (17 декабря 2017) -
monthWord— месяц словами -
monthNum— месяц номер (v1.1) -
year— год -
day— день -
positionCount— количество позиций -
positionCountWord— количество позиций словами -
orderItems— ссылка на массив объектов orderItems -
deliveryType— ссылка на объект deliveryType -
deliveryPoint— ссылка на объект deliveryPoint -
orderAddress— ссылка на объект adress -
loadOrderClientNumber— номер заказа из файла заказа клиента -
clientFileCells— двухмерный массив ячеек файла оптового заказа (если подгружался). Пример вызова ${order.clientFileCells[2][4]} -
weight- сумма веса всех позиций заказа
deliveryType — тип доставки
-
id— ID типа доставки -
name— название типа доставки
deliveryPoint — точка выдачи
-
id— ID типа доставки -
name— название типа доставки -
title— описание
orderItem — позиции заказа
-
id— ID позиции -
cost— цена продажи -
sum— сумма -
firstCost— цена закупки -
qnt— количество заказано -
currentQnt— текущее актуальное количество -
qntConfirmed— количество подтвердили -
qntAccept— количество подтвердили накладной -
qntAcceptOrConfirmed— если есть количество подтверждено накладной — выдается оно, если нет — количество подтвержденное через веб—сервис/файлом ответа/через ответ на сайте -
qntIncome— количество выдали -
answereQnt— количество для ответа клиенту -
status— статус текстом -
statusCode— код группы статуса -
comment— комментарий клиента -
oem— номер детали -
makeName— бренд -
detailName— название -
minDeliveryDay— минимальный срок доставки -
maxDeliveryDay— максимальный срок доставки -
customerTitle— название клиента -
lastStatusChangeAt— дата последнего изменения статуса -
createdAt— дата создания позиции -
userCommitId— ID менеджера отправившего в статус В работе -
commitUserName— имя менеджера отправившего в работу -
userOrderId— ID менеджера создавшего заказ -
userOrderName— имя менеджера создавшего заказ -
column(1—20)— если заказ подгружался из excel, то в этих ячейках значения столбцов строки заказа. -
stockBatchesAsLabel— в какой ячейке на складе находилась позиция (добавлено 11.06.2024) -
detailComment- комментарий из позиции прайс-листа -
searchComment- комментарий из прайс-листа -
weight- вес позиции -
requestedMakeName- запрашиваемый бренд -
requestedOem- запрашиваемый номер
bill — счет
-
customer— ссылка на объект customer (Клиент) -
region— ссылка на объект region (Регион) -
id— ID счета -
ndsPercent— ндс процентов -
sumNds— сумма ндс -
createdAt— дата создания -
sum— сумма -
qnt— количество единиц товара -
sumRublej— сумма словами в рублях -
sumGriven— сумма словами в гривнах -
sumTenge— сумма словами в тенге -
dateWords— дата словами -
monthNum— месяц номер (v1.1) -
monthWord— месяц -
year— год -
day— день -
positionCount— количество строк -
positionCountWord— количество строк словами -
billItems— массив элементов счета объекты billItem -
order— объект типа Order (если счет привязан к заказу)
billItem — позиции счета
id — ID позицииsum — суммаndsSum — сумма ндсsumWithoutNds — сумма без ндсcost — цена за единицуqnt — количествоoem — номерmakeName — брендdetailName — название-
detailComment- комментарий из позиций прайс-листа -
searchComment- комментарий из прайс-листа
productReturnReasonRequest — документ возврата
-
id— ID возврата -
customer— ссылка на объект customer (Клиент сделавший возврат) -
region— ссылка на объект region (Регион оформления возврата) -
productReturnReason— ссылка на объект productReturnReason (Тип причины возврата) -
orderItem— ссылка на объект orderItem (Позиция на возврат) -
invoices— накладные по которым был выдан товар (может быть несколько) -
returnSum— сумма к возврату с учетом процента удержания -
returnCost— возврат за одну позицию с учетом процента удержания -
returnQnt— количество к возврату -
dateWords— дата словами -
monthNum— месяц номер (v1.1) -
monthWord— месяц -
year— год -
day— день
productReturnReason — тип возврата
-
id— ID типа возврата -
name— название -
percentRetention— процент удержания
basketBundle — корзина на печать (v 1.07)
-
customer— ссылка на объект customer (доступна только для клиентской части, при использовании клиентского коэффициента рекомендуем проводить проверку на пустоту. Например ${basket.cost * (basket_bundle.customer != null ? basket_bundle.customer.clientCoef : 1)}) -
region— ссылка на объект region (Регион печати корзины) -
user— ссылка на объект user (Менеджер печатающий корзину) -
baskets— позиции корзины, массив объектов basket -
sum— сумма число -
qnt— сумма единиц товара -
sumRublej— сумма словами в рублях -
sumGriven— сумма словами в гривнах -
sumTenge— сумма словами в тенге -
dateWords— дата словами -
monthNum— месяц номер (v1.1) -
monthWord— месяц -
year— год -
day— день -
positionCount— количество строк -
positionCountWord— количество строк прописью -
weight- сумма веса всех позиций
basket — элементы корзины (v 1.07)
-
oem— номер детали -
oemMask— номер скрытый -
makeName— бренд -
detailName— название -
cost— цена -
qnt— количество -
minDeliveryDay— минимальный срок доставки -
maxDeliveryDay— максимальны срок доставки -
sum— сумма позиций -
detailComment- комментарий из позиций прайс-листа -
searchComment- комментарий из прайс-листа -
weight- вес позиции -
requestedMakeName- запрашиваемый бренд -
requestedOem- запрашиваемый номер
balancePko — документ ПКО
-
region— ссылка на объект region (Регион клиента) -
user— ссылка на объект user (Менеджер выполнивший внесение на баланс) -
customer— ссылка на объект customer (Клиент сделавший пополнение баланса) -
sum— сумма число -
sumRublej— сумма словами в рублях -
sumGriven— сумма словами в гривнах -
sumTenge— сумма словами в тенге -
dateWords— дата словами -
monthNum— месяц номер (v1.1) -
monthWord— месяц -
year— год -
day— день -
description— описание пополнения -
incomeType— источник пополнения -
ruble— целая часть суммы -
penny— копейки -
id— ID документа -
createdAt— дата создания документа
route_request — заявка на маршрут
-
driver— водитель ссылка на объект User(Менеджер) -
delivery_routes— группировка инвойсов по маршрутам. Ссылка на объект RouteRequestDeliveryRoute(группа инвойсов по маршрутам)
RouteRequestDeliveryRoute — группа инвойсов по маршрутам
-
routeName— имя маршрута -
sum— сумма -
invoices— накладные (массив объектов типа invoice)
Переменные Liquid для описания в выгрузках
Доступные переменные:
-
oem– номер детали; -
source_oem– не форматированный номер из прайс-листа; -
barcode– EAN13; -
make_name– бренд (производитель); -
detail_name– название детали; -
cross– кроссы из локальной базы кроссов, если активна выгрузка кроссов; -
qnt– количество; -
min_qnt– минимальное количество; -
price_comment– комментарий к прайс-листу; -
price_item_comment– комментарий к детали в прайс-листе; -
detail_name_comment– название детали с опциональными пометками (мин. количество, комментарий прайс-листа), если их использование активировано; -
price_id– id прайс-листа; -
price_name– название прайс-листа; -
price_name_in_search– название прайс-листа в клиентской части (из настроек прайс-листа); -
min_delivery_day– минимальный срок доставки; -
max_delivery_day– максимальный срок доставки; -
inner_article– внутренний номер поставщика; -
inner_code– внутренний номер из карточки товара; -
product_description– описание из карточки товара YandexMarket; -
sbermegamarket_description– описание из карточки товара СберМегаМаркет; -
google_description– описание из карточки товара Google Merchant; -
aliexpress_description– описание из карточки товара AliExpress; -
avito_description– описание из карточки товара Avito; -
price_items– при режиме выгрузки Лучшие цены содержит остальные все предложения по номеру; -
properties_N– свойства, загруженные в прайс-листе в соответствующие поля (N от 1 до 6).