Реализация сложной шапка в табличном поле на управляемых формах

1. Deryni 23 03.04.20 10:40 Сейчас в теме
Добрый день. Подскажите, насколько реально реализовать подобную шапку табличного поля на управляемых формах?
Колонки будут создавать динамически. Поворот текста в колонках на 90 градусов реализовывать не обязательно, но имеет большое значение, чтобы третья строка была по высоте выше чем первые две.
На обычных формах я примерно представляю как такое сделано, хотя сдаётся мне, что не получится в шапке делать заголовки разной высоты.
Или всё-таки не морочить голову и сделать через табличный документ (сейчас это реализовано в 77 именно так).
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
12. Xershi 1490 03.04.20 14:25 Сейчас в теме
(1) это можно настроить и руками в самой форме. В ОФ таких возможностей нет.
Единственное это заголовок под углом.
Если не делать, то проблем нет.
13. Deryni 23 03.04.20 14:27 Сейчас в теме
(12) А какие свойства нужно поменять, чтобы оно отображалось именно так?
Если можно руками в форме, то я смогу повторить и программно.
14. Xershi 1490 03.04.20 14:28 Сейчас в теме
(13) группу делаешь и накидываешь колонки туда в любой форме.
Посмотри как упаковки делают в типовых.
Там еще добавляют условное оформление, чтобы топорно не выглядело.
15. Deryni 23 03.04.20 14:32 Сейчас в теме
(14) Группы то я делал, но у меня получается что заголовок колонки даже в группе будет всё равно той же высоты, что задано для таблицы.
16. Xershi 1490 03.04.20 14:34 Сейчас в теме
(15) ну это уже как настроишь. Там вы куча реквизитов для настройки.
Если не знаете, что за они рекомендую изучить книжку разработка в управляемых формах.
Недавно видел обзор на курс Гилева. Но он платный и для разовой задачи ни к чему.
17. Deryni 23 03.04.20 14:51 Сейчас в теме
(16) Попробовал схитрить. Получилось сделать последнюю ячейку в группе больше высоты.
Остался вопрос как настроить так, чтобы оно ширину колонок само не меняло.
18. Xershi 1490 03.04.20 14:54 Сейчас в теме
(17) задать ее статикой. И как уже написал изучить методу, чтобы понимать что за что отвечает. А не тыкаться.
19. Deryni 23 03.04.20 15:52 Сейчас в теме
(18) так там нельзя задать статикой. Я ставлю ширину, а ему глубоко пофиг. Пробовал отключать автоширину и всё с одним результатом.
20. Xershi 1490 03.04.20 15:56 Сейчас в теме
(19) ну как уже сказал изучайте методу или тыкайтесь пока не прокатит.
21. Deryni 23 03.04.20 15:58 Сейчас в теме
(20) Ладно. Я понял, что вы не знаете, можно ли это сделать вообще и как это можно сделать.
2. magvay_k 64 03.04.20 11:08 Сейчас в теме
Добрый день. Только через табличный документ.
3. VictorRGB2 14 03.04.20 11:19 Сейчас в теме
можно, конечно, извратиться с созданием элементов формы, но через табличный документ проще в плане кода будет
4. Deryni 23 03.04.20 12:41 Сейчас в теме
(3) Так извратиться я уже извратился и даже что-то получилось. Вопрос не в количестве кода, а в реальности реализации.
Четез таб. док тоже не очень весело, там будет потом ручной ввод данных.
5. VictorRGB2 14 03.04.20 12:46 Сейчас в теме
(4) в плане ввода данных табличный документ удобнее и проще.
его можно просто перевести в таблицу значений и дальше с ней работать или сохранить
а в плане реальности реализации и то и другое возможно
6. Deryni 23 03.04.20 12:47 Сейчас в теме
(5) Ну я не нашёл способ сделать например верхнюю часть шатки табличного документа в одну строку, а нижние - в несколько.
7. VictorRGB2 14 03.04.20 14:00 Сейчас в теме
(6) например так
&НаСервере
Процедура ПриОткрытииНаСервере()
	
	// получаем макет
	Макет = РеквизитФормыВЗначение("Объект");
	МакетТД = Макет.ПолучитьМакет("Макет");
	
	// объявляем области
	ОбластьШапка = МакетТД.ПолучитьОбласть("ОбластьШапка");
    ОбластьСтрока = МакетТД.ПолучитьОбласть("ОбластьСтрока");
    ОбластьИтог = МакетТД.ПолучитьОбласть("ОбластьИтог");
	
	// формируем табличный документ
	Объект.ТаблДок.Вывести(ОбластьШапка);
	
	ДанныеДляЗаполнения = ВыполняемОтчет();
	// заполняем отчет
	
	// выводим итог
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	ПриОткрытииНаСервере();
КонецПроцедуры
Показать


в макете можно как угодно сформировать вид табличного документа, в коде заполнить его и передать в форму
в форме вручную что угодно изменить где надо
при закрытии формы сохранить данные Объект.ТаблДок в таблицу значений и сохранить при необходимости
при повторном открытии формы перечитать результат сохраненной таблицы значений

пример ИМХО, не пинайте, так понял задачу
8. Deryni 23 03.04.20 14:07 Сейчас в теме
(7) ой пардон. Я не нашёл способ сделать такую шапку в таблице формы. В табличном документе то проблем нет.
9. VictorRGB2 14 03.04.20 14:15 Сейчас в теме
(8) через таблицу формы это изврат творить через группы, а если еще и кодить все это дело...
имхо с табличным документом проще
10. Deryni 23 03.04.20 14:20 Сейчас в теме
(9) та кодить через группы можно. Вопрос в том, что высота в шапке задаётся для всей шапки, а не для группы. И получаетяся, что я не могу верхнюю строку сделать высотой 1 строка, а следующие - 2 строки.
11. VictorRGB2 14 03.04.20 14:25 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот