Имя: Пароль:
1C
1С v8
Проверка на несоответствие 2х типов
,
0 88g88
 
17.10.16
13:45
Приветствую форумчвне.
Есть код. Заполняет строку результатом запроса.
В результате интересующий параметр находится в одном поле.
кодом пытаюсь исключить ненужные параметры из перебора.

Пока Результат2.Следующий() цикл
Если не Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.Телефон или Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты тогда
Продолжить;
ИначеЕсли Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.Телефон тогда
Данные.Параметры.Телефон = Результат2.Представление;
ИначеЕсли Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты тогда    
Данные.Параметры.Почта = Результат2.Представление;
КонецЕсли;
КонецЦикла;    



Если не Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.Телефон или Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты тогда


на один параметр реагирует нормально, на два ругается. подскажите как исключить ненужные строки.
1 88g88
 
17.10.16
13:46
{Форма.ФормаОтчета.Форма(116)}: Преобразование значения к типу Булево не может быть выполнено
                Если не Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.Телефон или Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты тогда
2 Lexey_
 
17.10.16
13:55
(1) Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.Телефон
Или Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты
3 Рэйв
 
17.10.16
14:20
НЕ Результат2.ТипСвязи = (Перечисления.ТипыКонтактнойИнформации.Телефон или Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты)
4 Рэйв
 
17.10.16
14:22
хотя не..(3)-  сторно:-) Это я погоряился:-)
5 88g88
 
17.10.16
14:29
(2) Ну да, все логично.
Я понадеялся что так поймет а до этого не догадался))))
Спасибо!!!!
6 88g88
 
17.10.16
14:32
(2) Хоты этот париант второй параметр не включает в условие.
отрабатывает
на продолжить
7 88g88
 
17.10.16
14:33
то - есть не рассматривает его вообще. (6)
8 88g88
 
17.10.16
14:48
и ошибок не выдает. ни контекстных ни в обработке. (2)
9 88g88
 
17.10.16
14:48
(8) прикольно))
10 88g88
 
17.10.16
14:49
пока вопрос открыт
11 catena
 
17.10.16
14:50
(10)Наверное после НЕ надо в скобки взять выражение, а ?
12 catena
 
17.10.16
14:51
У логического НЕ самый высокий приоритет. Если скобок нет, сначала выполняются все НЕ, потом уже И, ИЛИ...
13 88g88
 
17.10.16
14:54
(12) убрать не и поставить <> вместо = ?
14 88g88
 
17.10.16
14:55
по человечески напишу)))

убрать "не" и поставить "<>" вместо "=" ?
15 catena
 
17.10.16
14:56
(14)Ну или так... Скобки платно выдают, да?
16 88g88
 
17.10.16
14:58
Так все не заполнил))) и опять ошибок не выдал. все норм но не работает))))))))))))))

Если Результат2.ТипСвязи <> Перечисления.ТипыКонтактнойИнформации.Телефон или Результат2.ТипСвязи <> Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты тогда
17 singlych
 
17.10.16
15:01
(16) И

(0)
Если Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.Телефон тогда
Данные.Параметры.Телефон = Результат2.Представление;
ИначеЕсли Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты тогда    
Данные.Параметры.Почта = Результат2.Представление;
Иначе
// тот самый случай, когда ТипСвязи ни Телефон, ни АдресЭлектронной почты
КонецЕсли;
18 88g88
 
17.10.16
15:05
(12) Читай, и придет озарение)))))))))))))

первый раз такой код использую, что это такое? )))))

Если не (Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.Телефон или Результат2.ТипСвязи = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты) тогда
19 88g88
 
17.10.16
15:06
(18) И блин работает (12) Спасибо!!!
20 88g88
 
17.10.16
15:07
(3) этот попробую сейчас
21 88g88
 
17.10.16
15:09
(20) не, тоже на булево ругается
22 singlych
 
17.10.16
15:10
23 88g88
 
17.10.16
15:14
(22) да с логикой норм вроде.
вот что скобки так использовать можно не знал)))))))))))))))
как то не доводилось до этого)))))))))))
24 88g88
 
17.10.16
15:14
(22) все смайлики ими рисую ))))))
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший