Имя: Пароль:
1C
1С v8
Неверные параметры "+"
,
0 Эльчин
 
05.11.13
11:28
текст в запросе на окне "произволное выражение":
ВЫБОР
    КОГДА ЦеныНоменклатурыСрезПоследних.Номенклатура.БазоваяЕдиница = ЦеныНоменклатурыСрезПоследних.ЕдиницаИзмерения
        ТОГДА 1
    КОГДА ЦеныНоменклатурыСрезПоследних.Номенклатура.ОсновнаяЕдиница = ЦеныНоменклатурыСрезПоследних.ЕдиницаИзмерения
        ТОГДА 2
    ИНАЧЕ ЦеныНоменклатурыСрезПоследних.ЕдиницаИзмерения.Код + 2
КОНЕЦ

при ОК выдает ошибку "Неверные параметры "+"". как написать?
буду очен благодарен если поможете(извините из за ошибок в тексте)
1 Ненавижу 1С
 
гуру
05.11.13
11:30
код же строковый?
2 Эльчин
 
05.11.13
11:53
(1) да. И по этому спрашиваю как написать
3 Ненавижу 1С
 
гуру
05.11.13
11:54
(2) зачем?
4 бомболюк
 
05.11.13
11:54
может + "2" сойдет?
5 Wobland
 
05.11.13
11:55
(4) да сойдёт. но остаётся (3)
6 mikecool
 
05.11.13
11:55
"извините из за ошибок в тексте" - вот так и запросы пишешь ...
7 бомболюк
 
05.11.13
11:56
(5) чувак хочет дописать двойку в конце кода, да
8 Jonny_Khomich
 
05.11.13
11:56
(6) да он не русский, поэтому ошибки допускает
9 Wobland
 
05.11.13
11:57
(7) вопрос (3) всё ещё никуда не делся ;)
10 бомболюк
 
05.11.13
11:58
(9) ответ "так надо" устроит? ;-)
11 1dvd
 
05.11.13
11:58
(10) вы с ТС родственники?
12 Wobland
 
05.11.13
11:59
(10) впрочем, пофих. устроит
13 бомболюк
 
05.11.13
11:59
(11) ну, у меня кроме русских только хохлы в родне
14 Эльчин
 
05.11.13
12:06
(7) нет
15 mikecool
 
05.11.13
12:10
(14) а чего тогда ты хочешь?
16 Холодильник
 
05.11.13
12:12
Запрос - он возвращает данные из таблиц. обработка таблицы должна быть после выборки. Это по логике
17 Эльчин
 
05.11.13
12:12
(15) просто число(Код)+2
18 PR
 
05.11.13
12:13
(17) 1. Постобработка запроса
2. Реквизит КодЧислом в справочнике
19 mikecool
 
05.11.13
12:13
(17) тогда уже делай это в обходе выборки, в запросе низя
20 Wobland
 
05.11.13
12:13
(17) уверен, что "00001" - это число?
21 mikecool
 
05.11.13
12:14
(18) по п.2 - и ради такой хни кранить данные в базе? а также постоянно его контролировать и перезаписывать?
22 1dvd
 
05.11.13
12:14
преобразование строки в число в запросе:


