Имя: Пароль:
1C
 
число + строка в запросе
,
0 who respawn
 
27.11.23
06:32
привет, как можно написать

число + строка если не СТРОКА(ЧисловойРеквизит) + " строка"
? чем можно заменить СТРОКА(ЧисловойРеквизит) ? т.е. как-нибудь по-другому сделать
1 who respawn
 
27.11.23
06:43
вообще не уверен что СТРОКА(ЧисловойРеквизит) это верно, просто мне досталась обработка, в которой СТРОКА(Документ.Число) + " строка" и оно не работает, как это можно сделать?
2 Donkey_hot
 
27.11.23
06:55
(0) А выбрать поля по-отдельности и провести конкатенацию уже при обработке результата не получится?
3 who respawn
 
27.11.23
06:56
или проще результат запроса обработать?
4 who respawn
 
27.11.23
06:58
(2) там одно поле числовое к которому я хочу строку прибавить
5 who respawn
 
27.11.23
07:06
(2) это имеется ввиду после запросы уже при выводе результата сделать если чёто там тогда
строка(число) + " строка" ?
6 Donkey_hot
 
27.11.23
07:09
(5) В общем, да, правда вместо Строка() предпочтительнее Формат(), чтобы на вывод не влияли настройки локализации (например, разделитель десятичной части в виде точки либо запятой)
7 who respawn
 
27.11.23
07:10
(6) ну это я понял, так и сделал, просто думал может есть какой-нибудь вариант в запросе просто к числу прибавить строку
8 mikecool
 
27.11.23
10:09
(7) нет еще в 1с такого варианта
9 Baiji
 
27.11.23
11:02
ВЫРАЗИТЬ(ЧисловойРеквизит КАК Строка)
10 Baiji
 
27.11.23
11:03
↑ На попробовать
11 Fedor-1971
 
27.11.23
16:46
(9) Ошибка будет
А к Представление(Число) ничего присоединить не получится, хотя, по результату должна быть строка
12 dmitn
 
27.11.23
16:50
нет
13 dmitn
 
27.11.23
16:53
(2) а ты знаешь что такое конкатенация ?
14 shuhard
 
27.11.23
17:31
(2) если платформа выше 20 и режим совместимости выше и запрос писать руками, использовать пару преобразований, то  числу с текстом можно сделать конкатенацию

Например в демке ERP такой запрос работает:

ВЫБРАТЬ
    ПриобретениеТоваровУслуг.Ссылка КАК Ссылка,
    ПриобретениеТоваровУслуг.СуммаДокумента КАК СуммаДокумента,
    СТРОКА(ПриобретениеТоваровУслуг.СуммаДокумента) КАК ПочтиСтрока
ПОМЕСТИТЬ ВТ_Сырец
ИЗ
    Документ.ПриобретениеТоваровУслуг КАК ПриобретениеТоваровУслуг
ГДЕ
    ПриобретениеТоваровУслуг.Ссылка = &Ссылка
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_Сырец.Ссылка КАК Ссылка,
    ВТ_Сырец.СуммаДокумента КАК СуммаДокумента,
    ВЫРАЗИТЬ(ВТ_Сырец.ПочтиСтрока КАК СТРОКА(123)) КАК СовсемСтрока
ПОМЕСТИТЬ ВТ_Сжато
ИЗ
    ВТ_Сырец КАК ВТ_Сырец
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_Сжато.Ссылка КАК Ссылка,
    ВТ_Сжато.СуммаДокумента КАК СуммаДокумента,
    ВТ_Сжато.СовсемСтрока КАК СовсемСтрока,
    "Это Строка:" + ВТ_Сжато.СовсемСтрока + " И так могу" КАК ВоКак
ИЗ
    ВТ_Сжато КАК ВТ_Сжато

На выходе будет Приобретение товаров и услуг ТД00-000023 от 09.10.2023 16:11:20    76 000    76 000    Это Строка:76 000 И так могу
15 Donkey_hot
 
27.11.23
18:29
(13) Да упаси Господь, куда мне...
16 mikecool
 
27.11.23
18:37
(14) да чего уж там, тормоза ерп от этого не убудут )
17 d4rkmesa
 
27.11.23
20:28
(1) Если честно, плохо понятно, что у вас в запросе.
В запросах, начиная с 8.3.20, стало приятнее использовать конкатенацию с использованием новых функций, только символы НПП немного портят картину, к примеру:

ВЫРАЗИТЬ(РасчетыСКлиентамиПоСрокамОстатки.РасчетныйДокумент КАК Документ.РеализацияТоваровУслуг).Номер + ""_"" + СТРЗАМЕНИТЬ(СТРОКА(ГОД(ВЫРАЗИТЬ(РасчетыСКлиентамиПоСрокамОстатки.РасчетныйДокумент КАК Документ.РеализацияТоваровУслуг).Дата)), ВЫРАЗИТЬ(&СимволНПП КАК СТРОКА), """") КАК doc_number

Но все равно, читаемость уже какая-то есть.
18 shuhard
 
28.11.23
07:04
(16) ты не въехал, в 20 платформе новые функции и Строка из них не самая вкусная

типовые в данный момент перешли в режим совместимости с 21 и старые правила больше не действуют
19 mikecool
 
28.11.23
10:24
(18) в смысле - старые правила не действуют?
т.е. начиная с 20 платформы можно создавать сколь угодно ВТ, не забывая еще их индексировать(если надо), ради того, чтобы вывести строку и число в одном поле?
20 shuhard
 
28.11.23
10:30
(19) не тупи
Программист всегда исправляет последнюю ошибку.