Имя: Пароль:
1C
 
как в форме установить Поле выбора на нужную позицию списка
0 misha122062
 
10.04.08
15:52
Подскажите,как в форме установить Поле выбора на нужную позицию списка значений. Я пишу в Процедуре ПриОткрытии:
ТипСортировки.Очистить();
ТипСортировки.Добавить(1, "Сортировать по документу в 1С");
ТипСортировки.Добавить(2, "Сортировать по контрагенту");
ЭлементыФормы.ТипСортировки.СписокВыбора = ТипСортировки;    
ЭлементыФормы.ТипСортировки.Значение  = ТипСортировки[1];
Никак не получается - при открытии формы это поле пустое, а мне надо, что бы, допустим стояло значение "Сортировать по контрагенту". Вроде подставляю номер Индекса.
Кстати, а как это значение считать, т.е. когда его пользователь выберет, как найти его индекс в списке значений?
1 misha122062
 
10.04.08
17:08
up
2 Mitriy
 
10.04.08
17:14
а вообще что-нибудь выбирается?
3 НЕА123
 
10.04.08
17:19
попробуй:
ЭлементыФормы.ТипСортировки.Значение  = ТипСортировки[1].Значение;
4 misha122062
 
10.04.08
17:39
(2)Выбирается, список при открытии есть. Но мне надо, что бы и при запуске было установлено значение по умолчанию. Как это сделать?
5 Mitriy
 
10.04.08
17:43
(4) ответ в (3)
6 misha122062
 
10.04.08
17:48
спасибо
7 misha122062
 
18.04.08
13:55
(3),(5) Не пошло. Пробовал и так
ЭлементыФормы.ТипСортировки.Значение  = ТипСортировки[1].Значение;
Замечу, что Поле выбора ТипСортировки связано с реквезитом ТипСортировки, имеющим тип СписокЗначений.
Кто знает, как застивить появляться по умолчанию 1 или 2 строку. Кажется просто, ан - нет.
8 НЕА123
 
18.04.08
13:59
(7) ну сделай тип строка.
9 misha122062
 
18.04.08
14:05
Во первых изменить тип значения на форме нельзя, т.к. он связан с реквизитом.
Во вторых, я не хочу изменять тип реквизита на строку. Не пойму в чем проблема, что никто не знает?
Значит в 77 все можно было сделать, а в 81 - нет
10 НЕА123
 
18.04.08
14:14
(9)
тебе чего надо - Строку? Ну и сделай реквизит ТипСортировки строкой.
11 misha122062
 
18.04.08
14:37
На форме есть ЭлементыФормы.ТипСортировки(тип ПолеВыбора), связанный с реквизитом ТипСортировки, имеющим тип список значений. При открытии, я заполняю этот список нужными значениями. Как в форме установить Поле выбора на нужную позицию списка значений. Сейчас список выбирается, но по умолчанию пусто.
Такое ощущение, что тему читают с конца, а не с начала.
12 misha122062
 
18.04.08
15:09
походу дела, тема для всех нова и никто так никогда не делал, раз никто не знает.
13 VRednaia
 
18.04.08
15:14
ЭлементыФормы.ТипСортировки.Значение  = "Сортировать по документу в 1С";
Вот так у меня нормально работает.
14 misha122062
 
18.04.08
15:20
(13) не идет!
Покажи свой рабочий кусок.
При открытии поле пустое. Если я выбираю значение, то считать я его могу. НО ПОСТАВИТЬ ПО УМОЛЧАНИЮ - НИКАК.
15 VRednaia
 
18.04.08
15:22
гг, торможу.
ЭлементыФормы.ТипСортировки.Значение  = "1";
16 VRednaia
 
18.04.08
15:25
или ЭлементыФормы.ТипСортировки.Значение  = 1;

оно же у тебя число
17 misha122062
 
18.04.08
15:26
Переделал на строку:
ТипСортировки.Очистить();
ТипСортировки.Добавить("Документу в 1С");
ТипСортировки.Добавить("Контрагенту");
ЭлементыФормы.ТипСортировки.СписокВыбора = ТипСортировки;    
ЭлементыФормы.ТипСортировки.Значение  = "Документу в 1С";
Все равно по умолчанию не ставиться
18 НЕА123
 
