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

Новая тема
Показывать по 10 20 40 сообщений
Задаю условие где Улицы, ПоискДом, Корпус, ПоискКв реквизиты диалога,а Файл.ULI2, Файл.DOM2, Файл.KORP, Файл.KWA данные из dbf файла.
Проблема в том что если не указываешь в диалоге корпус он не находит адрес без корпуса, можно ли сделать так что если корпус не задан он его пропускал в одном условии?

Если (СокрЛП(Улицы)+СокрЛП(ПоискДом)+СокрЛП(Корпус)+СокрЛП(ПоискКв))=(СокрЛП(Файл.ULI2)+СокрЛП(Файл.DOM2)+СокрЛП(Файл.KORP)+СокрЛП(Файл.KWA)) тогда
В форме диалога "Корпус" - какого типа?
В dbf файле поле "KORP" - какого типа?
Всё СТРОКА, так как Корпус может быть  цифрой или буквой
Тогда все должно находиться, ладно, пойдем от первого вопроса:
> можно ли сделать так что если корпус не задан он его пропускал в одном условии
сделаем топорно и некрасиво, но все таки, я бы поразбирался через отладчик, работать должно при вашем варианте. Вот то, что вы ходите:
Если ((ПустаяСтрока(Корпус)=0) И (СокрЛП(Улицы)+СокрЛП(ПоискДом)+СокрЛП(Корпус)+СокрЛП(ПоискКв))=(СокрЛП(Файл.ULI2)+СокрЛП(Файл.DOM2)+СокрЛП(Файл.KORP)+СокрЛП(Файл.KWA))) ИЛИ
((ПустаяСтрока(Корпус)=1) И (СокрЛП(Улицы)+СокрЛП(ПоискДом)+СокрЛП(ПоискКв))=(СокрЛП(Файл.ULI2)+СокрЛП(Файл.DOM2)+СокрЛПСокрЛП(Файл.KWA))) Тогда

Как то все выглядит, мягко говоря, "не очень"...
Большое спасибо
Если (СокрЛП(Улицы)+СокрЛП(ПоискДом)+?((ПустаяСтрока(Корпус)=1,",СокрЛП(Корпус))+СокрЛП(ПоискКв))=(СокрЛП(Файл.ULI2)+СокрЛП(Файл.DOM2)+?((ПустаяСтрока(Корпус)=1,",СокрЛП(Файл.KORP))+СокрЛП(Файл.KWA)) Тогда
Вот странно все таки это, я не зря спросил про типы данных.
По идее, это излишество, так как если тип данных - строка и нет никакого неявного преобразования типов, то
?((ПустаяСтрока(Корпус)=1,",СокрЛП(Корпус))
это тоже самое что и
СокрЛП(Корпус)
и в изначальном варианте тоже все должно было работать
Да, но в правой части должно быть ?((ПустаяСтрока(Корпус)=1,",СокрЛП(Файл.KORP))
"Вот и я не понял почему изначально не работало, у меня  есть ещё одна фигня которая работать не хочет, конфуз в том что по умолчанию путь к файлам dbf C:\BaseDBF\ всё работает , как только начинаешь выбирать каталог в диалоге ничего не находит вот:

Процедура ОткрКаталог()
Обзор = "C:\BaseDBF\";
Если ФС.ВыбратьКаталог(Обзор,,)=1 тогда
КонецЕсли;
КонецПроцедуры

в другой процедуре есть такое:

Если ПустаяСтрока(Обзор) = 1 тогда
ПутьКПапкеСdbfФайлами="C:\BaseDBF\";
иначе
ПутьКПапкеСdbfФайлами =Обзор;
КонецЕсли;

где Обзор строка в диалоге. "
"ФС.ВыбратьКаталог() возвращается каталог без "\", поэтому
Обзор = "C:\BaseDBF";
а после Иначе
ПутьКПапкеСdbfФайлами =Обзор+"\";
"
Читают тему
(гостей: 1)

Быстрый переход