Имя: Пароль:
1C
1С v8
Реквизит формы - составной тип данных
,
0 Lucky_sun
 
04.04.12
00:31
Добрый вечер!)
У меня есть реквизит на форме, тип данных - составной (несколько справочников и строка). Мне нужно, чтобы пользователь ограничился выбором типа значения в поле на форме. Нужно как-то запретить последующий выбор элемента выбранного типа.
Help...
1 DrShad
 
04.04.12
00:35
ИзменятьТип + ОграничениеТипа
а вообще без фото даже с этой подсказкой - не взлетит :)
2 DrShad
 
04.04.12
00:36
неуверен только скорее не ИзменятьТип, а ВыбиратьТип или что-то в этом духе
3 Lucky_sun
 
04.04.12
00:59
Надеюсь, теперь с фото взлетит :)
изучаю Синтакс-Помощник по этому вопросу. ВыбиратьТип... означает будет ли запрашиваться тип при нажатии на кнопку выбора. Но это немного не то. Мне нужно, чтобы пользователь выбрал тип, но на этом остановить его работу. запретить выбирать значения по выбранному типу.
4 sanja26
 
04.04.12
01:10
НачалоВыбора()
5 GROOVY
 
04.04.12
01:19
Может реквизит на форме сделать не составного типа а типа типа тип?
6 sanja26
 
04.04.12
01:20
список значений с типами)))
7 Lucky_sun
 
04.04.12
01:26
Спасибо за советы! буду пробовать все, в процессе отпишусь...
9 Lucky_sun
 
04.04.12
01:55
список значений точно не подойдет. реквизит обязательно составного типа.
НачалоВыбора() - что-то в этом есть. даже наверное то, что нужно, но я не знаю в какую часть обработки вставить.. и поэтому не работает) пока)
10 Alex375
 
04.04.12
03:53
(9) а почему не подойдет вариант из (5)? То что тебе требуется реквизит составного типа не значит, что ты не можешь использовать вариант (5). Можно ведь и еще 1 реквизит добавить на форму и в нем задавать тип. А потом, если тебе требуется что-то записать в свой реквизит уже выполнить требуемые действия при изменении нового реквизита с типом.
11 DrShad
 
04.04.12
08:23
после выбора значения запрещать дальнейший выбор типа
12 Lucky_sun
 
04.04.12
15:49
если честно, не совсем поняла (5). не знаю, что такое "реквизит типа типа тип". это Описание типов?..)
(11) каким образом это можно реализовать?...
13 БибиГон
 
04.04.12
15:53
(12) ЗначениеЗаполнено()
14 Serg_1960
 
04.04.12
15:57
(12) Все просто :) в списке выбора значения ты можешь пользователю показать "одно", а после выбора - сделать "другое" :))

Список выбора заполняется из перечня типов составного реквизита и реквизиту пустая ссылка выбранного типа.
15 Lucky_sun
 
04.04.12
16:16
в общем! все по порядку)
ПередОткрытием формы обработки:
реквизит.Добавить(Тип("СправочникСсылка.Контрагенты"),"СправочникСсылка.Контрагенты");
реквизит.Добавить(Тип("СправочникСсылка.Банки"),"СправочникСсылка.Банки");
реквизит.Добавить(Тип("СправочникСсылка.Кассы"),"СправочникСсылка.Кассы");
реквизит.Добавить(Тип("Строка"), "Строка");
КолвоЭлементов = реквизит.Количество();

потом ПриОткрытии выбираю:
Выбор = реквизит.ВыбратьЭлемент();
Если ЗначениеЗаполнено(Выбор) Тогда // ошибка: проверка мутабельных значений на заполненность не поддерживается
   Элемент = выбор;
КонецЕсли;

а хочу всего лишь выбрать значение и поместить его в реквизит на форме... что делаю не так?
16 Lucky_sun
 
04.04.12
16:18
а вообще, конечная цель - это отобраться в запросе по выбранному значению (типу)
17 Serg_1960
 
04.04.12
17:32
Мысль - правильная, исполнение - :(

ПриОткрытии формы заполняешь соответствие; в список выбора - выгружаешь ключи; в реквизит - значение соответствия по выбранному ключу... Ок?
18 Lucky_sun
 
04.04.12
17:53
(17) если я верно поняла:
заполняю соответствие - это заполняю список значений
что такое ключи... я совсем не знаю, и синтакс- помощник не сильно помог:(
дальше, значение соответствия понятно.
19 sanja26
 
05.04.12
01:20
список твое все, они (7-17) тлоько путают
20 jsmith
 
05.04.12
01:48
(3) где фото