Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

В вид печатной формы нужно вставлять содержимое файла:

Блок кода
languagenone
themeDefaultlanguagenone
kp_selection_template.html

...

Контрольный признак нормальной кодировки:

Блок кода
languagenone
themeDefault
languagenone
Коммерческое предложение
Описание жилых комплексов
Изображение не загружено
Основные параметры

...

Минимальная структура:

Блок кода
languagejson
themeDefaultlanguagejson
{
  "selection": {
    "title": "Коммерческое предложение",
    "subtitle": "От застройщика «ПАРТНЕР-СТРОЙ СЗ АО»",
    "date": "30.06.2026",
    "count": 5
  },
  "objects": [
    {
      "title": "Квартира · 38,3 м²",
      "subtitle": "Маяк Курган, ГП 6, Парадная 1, кв. №13",
      "price": "3 830 000",
      "pricePerM2": "100 000 руб./м²",
      "planImg": "data:image/png;base64,...",
      "params": [
        { "k": "Площадь", "v": "38,3 м²" },
        { "k": "Этаж", "v": "2" }
      ],
      "description": "Краткое описание объекта"
    }
  ],
  "titlePage": {
    "renderImg": "data:image/png;base64,...",
    "renderCaption": "Рендер жилого комплекса",
    "blocks": [
      {
        "title": "ЖК Маяк",
        "text": "Описание жилого комплекса"
      }
    ],
    "footerLeft": "© 4DEV · Макет подборки",
    "footerRight": "Поддержка печати: Ctrl+P / Сохранить как PDF"
  }
}

...

Основной ожидаемый формат:

Блок кода
languagejson
themeDefaultlanguagejson
"titlePage": {
  "blocks": [
    { "title": "ЖК Маяк", "text": "Описание ЖК" }
  ]
}

...

Если описание не передано ни в одном поле, в PDF будет диагностический блок:

Блок кода
languagenone
themeDefaultlanguagenone
Описание ЖК не передано в JSON. Нужно заполнить titlePage.blocks[] или titlePage.description.

...

Текущий template настроен под A4.

Ожидаемая раскладка:

Количество объектовСтраницы
1объект + описание ЖК на одной странице
22 объекта + описание ЖК на одной странице
33 объекта на первой странице, описание ЖК на второй
43 объекта на первой странице, 1 объект + описание ЖК на второй
53 объекта на первой странице, 2 объекта + описание ЖК на второй
63 объекта на первой странице, 3 объекта на второй, описание ЖК на третьей

Техническая логика template:

...

Должен быть настроен автотекст количества объектов подборки.

Логика:

Блок кода
languagenone
themeDefaultlanguagenone
Если КоммерческоеПредложение = Неопределено Тогда
    Результат = 1;
Иначе
    Результат = КоммерческоеПредложение.ОбъектыНедвижимости.Количество();
КонецЕсли;

...

HTML ожидает вызов:

Блок кода
languagenone
themeDefaultlanguagenone
window.v8proxy.call(methodName, payload)

...

Якорь
---
---
Типовые дефекты и диагностика

СимптомВероятная причинаЧто проверить
В PDF РљРѕ... вместо русского текстаtemplate сохранен не в UTF-8Перезагрузить kp_selection_template.html в UTF-8
Нет описания ЖК1С не передала titlePage.blocks[] или fallback-поляПроверить JSON перед PDF
Видно Описание ЖК не передано в JSONTemplate работает, но данные не заполненыНастроить автотекст/маппинг описания ЖК
PDF уходит на лишнюю страницуСлишком длинные описания/изображения или измененный CSSПроверить page-break и размеры блоков
PDF не открывается в браузереНекорректная отдача файлаПроверить Content-Type, Content-Length, завершение записи
Дубли объектовНет проверки дублей в табличной частиПроверить добавление по ссылке объекта недвижимости

Якорь
--template
--template
Актуальный контроль template

Последняя проверка template:

Блок кода
language
languagenone
themeDefaultnone
3 объекта -> 2 страницы
4 объекта -> 2 страницы
5 объектов -> 2 страницы
6 объектов -> 3 страницы

Кодировка проверена:

Блок кода
languagejson
themeDefaultlanguagejson
{
  "proper": true,
  "mojibake": false
}

View file
nameCRM4DEV-selection-commercial-offer.zip
height250