Проверка видимости колонки табличной части обработки, как правильно?

1. paxan 25.11.21 11:47 Сейчас в теме
Здравствуйте.
Нужно при выводе некого отчета из формы обработки проверить видимость колонок табличной части, и в зависимости от этого выполнить различные данные.
Проверяю видимость колонки на клиенте таким образом
Для Каждого Элемент Из Элементы.Основная.ПодчиненныеЭлементы Цикл 
		Если Не Элемент.Видимость Тогда
			Продолжить;			
		КонецЕсли; ....

Основная - это собственно табличная часть обработки.
Но почему-то колонки, видимость которых пользователем скрыта на форме все равно при переборе элементов имеют значение атрибута видимости как Истина.
Одна из колонок только правильно видимость показывает что скрыта - та, видимость которой программно скинута в процедуре ПриСозданииНаСервере.. А как остальные то правильно проверить на видимость?
Платформа 8.3.19.1417
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
7. Release 25.11.21 12:32 Сейчас в теме
(1) Насколько мне известно, программного доступа к значениям пользовательской видимости элементов формы платформа не предоставляет.
Если ничего не изменилось за последнее время, это древняя "проблема". Вот например тема с мисты - https://forum.mista.ru/topic.php?id=664216.
Конкретно пост от Kookish:
В результате гугления, экспериментов и размышления вяснилось следующее:
Видимость и пользовательская видимость - различные вещи. Если изменить значение видимости на "Ложь" программно, элемент не будет виден и нельзя будет управлять его видимостью через "Все действия". Через "Все действия" пользователь управляет пользовательской видимостью элемента, программного доступа к которой попросту нет. Ибо нефиг. Типа, менять поведение формы в зависимости от пользовательской видимости элементов методически неправильно.
Кроме того, в паре мест встретил высказывания типа "Не трогайте программно видимость элементов, это приводит к полной перерисовке формы на сервере и росту трафика".
Без комментариев.
8. paxan 25.11.21 12:38 Сейчас в теме
(7)Спасибо из информацию. Очень интересно получается если это так.. Может в этом и есть конечно какой-то смысл, но довольно спорное поведение, больше на глюк похожее.
9. Release 25.11.21 12:43 Сейчас в теме
(8) Нет не глюк. Вот другая цитата:
... по данному разработчики 1С отвечают, что пользовательская видимость может быть изменена только пользователем. Программного изменения быть не может.
10. paxan 25.11.21 12:51 Сейчас в теме
(9)Что изменить пользовательскую видимость (раз разделены понятия видимости и пользовательской видимости) может только пользователь это хорошо, но тогда-бы сделали отдельный реквизит (пусть с доступом только на чтение), чтобы можно было прочитать его состояние, а его нет и это проблема.
2. user1461477 25.11.21 11:53 Сейчас в теме
ЭтаФорма.Элементы.Основная.ПодчиненныеЭлементы не?
3. paxan 25.11.21 12:22 Сейчас в теме
(2)То же самое. Да и не должно это влиять по идее.
4. user1461477 25.11.21 12:25 Сейчас в теме
(3) Основная - у вас это реквизит формы или обработки?
sorry, увидел: "табличная часть обработки"
5. paxan 25.11.21 12:27 Сейчас в теме
основная - это табличная часть обработки
6. paxan 25.11.21 12:29 Сейчас в теме
я уже думал может что связано с передачей между контекстами сервера и клиента может, но при получении видимости на клиенте и сервера одинаково отрабатывает, т.е. не получается отловить колонки которые скрыты.
11. user1461477 25.11.21 13:25 Сейчас в теме
есть кастыль

	Элементы.ТабличнаяЧасть1.ТекущийЭлемент = Элементы.ТабличнаяЧасть1Реквизит1;
	Сообщить(Элементы.ТабличнаяЧасть1.ТекущийЭлемент);
	Элементы.ТабличнаяЧасть1.ТекущийЭлемент = Элементы.ТабличнаяЧасть1Реквизит2;
	Сообщить(Элементы.ТабличнаяЧасть1.ТекущийЭлемент);


здесь юзер снял галку первого реквизита
Прикрепленные файлы:
smilemanrus; +1 Ответить
Оставьте свое сообщение

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