![]() |
|
СписокЗначений.ВыбратьЭлемент( НаКлиенте vs НаСервере Выбрать значение | ☑ | ||
---|---|---|---|---|
0
sergei123654
10.10.11
✎
11:24
|
День добрый!
ПРи создании нового документа необходимо выбрать вид этого нового документа. Виды документов это эементы перечисления ВидыОпераций. На саервере этими перечислениями заполняю СписокЗначений. на клиенте потом выбираю из этого списка нужное значение. Вроде бы все нормально но после выбора вида документа идут остальные проверки на видимость элементов формы, и приходится опять обратиться на сервер что бы узнать какой именно вид документы выбран. Делаю: &НаСервере Функция ПолучитьСписокВидовОпераций(Знач ВидОперации, Отказ) Экспорт Если НЕ ЗначениеЗаполнено(ВидОперации) Тогда СписокВидов = Новый СписокЗначений(); Для Каждого ЭлементЗаполнения из Метаданные.Перечисления.ВидыОперацийРеализацииТоваровИУслуг.ЗначенияПеречисления Цикл СписокВидов.Добавить(ЭлементЗаполнения.Имя, ЭлементЗаполнения.Синоним); КонецЦикла; Возврат СписокВидов; КонецЕсли; Возврат Неопределено; КонецФункции &НаКлиенте Процедура ПриОткрытии(Отказ) Если Объект.Ссылка.Пустая() Тогда Объект.Дата = ТекущаяДата(); СписокВидов = ПолучитьВидыОпераций(Объект.ВидОперации, Отказ); Вид = СписокВидов.ВыбратьЭлемент("Выбор вида операции документа"); Если НЕ Вид = Неопределено Тогда Объект.ВидОперации = ВернутьЗначениеПеречисления(Вид.Значение); Иначе Отказ = Истина; Возврат; КонецЕсли; КонецПроцедуры Потом идет процедура на сервере там сравнивается текущий вид документа с перечислением, оттуда иду на клиента и там оставляю элементы формы для текущего вида документа. Проблема в том что на сервере не могу выбрать элемент списка значений, для того что бы там определять к какому виду документ относится... Кто сталкивался с этим - подскажите логику создания документов с выбираемым видом документа! |
|||
1
sergei123654
10.10.11
✎
11:26
|
+(0) пробовал в таблице значений - ВыбратьСтроку( - на клиенте нихера выходит... т.е. окно выбора строки не отображается.
|
|||
2
butterbean
10.10.11
✎
11:26
|
зачем идти на сервер чтобы узнать вид?? смотри в Объект.ВидОперации
|
|||
3
sergei123654
10.10.11
✎
11:29
|
(2) в тонком клиенте нет объектов конфигурации,как я понял.
Объект.ВидОперации = Перечисления.ВидыОперацийРеализацииТоваровИУслуг.Лошадьми Выдаст ошибку. А Сравнивать СокрЛП(Объект.ВидОперации) = СокрЛП(Лошадьми) подумал что это как то неправильно. или чо? |
|||
4
butterbean
10.10.11
✎
11:30
|
(3) открой для себя ПредопредленноеЗначение()
|
|||
5
sergei123654
10.10.11
✎
11:34
|
(4) открыл, БОЛЬШОЕ СПАСИБО!!!
Работает: Объект.ВидОперации <> ПредопределенноеЗначение("Перечисление.ВидыОперацийРеализацииТоваровИУслуг.Голубями") Спасибо еще раз. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |