|
Преобразование строки "110" в число "110" | ☑ | ||
---|---|---|---|---|
0
oqjawa
26.11.18
✎
10:30
|
Здравствуйте,
есть запрос ВЫБРАТЬ Сотрудники.Наименование КАК Наименование, Сотрудники.Реквизит1 КАК Реквизит1 ИЗ Справочник.Сотрудники КАК Сотрудники ///////////////////////// Сотрудники.Реквизит1 = Строка, но в этот реквизит заносят только цифры, мне необходимо сделать сортировку по полю Реквизит1 но чтобы сортировка была как у числа а не как у строки.. Каким образом возможно это реализовать? |
|||
1
Вафель
26.11.18
✎
10:33
|
изменить у реквизита
|
|||
2
Волшебник
26.11.18
✎
10:33
|
заведи числовой Реквизит2
|
|||
3
Волшебник
26.11.18
✎
10:34
|
Все числа приведи к одной длине, например, "1" к "000001"
|
|||
4
oqjawa
26.11.18
✎
10:35
|
Немогу, конфигурация типовая, добавить доп реквизит можно не внося изменения но придется данные перекидывать с одного реквизита на другой, а это тоже работа
|
|||
5
oqjawa
26.11.18
✎
10:36
|
про числа интересно, а возможно это сделать прям в запросе?
|
|||
6
Вафель
26.11.18
✎
10:36
|
если это доп реквизит, то новый можно не заводить, а просто сменить тип и перезаписать данные
|
|||
7
oqjawa
26.11.18
✎
10:37
|
это не доп реквизит
|
|||
8
Вафель
26.11.18
✎
10:38
|
тогда нули дописывай
|
|||
9
catena
26.11.18
✎
10:38
|
(5)Можно. Но тебе не понравится.
|
|||
10
oqjawa
26.11.18
✎
10:39
|
(9) и почему же мне не понравится?
|
|||
11
oqjawa
26.11.18
✎
10:40
|
(8) вот это как раз мне и не понравится))
|
|||
12
impulse9
26.11.18
✎
10:41
|
(10) http://catalog.mista.ru/public/170336/
кушай |
|||
13
lodger
26.11.18
✎
10:42
|
согласно СП в запросе нет преобразования типов. есть только приведение, но это не ваш случай.
|
|||
14
catena
26.11.18
✎
10:43
|
(10)Расскажи потом свои впечатления от (12)
|
|||
15
oqjawa
26.11.18
✎
10:43
|
(12) спасибо, что-то аппетит пропал, я видел этот пост, и к моему сожалению мало что переживал там
|
|||
16
oqjawa
26.11.18
✎
10:43
|
а вам как?
|
|||
17
Aleksey
26.11.18
✎
10:44
|
(13) т.е. выразить как число не поможет?
|
|||
18
catena
26.11.18
✎
10:44
|
(16)А мы не сортируем строки как числа))
|
|||
19
oqjawa
26.11.18
✎
10:46
|
(10) и это преобразование строк в таблицу, но хороший вариант (3) может кто знает куда идти))
|
|||
20
oqjawa
26.11.18
✎
10:48
|
(16), хорошо я тоже не хочу сортировать строки как числа,
но что мне делать если разработчики используют строковый тип данных, как мне на печать вывести данные по порядку, чтобы было 1 5 10 11 110 120 а не 1 5 10 110 11 120 |
|||
21
oqjawa
26.11.18
✎
10:49
|
как это называется, вроде "Лидирующие нули"?
|
|||
22
catena
26.11.18
✎
10:49
|
(20)Дописать лидирующие нули
|
|||
23
иубиповец
26.11.18
✎
10:49
|
Или 3, или выгрузить в тз, создать колонку типа число, пройтись по всем элементам в новую колонку внести число, тз как параметр передать в запрос обратно и с ней дальше работать.
|
|||
24
catena
26.11.18
✎
10:49
|
(19)В смысле, код дать? Еще и пальцы за тебя загнуть?
к = Прав("00000000000000"+к,ДлинаРеквизита) |
|||
25
lodger
26.11.18
✎
10:49
|
(20) сортировать постобработкой. после запроса.
|
|||
26
lodger
26.11.18
✎
10:52
|
или как в (23), делать многоэтапный запрос.
1) сформировать запрос, дополнить полем с 0, выполнить запрос. 2) выгрузить в ТЗ, заполнить нолики числами, сортировать ТЗ 3) сформировать запрос с использованием ТЗ. работать дальше. |
|||
27
Конструктор1С
26.11.18
✎
11:02
|
ВЫРАЗИТЬ(Сотрудники.Реквизит1 КАК ЧИСЛО(10,0))
не? |
|||
28
oqjawa
26.11.18
✎
11:06
|
(27) Ошибка - не совместимые типы "ВЫРАЗИТЬ", нельзя выражать строку числом, типы должны быть одинаковые как я понял
|
|||
29
catena
26.11.18
✎
11:11
|
(27)У нас тут, конечно, сплошные тролли, но не на столько же))
|
|||
30
Мандалай
26.11.18
✎
11:22
|
Подстрока может помочь, но только если ты знаешь итоговую длину строки заранее.
|
|||
31
МихаилМ
26.11.18
✎
12:31
|
(0)
разбейте Вашу задачу на подзадачи 1) "узнать длину строки в запросе" - поиском по форуму + "убрать лидирующие нули в запросе" 2) Подстрока("000000000000000000000000"+Реквизит1,24+ДлинаСтрокиБезЛидирующихНулей-ДлинаРеквизита ) естественно "000000000000000000000000" и 24 и ДлинаРеквизита нужно заменить в тексте запроса на ресчетные |
|||
32
Fragster
гуру
26.11.18
✎
12:37
|
уже (4) бы сделал
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |