Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: составное условие (может я что упустил)

v7: составное условие (может я что упустил)
Я
   Chameleon1980
 
17.03.18 - 15:24
привет всем
кусок условия:

(Конт.Вид()="РеализацияРозница") и (Найти(Врег(Контрагент.Наименование),"VISA")>0)

я так понял в 7.7 даже если первая часть условие ложь - вторая все-равно проверяется?

вроде видел такое обсуждение в далеких.

освежите кому не трудно.
спасибо.
 
 
   NSSerg
 
1 - 17.03.18 - 15:46
Нет, если первое ложь, второе не проверяется.
Но кто мешает написать вот так -
Если (Конт.Вид()="РеализацияРозница") Тогда
  Если (Найти(Врег(Контрагент.Наименование),"VISA")>0) Тогда
...
   NSSerg
 
2 - 17.03.18 - 15:47
Проверь элементарно
Если (1>2) и (0/0=5) Тогда
...
Выдаст ошибку деления на ноль - значит проверяется, не выдаст - значит нет.
   NSSerg
 
3 - 17.03.18 - 15:49
Выдало ошибку, то есть проверяет второе условие.
То есть пиши как в (2)
   Garykom
 
4 - 17.03.18 - 15:58
(3) Там прикол что обработка/вычисления условия лог выражения идет не последовательно а "как получится".
   Cool_Profi
 
5 - 17.03.18 - 16:04
в 77 вычисляются все выражения
в 8 - по очереди
   Chameleon1980
 
6 - 17.03.18 - 16:09
(5) вот и я про то-же
вроде как в 8 норм
   Chameleon1980
 
7 - 17.03.18 - 16:12
а вообще условие типа:

Если ((Конт.Вид()="РеализацияРозница") и (Найти(Врег(Контрагент.Наименование),"VISA")>0) и (Конт.ДокОснование.Вид()="ЗаявкаПокупателя")) или 
     (Конт.Вид()="ОтчетККМ") или 
     ((Конт.Вид()="ЧекККМ") и (Конт.ДокОснование.Вид()="ЗаявкаПокупателя")) Тогда
   Chameleon1980
 
8 - 17.03.18 - 16:13
мне не нужно было, чтобы это проверялось

(Найти(Врег(Контрагент.Наименование),"VISA")>0)
   NSSerg
 
9 - 17.03.18 - 16:52
Если Конт.Вид()="РеализацияРозница" Тогда
  Наим="Visa";
Иначе
  Наим=Врег(Контрагент.Наименование);
КонецЕсли;
Если ((Конт.Вид()="РеализацияРозница") и (Найти(Наим,"VISA")>0) и (Конт.ДокОснование.Вид()="ЗаявкаПокупателя")) или 
     (Конт.Вид()="ОтчетККМ") или 
     ((Конт.Вид()="ЧекККМ") и (Конт.ДокОснование.Вид()="ЗаявкаПокупателя")) Тогда
   Chameleon1980
 
10 - 17.03.18 - 17:01
у меня проблема просто, что иногда контра нет. немного не то, но я сделал просто перед условием:

Если глЕстьРеквизитШапки("Контрагент", Конт.Вид())=1 Тогда
    Контрагент=Конт.Контрагент;
Иначе
    Контрагент=ПолучитьПустоеЗначение("Справочник.Контрагенты");
КонецЕсли;
 
 Рекламное место пустует
   Chameleon1980
 
11 - 17.03.18 - 17:01
всем огромное спасибо

Список тем форума
Рекламное место пустует  Рекламное место пустует
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
Э. Йодан
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует