Имя: Пароль:
1C
 
почему может не работать "ПоказатьВыборИзСписка"?
0 evorle145
 
20.08.18
09:42
Обновил платформа с 8.3.10 на 8.3.13.1400 и перестала работать моя функция где я использую "ПоказатьВыборИзСписка". То есть не всплывает список для выбора. Думал глюк платформы, но код разработчика-то работает!

Вот код разработчика из справочника производственные календари, который работает:

&НаКлиенте
Процедура ИзменитьДень(Команда)
    
    ВыделенныеДаты = Элементы.Календарь.ВыделенныеДаты;
    
    Если ВыделенныеДаты.Количество() > 0 И Год(ВыделенныеДаты[0]) = НомерТекущегоГода Тогда
        Оповещение = Новый ОписаниеОповещения("ИзменитьДеньЗавершение", ЭтотОбъект, ВыделенныеДаты);
        ПоказатьВыборИзСписка(Оповещение, СписокВидовДня, , СписокВидовДня.НайтиПоЗначению(ВидыДней.Получить(ВыделенныеДаты[0])));
    КонецЕсли;
    
КонецПроцедуры


Вот мой код из документа, который вроде такой же, но не ничего не всплывает:

&НаКлиенте
Процедура СостояниеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    
    ВидыПДР = ЭтаФорма.Элементы.Состояние.СписокВыбора;
    ДопПараметры = Новый Структура;
    ОписаниеОповещения = Новый ОписаниеОповещения("ОбработкаОповещенияВыбораТипа",ЭтаФорма,ДопПараметры);
    ПоказатьВыборИзСписка(ОписаниеОповещения,ВидыПДР);
            
    СостояниеНачалоВыбораНаСервере();
КонецПроцедуры
1 evorle145
 
20.08.18
09:52
ПоказатьВыборИзСписка(ОписаниеОповещения,ВидыПДР,Элемент); - так тоже не работает...
2 Тихий омут
 
20.08.18
09:54
В обработчике НачалоВыбора нельзя использовать контекстные серверные методы. Думаю, дело в этом.
3 evorle145
 
20.08.18
09:58
(2) а где у меня тут контекстный серверный метод? и почему тогда на 8.3.10 это работало...
4 Тихий омут
 
20.08.18
10:07
(3) СостояниеНачалоВыбораНаСервере() - это внеконтекстный?
5 evorle145
 
20.08.18
10:15
(4) почти! спасибо за наводку! На новой платформе вот эта строка больше не работает
ВидыПДР = ЭтаФорма.Элементы.Состояние.СписокВыбора;

этот список надо идти получать на сервереБезКонтекста

Сделал так:

&НаСервереБезКонтекста
Функция СостояниеНачалоВыбораНаСервереБезКонтекста()
    
    СписокЗначений = Новый СписокЗначений;
    СписокЗначений.Добавить(Перечисления.асСостоянияЗаказНаряда.ВРаботе);    
    Возврат СписокЗначений;
    
КонецФункции

Заработало! Еще раз спасибо за наводку!
6 evorle145
 
20.08.18
10:29
(5) Хотя в отладчике список значений успешно получает
ВидыПДР = ЭтаФорма.Элементы.Состояние.СписокВыбора;

то есть в отладчике он виден, но ПоказатьВыборИзСписка в этом случае уже не работает.. Вот такая особенность.