Имя: Пароль:
1C
1С v8
как скрыть/отобразить элементы формы в зависимости от значения булево
0 steeshiy
 
09.03.19
20:57
Добрый день! Помогите, пожалуйста, с простым решением:
Справочник контрагенты. На форме элемента справочника реквизиты относящиеся к юр. лицам и к физ лицам объединены в группы: ГруппаЮрЛица, ГруппаФизЛица. Есть реквизит ЮрЛицо тип булево.
Подскажите пример кода, при котором: если значение реквизита ЮрЛицо = ИСТИНА, ГруппаФизЛица Скрыта, ГруппаЮрЛица - видима;  если ЛОЖЬ - то скрыта ГруппаЮрЛица, а ГруппаФизЛица Видима.
Заранее спасибо!

P. S. 1С 8.3 управляемые формы.
1 Mort
 
09.03.19
21:05
Сделай группу типа страницы без закладок с двумя страницами для Юл и Фл и меняй их.

Устанавливать видимость надо в:

- В процедуре ПриЧтенииСозданииНаСервере - это такой паттерн-костыль платформы.
- При изменении реквизитов, в данном случае флажка.
2 steeshiy
 
10.03.19
20:54
А разве обычные группы на форме нельзя так же скрыть?

Я сделал:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
      
       Элементы.ГруппаЮрЛица.Видимость = Ложь;
           
КонецПроцедуры
Естественно при открытии формы элемента ГруппаЮрЛица скрыта, реквизит ЮрЛицо по умолчанию Ложь. Далее сделал:

&НаКлиенте
Процедура ЮрЛицоПриИзменении(Элемент)
    ЮрЛицо = Объект.ЮрЛицо;
    Выполнить   НоваяВидимость(ЮрЛицо);
    
КонецПроцедуры

&НаСервере
Функция НоваяВидимость (ЮрЛицо)

    Если Объект.ЮрЛицо = Истина
        Тогда Элементы.ГруппаЮрЛица.Видимость = Истина
        И Элементы.ГруппаФизЛица.Видимость = Ложь;
        
    КонецЕсли;

КонецФункции

Не работает ))) все остается так же как и при открытии формы...
3 GROOVY
 
10.03.19
21:01
Есть такая штука "Функциональные опции" - рекомендую.
4 hhhh
 
10.03.19
21:05
(2) вот жто что?

        Тогда Элементы.ГруппаЮрЛица.Видимость = Истина
        И Элементы.ГруппаФизЛица.Видимость = Ложь;

это не 1с, какой то другой язык. Чудесите?
5 mikecool
 
10.03.19
21:20
(3) а как же рекомендации от 1с не использовать ФО для организации видимости элементов??
6 RomanYS
 
10.03.19
21:41
(4) формально синтаксис правильный))
7 los_hooliganos
 
10.03.19
22:11
где функция опрашивания объекта при открытии?
если его нет, остальное будет бредом
8 steeshiy
 
11.03.19
13:25
(7) Спасибо большое! Именно процедуры При Открытии и не хватало. Как ее прописал - все заработало!
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.