Имя: Пароль:
1C
1С v8
Функция Когда с Или Ожидается Тогда
0 Dimakgb
 
19.08.22
16:10
Добрый день! Помогите новичку, в универсальном отчете добавил пользовательское поле, пишу функцию
Выбор
    Когда [Счет Кт.Код счета] = "90.01.1"
    ИЛИ [Счет Кт.Код счета] = "91.01"
    Тогда "Доходы"
Конец

Выходит сообщение - ожидается ТОГДА, если убрать ИЛИ со вторым условием, то все ок. Как объединить 2 условия?
1 МКК
 
19.08.22
16:15
Выбор
    Когда [Счет Кт.Код счета] = "90.01.1" Тогда "Доходы"
    Когда [Счет Кт.Код счета] = "91.01"  Тогда "Доходы"

Конец
2 МКК
 
19.08.22
16:16
Я не пробовал, но 50 на 50
3 СеменовСемен
 
19.08.22
16:21
Может в скобочках нужно условие
4 СеменовСемен
 
19.08.22
16:22
Еще можно
Код в ("90", "91")
5 Dimakgb
 
19.08.22
16:30
Выбор
    Когда [Счет Дт.Код счета] = ("90.02.1","91.02")
        Тогда "Расходы"
Конец
выходит ощибка - ожидается )")"
Выбор
    Когда [Счет Дт.Код счета] = ИЛИ("90.02.1","91.02")
        Тогда "Расходы"
Конец
синтаксическая ошибка "ИЛИ_"
6 AlvlSpb
 
19.08.22
16:37
(5) подсказанные  в ("90", "91") явно отличаются от примененного = ("90.02.1","91.02")
7 СеменовСемен
 
19.08.22
16:41
(5) В
8 Kassern
 
19.08.22
16:42
а что за квадратные скобки в полях запроса?
9 Timon1405
 
19.08.22
16:45
(8) это не поля запроса, а вычисляемые поля
10 Dimakgb
 
19.08.22
16:48
подсказанные  в ("90", "91") явно отличаются от примененного = ("90.02.1","91.02")
Здесь вопрос к тому, что в подсказанном нет равно? или что цифры внутри "" отличаются?, без равно тоже не работает
11 Dimakgb
 
19.08.22
16:53
Попробовал оператор И - аналогичная ошибка, ожидается ТОГДА, по отдельности все работает
Выбор
    Когда [Счет Кт.Код счета] = "91.1"
    И [Вид субконто1 Кт.Наименование] = "Прочие доходы и расходы"    
        Тогда "Доходы"
Конец
12 AlvlSpb
 
19.08.22
17:34
Выбор
    Когда ([Счет Кт.Код счета] = "90.01.1")
    ИЛИ ([Счет Кт.Код счета] = "91.01")
    Тогда "Доходы"
Конец

ИЛИ

Выбор
    Когда [Счет Дт.Код счета] В ("90.01.1","91.01")
        Тогда "Доходы"
Конец
13 Dimakgb
 
19.08.22
18:29
AlvlSpb - Большое спасибо, все работает.
14 AlvlSpb
 
19.08.22
18:45
(13) На самом деле еще в (3) и (4) дали ответ
15 Dimakgb
 
22.08.22
10:33
Вариант с выборкой условия из группы в (1;2) работает прекрасно, а вариант
Выбор
    Когда ([Счет Кт.Код счета] = "90.01.1")
    И ([Счет Кт.Код счета] = "91.01")
    Тогда "Доходы"
Конец
не работает, опять спотыкается на ожидается оператор Тогда, нужно сделать проверку условия из двух разных полей, здесь в группу не обернешь.
Сколько не гуглю синтакис вычисляемого поля, все пишут, что вычисляемые поля никогда с первого раза не работают, справки никакой нет, подбирается методом тыка...
Подскажите, как написать синтаксис проверки 2-х полей
16 СеменовСемен
 
22.08.22
10:35
вот так попробуй
Выбор
    Когда (([Счет Кт.Код счета] = "90.01.1")
    И ([Счет Кт.Код счета] = "91.01"))
    Тогда "Доходы"
Конец
17 Dimakgb
 
22.08.22
10:41
уже пробовал заворачивать в скобки всю конструкцию после Когда, в данном случае ожидается )")"
18 Dimakgb
 
22.08.22
10:46
Если отойти от универсального отчета и редактировать через схему СКД, то по факту от вычисляемого поля никуда не денешься? и синтакис тот же?
19 butterbean
 
22.08.22
10:49
(17) может об перевод строки спотыкается?
20 Dimakgb
 
22.08.22
11:06
с переводом или нет, ошибки одинаковые
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.