Имя: Пароль:
1C
 
УНФ проверка данных на пустое значение
0 le-maitre
 
29.12.22
14:00
Здравсвуйте. Пытаюсь в форме справочника номенклатуры запретить делать подбор в корзину по картинке корзины у строчки товара. Чтобы выбор происходил только у характеристик. Вот кусок кода

Если Поле.Имя = "ДеревоОстаткиКартинкаКорзина" Тогда
    Если ТекущиеДанные.Характеристика = Неопределено Тогда
        Возврат
    КонецЕсли;
    Если ТекущиеДанные.ПартияДляИсключения Или ТекущиеДанные.Недоступен Тогда
        СтрокаСообщения = НСтр("ru = '%1%. Выберите доступную строку.'");
        Если ТекущиеДанные.ПартияДляИсключения Тогда
        СтрокаСообщения = СтрЗаменить(СтрокаСообщения, "%1%", НСтр("ru = 'Статус партии не соответствует операции объекта'"));
        ИначеЕсли ТекущиеДанные.Недоступен И ТипЗнч(ТекущиеДанные.Показатель) = Тип("СправочникСсылка.СтруктурныеЕдиницы") Тогда
        СтрокаСообщения = СтрЗаменить(СтрокаСообщения, "%1%", НСтр("ru = 'Тип склада не соответствует операции объекта'"));
        ИначеЕсли ТекущиеДанные.Недоступен Тогда
        СтрокаСообщения = СтрЗаменить(СтрокаСообщения, "%1%", НСтр("ru = 'Номенклатура поставщика не может быть выбрана'"));
        КонецЕсли;
        ОбщегоНазначенияКлиент.СообщитьПользователю(СтрокаСообщения);
        Возврат
    КонецЕсли;
    ДобавитьВКорзинуСписок(Истина);
    Возврат;  
КонецЕсли;
Поле ТекущиеДанные.Характеристика у товара точно пустое, но всё равно товар в корзину добавляется. Что я делаю не так подскажите пожалуйста.
1 Chameleon1980
 
29.12.22
14:02
в отладчике посмотрите
ну и попробовать ЗНачениеЗаполнено
2 le-maitre
 
29.12.22
14:31
Решено "Если ПустаяСтрока(ТекущиеДанные.Характеристика) = 1 Тогда    Возврат    КонецЕсли;"
3 Новый1сник2
 
29.12.22
14:34
(2) можно так "Если ПустаяСтрока(ТекущиеДанные.Характеристика) Тогда    Возврат    КонецЕсли;"
4 Chameleon1980
 
29.12.22
16:29
=1 - эхо 7.х :)
5 Kassern
 
29.12.22
16:51
(2) Вам же подсказали выше Если Не ЗначениеЗаполненно(ТекущиеДанные.Характеристика) Тогда
6 Kassern
 
29.12.22
16:52
Либо можно еще так Если ТекущиеДанные.Характеристика.Пустая() Тогда //Сработает, если объект не составного ссылочного типа
7 Новый1сник2
 
29.12.22
16:59
(5) чем ПустаяСтрока() не подходит?
8 Kassern
 
29.12.22
17:00
(7) Неявное приведение к типу. А если там составной тип, или объект с пустым наименованием?
9 Kassern
 
29.12.22
17:04
Причем дважды неявное приведение типов, еще и число к булево)
10 Новый1сник2
 
29.12.22
17:06
(8) не проверял, будет время гляну. часто юзаю проблем не было. и в типовых модулях часто встречается
2 + 2 = 3.9999999999999999999999999999999...