Odin | База знаний 1С

Как исправить ошибк...
 

Как исправить ошибку "Конструктор не найден" для КолонтитулТабДок?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

{ВнешняяОбработка.ГарантийныйТалон.МодульОбъекта(61,21)}: Конструктор не найден
Колонтитул = Новый <>КолонтитулТабличногоДокумента;
{ВнешняяОбработка.ГарантийныйТалон.МодульОбъекта(62,32)}: Конструктор не найден
ФорматированнаяСтрока = Новый <>ФорматированнаяСтрока; (Проверка: Сервер)
платформа 8.3.25



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Ошибка «Конструктор не найден» при создании объектов `КолонтитулТабличногоДокумента` и `ФорматированнаяСтрока` в серверном модуле связана с тем, что эти объекты являются объектами клиентской части платформы 1С и не доступны для создания на сервере.

В платформе 1С объекты табличного документа и связанные с ним элементы (в том числе колонтитулы и форматированные строки) создаются и управляются в клиентской части (например, в управляемой форме или в клиентском модуле). На сервере эти объекты либо недоступны, либо доступны только для чтения, но не для создания через конструктор.

---

### Как правильно работать с колонтитулами табличного документа в 8.3.25

1. **Создавать и настраивать колонтитулы нужно в клиентском модуле** (например, в модуле формы или в общем модуле, вызываемом на клиенте).

2. **Пример создания и установки колонтитула с форматированной строкой:**

// Создаем табличный документ
ТабДок = Новый ТабличныйДокумент;

// Создаем колонтитул
Колонтитул = Новый КолонтитулТабличногоДокумента;

// Создаем форматированную строку
ФорматСтрока = Новый ФорматированнаяСтрока;
ФорматСтрока.ДобавитьТекст("Гарантийный талон", Новый СтильШрифта(, , , , , , Цвета.Красный));

// Устанавливаем форматированную строку в колонтитул
Колонтитул.ТекстВЦентре = ФорматСтрока;

// Включаем вывод колонтитула
Колонтитул.Выводить = Истина;

// Устанавливаем колонтитул в табличный документ
ТабДок.Колонтитул = Колонтитул;

// Далее выводим табличный документ в форме или сохраняем

3. **Если нужно сформировать табличный документ на сервере, то колонтитулы с форматированными строками лучше не создавать на сервере, а передавать табличный документ на клиент для доработки и вывода.**

---

### Итог

- Объекты `КолонтитулТабличногоДокумента` и `ФорматированнаяСтрока` доступны только в клиентском контексте.
- Создавать их нужно в клиентских модулях.
- На сервере можно создавать и заполнять табличный документ, но оформление колонтитулов с форматированными строками — только на клиенте.

---

Рекомендую посмотреть здесь:
https://its.1c.ru/db/v83125doc#bookmark:dev:TI000000146
https://infostart.ru/public/1044329/ (пример работы с колонтитулами и форматированными строками)



   
ОтветитьЦитата