18.04.08
15:28
послушай, Михуил.
цитата из (10)
"тебе чего надо - Строку? Ну и сделай реквизит ТипСортировки строкой."
для этого, на форме, на закладке реквизиты измени тип реквизита ТипСортировки на строку. На куй тебе список значений то нужен? В списке выбора он уже есть.
19 misha122062
 
18.04.08
15:30
Причем, если поставить:
ЭлементыФормы.ТипСортировки.Значение  = "Документу в 1С";
К = ЭлементыФормы.ТипСортировки.Значение;
То К будет Неопределено. получается не устанавливается значение...
20 НЕА123
 
18.04.08
15:31
баля...

   СЗВыбора = Новый СписокЗначений;
   СЗВыбора.Добавить("11111","111");
   СЗВыбора.Добавить("2222","222");

   ЭлементыФормы.ТипСортировки.СписокВыбора = СЗВыбора;
   ТипСортировки  = СЗ.Получить(1).Значение;


и будет тебе "222".
21 misha122062
 
18.04.08
15:32
А что без выебона незя? А то в 77, все значит катит, а здесь через одно место - как рекомендуют апендецит вырезать.
22 НЕА123
 
18.04.08
15:33
(21).2 + 1 )))
23 misha122062
 
18.04.08
15:38
(20)Не очень понял твой кусок.
Мне что нужно создавать новый список значений(СЗВыбора)?
И строка
ТипСортировки  = СЗ.Получить(1).Значение;
Что такое СЗ, откуда и Что такое ТипСортировки - у меня это реквизит.
24 misha122062
 
18.04.08
15:50
(20)Специально изменил тип значения поля выбора на форме на произвольный. Ни с какими реквизитами связывать не стал.
Вставил твой кусок - та же песня.
Так что это ерунда
25 misha122062
 
18.04.08
16:03
так ни к чему не пришли.
26 НЕА123
 
18.04.08
16:07
Пардон. "СЗ" читать как "СЗВыбора".
Поле выбора: ТипСортировки ,данные которого - реквизит формы ТипСортировки типа Строка.

Суть в том, что у тебя есть свойство СписокВыбора у поля выбора.
А данные, то бишь Значение(вроде, его действительно нельзя присвоить напрямую, а только через данные) у поля выбора это Строка. Прямой связи между значением и списком нет, т.е. можно присвоить любую строку реквизиту ТипСортировка.
27 НЕА123
 
18.04.08
16:08
+(26) это для рассматриваемого конкретного случая.
28 misha122062
 
18.04.08
16:24
Это я уже понял, спасибо. А я думал как в 77 - связаны.
Сделал реквизит ТипСортировка типом "Строка", связал его с одноименном полем выбора на форме. Создал, как и рекомендовали, список значений и связал его со списком выбора.
СЗВыбора = Новый СписокЗначений;
СЗВыбора.Добавить("11111","111");
СЗВыбора.Добавить("2222","222");
ЭлементыФормы.ТипСортировки.СписокВыбора = СЗВыбора;
ЭлементыФормы.ТипСортировки  = СЗВыбора.Получить(1).Значение;

Теперь пишет
Поле объекта недоступно для записи "ТипСортировка".
Интересно, почему
29 НЕА123
 
18.04.08
16:26
(28)  в последней строчке убери "ЭлементыФормы.".
30 misha122062
 
18.04.08
16:28
Все пошло, спасибо, НЕА123.
ЭлементыФормы.ТипСортировки.Значение  = СЗВыбора.Получить(1).Значение;
Интересно, а можно запретить редактировать это значение, а выбирать из предложенного списка?
31 НЕА123
 
18.04.08
16:30
(30)да, есть где-то флажок.
32 misha122062
 
18.04.08
16:35
Бл... Не работает!
 СЗВыбора = Новый СписокЗначений;
//СЗВыбора.Добавить("11111","111");
//СЗВыбора.Добавить("2222","222");
 СЗВыбора.Добавить("Контрагенту");
 СЗВыбора.Добавить("Документу в 1С");
 ЭлементыФормы.ТипСортировки.СписокВыбора = СЗВыбора;
 ТипСортировки  = СЗВыбора.Получить(1).Значение;
Если делаю вместо 1111 и 2222 указанные значения - не пашет - ничего в списке нету по умолчанию.
Что за бред! Зависит от фразы?
33 misha122062
 
18.04.08
16:36
А все..черт, там длина 10 символов