Имя: Пароль:
1C
 
8.2 На клиенте проверить на пустое значение
0 Aswed
 
21.06.10
12:33
Сейчас делаю так

Если ПустаяСтрока(Объект.Скидка) Тогда

А как сделать правильно?
1 almar
 
21.06.10
12:34
А объект.скидка какого типа?
2 strange2007
 
21.06.10
12:35
(0) Подобные проверки и обработки выносите на сервер. На клиенте максимально только интерфейсные работы и то не все
3 Aswed
 
21.06.10
12:36
(1) Справочник ссылка
4 strange2007
 
21.06.10
12:38
(3) не насилуйте клиента, организуйте логику как рекомендуют
5 michael
 
21.06.10
12:39
+(2) НаСервереБезКонтекста
6 Klinov
 
21.06.10
12:41
Если Не ЗначениеЗаполнено (Объект.Скидка) Тогда

так  не катит?
7 Aprobator
 
21.06.10
12:41
(0) скидка - строка?
8 strange2007
 
21.06.10
12:41
(5) Неее, многие клиентские вещи надо с контекстом делать (проверки всякие, чтение реквизитов и т.д.)
9 Aswed
 
21.06.10
12:42
(4) Уже так и начал делать)
Почему и спрашивал.
10 strange2007
 
21.06.10
12:42
(6) А попробуйте в тонком клиенте, лучше еще веб клиент
11 Aswed
 
21.06.10
12:43
А как же рекомендации свести к минимуму обращения к серверу?
12 strange2007
 
21.06.10
12:44
(11) Вот именно! один вызов сервера. Там вся логика и возврат на клиента без каких либо действий. Всё! Больше ни чего не делать!
13 michael
 
21.06.10
12:44
без фанатизма
14 almar
 
21.06.10
12:44
(11) А зачем тебе эта проверка?
15 Klinov
 
21.06.10
12:45
ЗначениеЗаполнено (ValueIsFilled)
Синтаксис:

ЗначениеЗаполнено(<Значение>)
Параметры:

<Значение> (обязательный)

Тип: Произвольный. Значение для сравнения.
Возвращаемое значение:

Тип: Булево. Для значений типа Булево всегда возвращается Истина.
Для значений типа Строка возвращается Истина, если в строке есть не пробельные символы.
Для массивов и коллекций возвращается Истина, если в них есть хотя бы 1 элемент.
Описание:

Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа.
Не работает с мутабельными значениями. При передаче мутабельного значения функция вызывает исключение.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
16 strange2007
 
21.06.10
12:46
Расскажу свою маленькую давнишнюю ошибку: выводил дерево средствами клиента, про веб клиента пришлось забыть. Тормоза несусветные. Потом переделал все на сервере - супер работа
17 strange2007
 
21.06.10
12:51
(15) уй, мляяяяя... точно :)
18 Aswed
 
21.06.10
12:54
(12) Так при выяснении условия меняется доступность элементов формы.
Как быть в таком случае?
19 strange2007
 
21.06.10
13:05
(18) Можно и там и там, только с контекстом. Например вот серверный вариант

&НаСервере
Процедура УправлениеВидимостью()
   // Отключение всех закладок по умолчанию
   Элементы.Внутреннее.Видимость = Ложь;
   Элементы.Файловое.Видимость = Ложь;
   Элементы.FTP.Видимость = Ложь;
   // Открытие только выбранной закладки по виду
   Если Объект.ВидОписания=Перечисления.ВидыОписанияХранения.Внутреннее Тогда
       Элементы.Внутреннее.Видимость = Истина;
   ИначеЕсли Объект.ВидОписания=Перечисления.ВидыОписанияХранения.Файловое Тогда
       Элементы.Файловое.Видимость = Истина;
   ИначеЕсли Объект.ВидОписания=Перечисления.ВидыОписанияХранения.FTP Тогда
       Элементы.FTP.Видимость = Истина;
   КонецЕсли;
КонецПроцедуры
20 strange2007
 
21.06.10
13:06
+(19) в этом случае не надо нырять туда-сюда (проверка на объектное значение) и в скорости есть выигрыш
21 Aswed
 
21.06.10
14:05
(19) Ага, понял. Огромное спасибо. Буду пользоваться этим способом.