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

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 человек.
Рекламное место пустует