Имя: Пароль:
1C
 
После выбора из формы выбора данные не попадают в строку
0 Vigor06
 
05.08.15
18:27
Доброго дня!
Для отбора выбора данных в форму "Редактирования списка значений" создал свою форму, с ней работаю.
Открываю ее след.образом:
форма = Справочники.ДоговорыКонтрагентов.ПолучитьФорму("ФормаВыбораДоговораИзСписка");
        форма.Контрагент = Контрагент;
        Форма.Открыть();

в самой форме ТЧ со всего одной колонкой с типом данных "СправоникСсылка.ДанныеКонтрагентов"
При начале выбора в строке этой ТЧ код такой:

СтандартнаяОбработка = Ложь;
    ФормаВыбора = Справочники.ДоговорыКонтрагентов.ПолучитьФормуВыбора("ФормаВыбора");
    ФормаВыбора.РежимВыбора = Истина;
    ФормаВыбора.отбор.владелец.Значение = Контрагент;
    ФормаВыбора.отбор.владелец.ВидСравнения = ВидСравнения.Равно;
    ФормаВыбора.отбор.владелец.Использование = Истина;
    ФормаВыбора.Открыть();


И все открывается правильно,с отбором. Но после того,Как какой-либо договор я выбираю - он в не появляется в строке ТЧ(

В чем может быть дело?что я пропускаю?
1 Fragster
 
гуру
05.08.15
18:33
выкинь код из (0) и заполни у реквизита "Связь параметров выбора"
2 Vigor06
 
05.08.15
18:35
(1) там сложнее.Я реализую возможность формирования акта сверки по >1, но < всех договорам
поэтому добавил поле с выбором вида сравнения (равно или "в списке") и в зависимости от его значения выполняентся такой код:

    Если Элемент.Значение = ВидСравнения.ВСписке ТОгда
    
        Значение = Неопределено;
        Если ЭлементыФормы.ДоговорКонтрагента.ТипЗначения <> Новый ОписаниеТипов("СписокЗначений")Тогда
            Значение = ЭлементыФормы.ДоговорКонтрагента.Значение;
            ЭлементыФормы.ДоговорКонтрагента.ТипЗначения = Новый ОписаниеТипов("СписокЗначений");
            ЭлементыФормы.ДоговорКонтрагента.ТипЗначенияСписка = Новый ОписаниеТипов("СправочникСсылка.ДоговорыКонтрагентов");
        КонецЕсли;

        Если ЗначениеЗаполнено(Значение) Тогда
            ЭлементыФормы.ДоговорКонтрагента.Значение.Добавить(Значение);
        КонецЕсли;

    ИначеЕсли Элемент.Значение = ВидСравнения.Равно      Тогда
        Значение = Неопределено;
        Если ЭлементыФормы.ДоговорКонтрагента.ТипЗначения = Новый ОписаниеТипов("СписокЗначений")Тогда
            Если ЭлементыФормы.ДоговорКонтрагента.Значение.Количество()>0 Тогда
                Значение = ЭлементыФормы.ДоговорКонтрагента.Значение[0].Значение;
                ЭлементыФормы.ДоговорКонтрагента.ТипЗначения = Новый ОписаниеТипов("СправочникСсылка.ДоговорыКонтрагентов");
            КонецЕсли;
        КонецЕсли;
        
        Если ЗначениеЗаполнено(Значение) Тогда
            ЭлементыФормы.ДоговорКонтрагента.Значение = Значение;
        КонецЕсли;
    
    КонецЕсли;
3 Fragster
 
гуру
05.08.15
18:42
добавь на форме реквизит со списком, заполняй его в нужный момент. установи связь параметров выбора.
4 Vigor06
 
05.08.15
18:43
(1) а как их правильно заполнить?
5 Fragster
 
гуру
05.08.15
18:43
вообще речь про обычные или управляемые формы?
6 Vigor06
 
05.08.15
18:43
(5) прошу прощения. Обычные формы)
7 Михаил Козлов
 
05.08.15
18:45
(0) Может надо владельца (куда вернется значение формы) формы выбора установить в ФормаВыбора = Справочники.ДоговорыКонтрагентов.ПолучитьФормуВыбора("ФормаВыбора");?
8 Casey1984
 
05.08.15
18:45
(0) событие ОбработкаВыбора ?
9 Vigor06
 
05.08.15
18:46
(8) в обработку выбора в ТЧ не попадает отладчик
10 Fragster
 
гуру
05.08.15
18:46
укажи у формы владельца - свой элемент управления
11 Vigor06
 
05.08.15
18:48
(10) точно!)Блин,вот я лох))Спасибо Вам огромное)
12 Vigor06
 
05.08.15
18:50
а как тогда при закрытии формы обработать договоры,которые я выбрал в предыдущем шаге?
13 Михаил Козлов
 
05.08.15
19:10
(12) Открыть модально, по кнопке ОК вернуть то, что нужно обработать.