- В этой теме 1 ответ, 2 участника, последнее обновление 1 день, 6 часов назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как правильно добавить колонку в ТаблицуЗначений в 1С 8.2/8.3?
можно ли в 1с8 так добавлять колонки в ТЗ
ТЗ.Колонки.Добавить(«СумМПл»,»Число»,15,2)
В 1С 8 (8.2, 8.3) для добавления колонок в ТаблицуЗначений метод Колонки.Добавить() используется, но его сигнатура и параметры отличаются от того, что вы написали.
Правильный вызов выглядит так:
|
1 |
ТЗ.Колонки.Добавить("СумМПл", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2))); |
То есть:
— Второй параметр — это объект типа ОписаниеТипов, в котором указывается тип данных колонки (например, «Число»).
— Для числового типа можно указать точность и разрядность через КвалификаторыЧисла.
— Третьим и четвертым параметрами (15, 2) в методе Колонки.Добавить() напрямую нельзя передавать ширину и точность.
Пример создания колонки с числовым типом с точностью 2 знака после запятой:
|
1 2 |
ТЗ = Новый ТаблицаЗначений; ТЗ.Колонки.Добавить("СумМПл", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2))); |
Если вы хотите задать заголовок колонки, то можно использовать перегрузку с третьим параметром — заголовком, например:
|
1 |
ТЗ.Колонки.Добавить("СумМПл", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2)), "Сумма с НДС"); |
Но ширина колонки в табличном поле задается уже на уровне элемента формы (ТабличноеПоле.Колонки), а не в ТаблицеЗначений.
Итого: вызов
|
1 |
ТЗ.Колонки.Добавить("СумМПл","Число",15,2) |
не сработает, так как второй параметр должен быть объектом ОписаниеТипов, а не строкой, и параметры ширины и точности не передаются таким образом.
Рекомендую использовать именно объект ОписаниеТипов с КвалификаторамиЧисла для числовых колонок.
https://helpf.pro/faq8/view/274.html