Как в обычных формах правильно скрыть на форме документа тч, чтобы сохранились пропорции на форме

1. user824140 07.11.21 21:59 Сейчас в теме
ОБЫЧНЫЕ формы. Для некоторой группы сотрудников нужно скрыть вторую тч на форме. Но после того, как я сделал ее невидимой - ситуация стала, как во вложении. То есть, саму тч не видно, но осталось место, которое она занимала. Пробовал программное изменение расположения (поднимал их вверх) нижних элементов - комментария и т.д., но стало только хуже.
Как правильно скрыть вторую тч, чтобы на ее месте не оставалось пустое пространство?
Прикрепленные файлы:
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
14. user790708 12.11.21 16:31 Сейчас в теме
(1) Вверху обработки: желтая кнопка со стрелочками демонстрирует свертку и отображение части элементов интерфейса. Скрываемые элементы расположены на отдельной панели
Прикрепленные файлы:
тест.epf
2. user824140 07.11.21 22:06 Сейчас в теме
Если програм. подтянуть вверх реквизиты, которые идут за второй (скрытой) таблицей, то выходит вот такая картинка (во вложенном файле).
Прикрепленные файлы:
8. wau8824ru 23 08.11.21 05:36 Сейчас в теме
(2)
то выходит вот такая картинка

перед открытием формы попробуйте
	//88( Администратор 08.05.2020 19:34:33
	ЭтаФорма.ИмяСохраненияПоложенияОкна = Новый УникальныйИдентификатор();
	//)88 Администратор 08.05.2020 19:34:35
КонецПроцедуры // ПередОткрытием()
9. wau8824ru 23 08.11.21 05:40 Сейчас в теме
(2)
Если програм. подтянуть вверх реквизиты, которые идут за второй (скрытой) таблицей, то выходит вот такая картинка (во вложенном файле).

а вообще нужно при открытии нужно программно изменять привязки.
примерно так
	Если ЭлементыФормы.Найти("Контрагент") = Неопределено Тогда
		// ПолеВвода Контрагент
		ПолеВводаКонтрагент = ЭлементыФормы.Добавить(Тип("ПолеВвода"), "Контрагент", , ЭлементыФормы.ПанельТовары);
		ПолеВводаКонтрагент.Данные = "Контрагент";
		ПолеВводаКонтрагент.КнопкаОткрытия = Истина;
		ПолеВводаКонтрагент.УстановитьПривязку(ГраницаЭлементаУправления.Лево, ЭлементыФормы.ПанельТовары, ГраницаЭлементаУправления.Лево);
		ПолеВводаКонтрагент.УстановитьПривязку(ГраницаЭлементаУправления.Право, ЭлементыФормы.ПанельТовары, ГраницаЭлементаУправления.Лево, ЭлементыФормы.ПанельТовары, ГраницаЭлементаУправления.Право);
		ПолеВводаКонтрагент.УстановитьПривязку(ГраницаЭлементаУправления.Верх, ЭлементыФормы.ПанельТовары, ГраницаЭлементаУправления.Верх);
		ПолеВводаКонтрагент.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ЭлементыФормы.ПанельТовары, ГраницаЭлементаУправления.Верх);
		ПолеВводаКонтрагент.Лево = 101;
		ПолеВводаКонтрагент.Верх = 6;
		ПолеВводаКонтрагент.Ширина = 220;
		ПолеВводаКонтрагент.Высота = 19;
		///
		ЭлементыФормы.Контрагент.Доступность = ?(ЧекПробитНаККМ ИЛИ Архивный, Ложь, ВидОперации=Перечисления.ВидыОперацийЧекККМ.Продажа);
	КонецЕсли;
Показать
3. KonecEsli 1 07.11.21 22:10 Сейчас в теме
ЭлементыФормы.КакойЭлемент.Видимость=Ложь
4. user824140 07.11.21 22:13 Сейчас в теме
(3) Так место остается (см. вложения). Нужно оставшиеся (не скрытые элементы), как-то красиво подтянуть...
5. Dr.HiHi 2 07.11.21 23:10 Сейчас в теме
добавляешь панель
на добавленную панель элементы, которые нужно скрыть
сворачиваешь / разворачиваешь панель ;))
1cmailru; Good_Smile; Fatenm; Torin; +4 Ответить
6. user824140 08.11.21 00:11 Сейчас в теме
Забыл написать, что эти две таблицы - связанные. Т.е. одна подчинена другой. Строке в первой таблице сопоставляется несколько строк во второй (той которую нужно скрыть для некоторых групп пользователей)
7. Dr.HiHi 2 08.11.21 01:26 Сейчас в теме
(6) не имеет значение
делай по (5) и будет тебе счастье ;))
10. provadyuga 99 08.11.21 06:03 Сейчас в теме
Можно попробовать расположить эти ТЧ на разных страницах панели закладок. И убирать программно одну из закладок по необходимости.
11. JohnGalt 58 08.11.21 15:21 Сейчас в теме
Получается, нужно перепривязать связанные реквизиты, чтобы они не зависели от расположения реквизитов, которые предполагается скрывать. Для этого можно также добавлять пустые надписи или наложить сверху на скрываемые реквизиты.
12. VZyryanov 08.11.21 16:00 Сейчас в теме
В неуправляемой конфигурации можно свои доработки делать с использованием управляемых форм. И забыть про привязки, учитывая, что последние работаю некорректно на современных платформах 1С.
13. BlackDvarf 12.11.21 10:54 Сейчас в теме
Высоту у скрываемой ТЧ обнули
15. GetNight 48 26.11.21 09:24 Сейчас в теме
(5) (9) (13) - варианты рабочих решений

но имхо лучше всего - программно менять привязку элемента, который после скрытия другого выглядит "не так, как нужно"
16. wau8824ru 23 27.11.21 03:40 Сейчас в теме
(15) согласен, но вот этот код
ЭтаФорма.ИмяСохраненияПоложенияОкна = Новый УникальныйИдентификатор();

Скидывает положение на дефолтные (востановить положение окна) что тоже рабочий вариант, если добавить его перед открытием, а новые элементы добавить при открытии.
Оставьте свое сообщение

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