Имя: Пароль:
1C
 
Проблема с выразить как Строка в запросе
0 HomoAlbus
 
22.10.18
16:58
Всем привет!
В общем, такая история. Имеется в запрос, в есть вот такое поле:

ВЫРАЗИТЬ(ВЫБОР
КОГДА РасчетыСПокупателями.ЭтоАванс
ТОГДА &ТекстАванс
ИНАЧЕ &ТекстОплатаДолга
КОНЕЦ КАК СТРОКА(100)) КАК СодержаниеПроводки,

Проблема в следующем, при выполнении запроса, поле СодержаниеПроводки автоматически добиавается пробелами до 100. А если убрать ВЫРАЗИТЬ, то поле типизируется длиной передаваемой строки, т.е. может быть 5-7 символов, однако в эту таблицу потом еще помещаются данные и данное поле должно быть переменной длины до 100 символов.

Вопрос: можно ли типизировать колонку в запросе таким образом, чтобы не добавлялись дополнительные пробелы в конце строки?

Спасибо за ранее
1 Cyberhawk
 
22.10.18
16:59
Нет, Я против
2 ssh2006
 
22.10.18
17:02
(0) обновить платформу до 8.3
3 ssh2006
 
22.10.18
17:02
там ВЫРАЗИТЬ не добивает пробелами
4 HomoAlbus
 
22.10.18
17:14
(3) Добивает, у меня 8.3.12
5 ssh2006
 
22.10.18
17:38
Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ВЫРАЗИТЬ(""test"" КАК СТРОКА(100)) КАК Поле1";
    
    Таб = Запрос.Выполнить().Выгрузить();
    Сообщить(СтрДлина(Таб[0][0]));    

--------

Тоже 8.3.12 без совместимости, сообщает 4
6 ssh2006
 
22.10.18
17:40
Непонятно пока

При переходе на 8.2 писалось:

Операция языка запросов ВЫРАЗИТЬ возвращает строку переменной длины (без концевых пробелов) при приведении к типу СТРОКА. В режиме совместимости с версией 8.1 поведение не изменилось.

В описаниях к 8.3.10 написано

При работе в клиент-серверном варианте, с использованием СУБД Microsoft SQL Server, в результате запроса, содержащего выражение ВЫРАЗИТЬ(… КАК СТРОКА(…)), выполняется дополнение результата операции пробелами до требуемой длины.
В режиме совместимости с версией 8.3.9 поведение не изменилось.
7 Cyberhawk
 
22.10.18
17:48
(6) За тебя в 1С решили, что тебе это не нужно ))
8 ssh2006
 
22.10.18
17:50
(7) у тебя (5) какой результат дает?
9 Cyberhawk
 
22.10.18
17:51
Пришлешь для ИР - проверю