ВЫБОР    КОГДА ПОДСТРОКА(Код, 1, 3)="0" ТОГДА 0
    КОГДА ПОДСТРОКА(Код, 1, 3)="115" ТОГДА 115
    КОГДА ПОДСТРОКА(Код, 1, 3)="117" ТОГДА 117
     ИНАЧЕ 0 КОНЕЦ*100000+
     ВЫБОР    КОГДА ПОДСТРОКА(Код, 4, 1)="0" ТОГДА 0
    КОГДА ПОДСТРОКА(Код, 4, 1)="1" ТОГДА 1
    КОГДА ПОДСТРОКА(Код, 4, 1)="2" ТОГДА 2
    КОГДА ПОДСТРОКА(Код, 4, 1)="3" ТОГДА 3
    КОГДА ПОДСТРОКА(Код, 4, 1)="4" ТОГДА 4
    КОГДА ПОДСТРОКА(Код, 4, 1)="5" ТОГДА 5
    КОГДА ПОДСТРОКА(Код, 4, 1)="6" ТОГДА 6
    КОГДА ПОДСТРОКА(Код, 4, 1)="7" ТОГДА 7
    КОГДА ПОДСТРОКА(Код, 4, 1)="8" ТОГДА 8
    КОГДА ПОДСТРОКА(Код, 4, 1)="9" ТОГДА 9
     ИНАЧЕ 0 КОНЕЦ*10000+
      ВЫБОР    КОГДА ПОДСТРОКА(Код, 5, 1)="0" ТОГДА 0
    КОГДА ПОДСТРОКА(Код, 5, 1)="1" ТОГДА 1
    КОГДА ПОДСТРОКА(Код, 5, 1)="2" ТОГДА 2
    КОГДА ПОДСТРОКА(Код, 5, 1)="3" ТОГДА 3
    КОГДА ПОДСТРОКА(Код, 5, 1)="4" ТОГДА 4
    КОГДА ПОДСТРОКА(Код, 5, 1)="5" ТОГДА 5
    КОГДА ПОДСТРОКА(Код, 5, 1)="6" ТОГДА 6
    КОГДА ПОДСТРОКА(Код, 5, 1)="7" ТОГДА 7
    КОГДА ПОДСТРОКА(Код, 5, 1)="8" ТОГДА 8
    КОГДА ПОДСТРОКА(Код, 5, 1)="9" ТОГДА 9
     ИНАЧЕ 0 КОНЕЦ*1000+
      ВЫБОР    КОГДА ПОДСТРОКА(Код, 6, 1)="0" ТОГДА 0
    КОГДА ПОДСТРОКА(Код, 6, 1)="1" ТОГДА 1
    КОГДА ПОДСТРОКА(Код, 6, 1)="2" ТОГДА 2
    КОГДА ПОДСТРОКА(Код, 6, 1)="3" ТОГДА 3
    КОГДА ПОДСТРОКА(Код, 6, 1)="4" ТОГДА 4
    КОГДА ПОДСТРОКА(Код, 6, 1)="5" ТОГДА 5
    КОГДА ПОДСТРОКА(Код, 6, 1)="6" ТОГДА 6
    КОГДА ПОДСТРОКА(Код, 6, 1)="7" ТОГДА 7
    КОГДА ПОДСТРОКА(Код, 6, 1)="8" ТОГДА 8
    КОГДА ПОДСТРОКА(Код, 6, 1)="9" ТОГДА 9
     ИНАЧЕ 0 КОНЕЦ*100+
       ВЫБОР    КОГДА ПОДСТРОКА(Код, 7, 1)="0" ТОГДА 0
    КОГДА ПОДСТРОКА(Код, 7, 1)="1" ТОГДА 1
    КОГДА ПОДСТРОКА(Код, 7, 1)="2" ТОГДА 2
    КОГДА ПОДСТРОКА(Код, 7, 1)="3" ТОГДА 3
    КОГДА ПОДСТРОКА(Код, 7, 1)="4" ТОГДА 4
    КОГДА ПОДСТРОКА(Код, 7, 1)="5" ТОГДА 5
    КОГДА ПОДСТРОКА(Код, 7, 1)="6" ТОГДА 6
    КОГДА ПОДСТРОКА(Код, 7, 1)="7" ТОГДА 7
    КОГДА ПОДСТРОКА(Код, 7, 1)="8" ТОГДА 8
    КОГДА ПОДСТРОКА(Код, 7, 1)="9" ТОГДА 9
     ИНАЧЕ 0 КОНЕЦ*10+
       ВЫБОР    КОГДА ПОДСТРОКА(Код, 8, 1)="0" ТОГДА 0
    КОГДА ПОДСТРОКА(Код, 8, 1)="1" ТОГДА 1
    КОГДА ПОДСТРОКА(Код, 8, 1)="2" ТОГДА 2
    КОГДА ПОДСТРОКА(Код, 8, 1)="3" ТОГДА 3
    КОГДА ПОДСТРОКА(Код, 8, 1)="4" ТОГДА 4
    КОГДА ПОДСТРОКА(Код, 8, 1)="5" ТОГДА 5
    КОГДА ПОДСТРОКА(Код, 8, 1)="6" ТОГДА 6
    КОГДА ПОДСТРОКА(Код, 8, 1)="7" ТОГДА 7
    КОГДА ПОДСТРОКА(Код, 8, 1)="8" ТОГДА 8
    КОГДА ПОДСТРОКА(Код, 8, 1)="9" ТОГДА 9
     ИНАЧЕ 0 КОНЕЦ Как Номер1С
23 Эльчин
 
05.11.13
12:17
(22)   (y)
24 mikecool
 
05.11.13
12:18
(23) согласен, это херня )))
25 1dvd
 
05.11.13
12:19
(24) Работает, значит не херня
26 PR
 
05.11.13
12:20
(21) Может очень нужно, тогда что бы и не хранить?
А записывать принудительно перед записью.
27 PR
 
05.11.13
12:20
(25) Какашки тоже плавают, но не корабль.
28 1dvd
 
05.11.13
12:21
(27) Вот Ваши варианты - херня
29 PR
 
05.11.13
12:24
(28) То есть
...
ВЫБОР    КОГДА ПОДСТРОКА(Код, 1, 3)="0" ТОГДА 0
    КОГДА ПОДСТРОКА(Код, 1, 3)="115" ТОГДА 115

    КОГДА ПОДСТРОКА(Код, 1, 3)="117" ТОГДА 117
     ИНАЧЕ 0 КОНЕЦ*100000+
     ВЫБОР    КОГДА ПОДСТРОКА(Код, 4, 1)="0" ТОГДА 0
...
это не херня? :))
А почему не перебраны все коды от 001 до 999? :))
30 1dvd
 
05.11.13
12:26
(29) Вы думаете я это сам писал? Это я честно спи^W своровал с другого сайта. Надо же дать возможность ТС самому подумать
31 МишельЛагранж
 
05.11.13
12:42
(16) обработка таблицы должна быть после выборки.
- попробуй разок что-нить в СКД после выборки обработать....
32 mikecool
 
05.11.13
12:43
(30) бгг, посмешил )
33 МишельЛагранж
 
05.11.13
12:44
(0) никак, в запросах нет преобразования типов
34 Эльчин
 
05.11.13
13:04
На 8.1 так написано: код+2
А как это не дает ошибку
35 Wobland
 
05.11.13
13:10
(34) числа складывать в запросе можно. конкатенировать строки тоже. а преобразовать строку в число - только через назад
36 Эльчин
 
05.11.13
13:18
(35) можете ответить на (34)?
37 Wobland
 
05.11.13
13:20
(36) это не даёт ошибку, так как складываются два числа
38 Эльчин
 
05.11.13
13:22
Я тоже так написал. А у меня ошибка выдает. Смотрите (0)
39 Wobland
 
05.11.13
13:23
(38) возвращаемся в (3)
40 Бледно Золотистый
 
05.11.13
13:23
(38) Там тип кода число, а теперь строка. Так понятно?
41 Эльчин
 
05.11.13
13:24
(40) да. Спасибо
Закон Брукера: Даже маленькая практика стоит большой теории.