Имя: Пароль:
1C
1С v8
Как в форму выбора передать параметр? Кто помнит помогите!
0 12345Kostya
 
17.08.12
11:38
При открытии формы справочника как передать наверное несколько параметров нужно будет, пока в голову приходит только два, само поле ввода и признак открытия из данного документа. Рань делал но ЗАБЫЛ. Кто помнит? Помогите!
1 Godofsin
 
17.08.12
11:39
Структура
2 Stim
 
17.08.12
11:39
уф?
3 alkorolev
 
17.08.12
11:39
форма управляемая?
4 Kashemir
 
17.08.12
11:40
НачальноеЗначениеВыбора
5 12345Kostya
 
17.08.12
11:40
Слово такое и что оно значит знаю, но как использовать?
6 12345Kostya
 
17.08.12
11:40
нет не управляемая
7 Stim
 
17.08.12
11:41
форма.список.Отбор.Номенклатура.Установить()
8 Лоботряс
 
17.08.12
11:42
читай СП ОткрытьФорму()
9 12345Kostya
 
17.08.12
11:43
читаю
10 12345Kostya
 
17.08.12
11:44
спасибо!! Лоботряс вроде нашел то что нужно
11 Лоботряс
 
17.08.12
11:45
"само поле ввода и признак открытия из данного документа" - так это ж из владельца можно взять
12 12345Kostya
 
17.08.12
11:50
ну возможно, а как? Синтаксис если не сложно или подсказку какую нить.
13 12345Kostya
 
17.08.12
12:51
В открытой форме выбора в которую я передал параметр, как этот самый параметр получить7 Где он лежит?
14 Лоботряс
 
17.08.12
13:04
в открытьформу() третий параметр - это ЭлементУправления из которого открыли данную форму, в твоем случае - поле ввода
15 12345Kostya
 
17.08.12
13:06
Еще раз спасибо!
16 12345Kostya
 
17.08.12
13:57
Все равно не понял как ловить параметры в модуле открываемой формы!
Тут я передай туда параметры, а ловить там их как?

П = Новый Структура;
П.Вставить("Владелец", Элемент.Значение);
П.Вставить("Документ",   ЭтотОбъект);
Форма = ПолучитьФорму("Справочник.Ц_ТипФактора.ФормаВыбора", П);
Форма.Открыть();
17 12345Kostya
 
17.08.12
14:30
ап
18 takefive
 
17.08.12
14:38
ВладелецФормы
19 KindLion
 
17.08.12
14:39
Эх...
Думаю, надо делать так:

Форма = ПолучитьФорму("МойСправочник");
Форма.ЭлементыФормы.параметр1 = П1;
.....
Форма.ЭлементыФормы.параметрN = ПN;

Форма.Открыть();
20 12345Kostya
 
17.08.12
14:42
ВладелецФормы не прокатывает
21 12345Kostya
 
17.08.12
15:01
Что то я в СП совсем запутался понять не могу как такую простую вещь сделать
22 takefive
 
17.08.12
15:18
23 FIXXXL
 
17.08.12
15:46
Процедура НачалоВыбораИнформационнойКарты(ЭлементФормы, ТипКарты, СтандартнаяОбработка, КодЭлементаСправочника = Неопределено) Экспорт

   СтандартнаяОбработка = Ложь;

   ФормаВыбора = Справочники.ИнформационныеКарты.ПолучитьФормуВыбора(, ЭлементФормы);
   ФормаВыбора.ПараметрВыборГруппИЭлементов = ЭлементФормы.ВыборГруппИЭлементов;
   ФормаВыбора.СправочникСписок.Отбор.ТипКарты.Установить(ТипКарты);
   ФормаВыбора.ЭлементыФормы.СправочникСписок.НастройкаОтбора.ТипКарты.Доступность = Ложь;
   
   Если НЕ КодЭлементаСправочника = Неопределено Тогда
       ФормаВыбора.СправочникСписок.Отбор.Ссылка.Использование = Истина;
       ФормаВыбора.СправочникСписок.Отбор.Ссылка.ВидСравнения = ВидСравнения.ВСписке;
       ФормаВыбора.СправочникСписок.Отбор.Ссылка.Значение = КодЭлементаСправочника;
       ФормаВыбора.ЭлементыФормы.СправочникСписок.НастройкаОтбора.Ссылка.Доступность = Ложь;
   КонецЕсли;
   
   Если ТипЗнч(ЭлементФормы.Значение) = Тип("СправочникСсылка.ИнформационныеКарты") Тогда
       ФормаВыбора.ЭлементыФормы.СправочникСписок.ТекущаяСтрока = ЭлементФормы.Значение;
   КонецЕсли;

   ФормаВыбора.Открыть();

КонецПроцедуры // НачалоВыбораИнформационнойКарты()
24 12345Kostya
 
17.08.12
18:25
Да, но сейчас нужно еще что то прописать чтобы выбранное значение ставилось в поле ввода.
25 FIXXXL
 
17.08.12
19:46
(24) попробуй: ФормаВыбора.ТвойРеквизитПоляВвода1 = РеквизитИзДокумента1 и т.д.
26 FIXXXL
 
17.08.12
19:46
или поле ввода документа нужно?
27 12345Kostya
 
20.08.12
09:45
Да нужно в поле ввода документа
28 12345Kostya
 
20.08.12
09:50
Кто знает как это сделать?
29 12345Kostya
 
20.08.12
10:02
В форме документа у поля ввода делаю такое:

Процедура ТипФактора1НачалоВыбора(Элемент, СтандартнаяОбработка)
   СтандартнаяОбработка = Ложь;
   Форма = ПолучитьФорму("Справочник.Ц_ТипФактора.ФормаВыбора");
   Запрос = Новый запрос;
   Запрос.Текст = "ВЫБРАТЬ
                  |    Ц_ТипФактора.Ссылка,
                  |    Ц_ТипФактора.ВерсияДанных,
                  |    Ц_ТипФактора.ПометкаУдаления,
                  |    Ц_ТипФактора.Предопределенный,
                  |    Ц_ТипФактора.Владелец,
                  |    Ц_ТипФактора.Код,
                  |    Ц_ТипФактора.Наименование,
                  |    Ц_ТипФактора.Коэффициент,
                  |    Ц_ТипФактора.НомерПорядок,
                  |    Ц_ТипФактора.Представление
                  |ИЗ
                  |    Справочник.Ц_ТипФактора КАК Ц_ТипФактора
                  |ГДЕ
                  |    Ц_ТипФактора.Владелец = &Владелец";
   Запрос.УстановитьПараметр("Владелец", ЭлементыФормы.Ц_Факторы.ТекущиеДанные["Фактор"]);
   
   Форма.СправочникСписок.Отбор.Ссылка.ВидСравнения   = ВидСравнения.ВСписке;
   Форма.СправочникСписок.Отбор.Ссылка.Значение.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"));
   Форма.СправочникСписок.Отбор.Ссылка.Использование = Истина;

   Форма.Владелец = ЭлементыФормы.Ц_Факторы.ТекущиеДанные["Фактор"];
   Форма.Открыть();
КонецПроцедуры


Но при выборе элемента в форме выбора просто закрывается эта форма выбора и выбранный элемент не попадает в поле ввода документа.
30 12345Kostya
 
20.08.12
11:11
Разобрался