|
Группировка в запросе по строке без последних 4 символов | ☑ | ||
---|---|---|---|---|
0
Буковка
13.06.23
✎
11:32
|
Добрый день!
Нужно получить дубли документов (дублями считаются документы, у которых совпадает шифр(строка, 35) без последних 4 символов). Вот так не работает, ошибка - Недопустимое поле для группировки: ВЫБРАТЬ КОЛИЧЕСТВО(РеестрЗаданийОтделаПроектирования.Ссылка) КАК КоличествоДублей, Лев(РеестрЗаданийОтделаПроектирования.ШифрДокумента,длинастроки(РеестрЗаданийОтделаПроектирования.ШифрДокумента)-4) как ШифрДокументаБезВерсии ИЗ Документ.РеестрЗаданийОтделаПроектирования КАК РеестрЗаданийОтделаПроектирования ГДЕ РеестрЗаданийОтделаПроектирования.Актуальность <> 1 И НЕ РеестрЗаданийОтделаПроектирования.ПометкаУдаления СГРУППИРОВАТЬ ПО Лев(РеестрЗаданийОтделаПроектирования.ШифрДокумента,длинастроки(РеестрЗаданийОтделаПроектирования.ШифрДокумента)-4) ИМЕЮЩИЕ КОЛИЧЕСТВО(РеестрЗаданийОтделаПроектирования.Ссылка) > 1 |
|||
1
ViSo76
13.06.23
✎
11:37
|
Лев нет в запросе. Если шифр документа всегда имеет одну длину, тогда делай сокращение длины через выразить(... Как строка(10) ) - 10 замени на нужную длину строки. Построить запрос с разными длинами строк не получится.
|
|||
2
DJ Anthon
13.06.23
✎
11:38
|
а разве подстрока не работает?
|
|||
3
РусКомп
13.06.23
✎
11:39
|
(1) есть подстрока - тот же самый лев если с первого символа.
|
|||
4
Буковка
13.06.23
✎
11:42
|
(1) спасибо! Сделала через выразить, всё заработало
(2), (3) так тоже работает, спасибо!!! |
|||
5
ViSo76
13.06.23
✎
11:42
|
(3) Есть, но я про строку с переменной длиной в конце строки имею ввиду и тут явно у него берется вся строка от начала. По этому подстрока не нужна, так как приведение работает сильно быстрее
|
|||
6
Гипервизор
13.06.23
✎
11:57
|
(1) В 8.3.20 уже есть и Лев() и многое другое.
|
|||
7
ViSo76
13.06.23
✎
12:05
|
(6) Лучше бы что бы 1с вместо лев, которое нафиг не нужна в запросе сделали бы функцию АБС, а то приходится через Макс выкручиваться...
|
|||
8
Гипервизор
13.06.23
✎
12:45
|
(7) В СКД есть КлассификацияABC().
|
|||
9
ViSo76
13.06.23
✎
12:52
|
(8) Зачем скд, в коде иногда нужно. Приходится делать пОтброситьЗнак = Макс( пЧисло, -пЧисло );
|
|||
10
ViSo76
13.06.23
✎
12:52
|
(9) Вместо того что бы бит знака погасить средствами 1С.
|
|||
11
Гипервизор
13.06.23
✎
13:04
|
(10) А, вы про модуль числа, я неправильно понял. Неужели так часто используете? Тогда имеет смысл шаблон сделать. Или вы про эстетическую сторону и экономию символов?
Напишите пожелание в 1С, вон в Телеграме регулярно собирают всякие хотелки. |
|||
12
ViSo76
13.06.23
✎
13:08
|
(11) Да не часто, но если передирать BASIC, то уж полностью, чего стесняться.
|
|||
13
ViSo76
13.06.23
✎
13:16
|
(11) Да и вообще пора делать 1С v9 с ООП как у BASIC с наследованием и переопределением, а то сама концепция расширений это такое извращение...
Я считаю что сложность конфигураций уже превысила плюсы линейного кода. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |