Имя: Пароль:
1C
1С v8
Как уменьшить длину строки в поле ТЗ?
0 Lama12
 
24.04.13
11:58
Имеем таблицу значений в которой одна колонка. Сначала в эту колонку записывается строка - "Привет, пока     ".
После этого в цикле перебираю строки и делаю удаление пробелов. Вот такая строка

Стр.Номер = СокрЛП(Стр.Номер);

Где поле "Номер" имя поля в котором изначально содержится "Привет, пока     ".
Так вот.
После этой операции итоговое значение в ТЗ такое же как и было.
Как это обойти?

Длина строк разная.
Исходная таблица получается путем выгрузки из результатов запроса.
В отладчике СокрЛП(Стр.Номер) показывает что пробелы удалены, но после присвоения, пробелы возвращаются.
Специально тип на поле не присваивал.
1 pavelul73
 
24.04.13
12:00
символ160, скорее всего
Напиши СтрЗаменить(Стр.Номер,символ(160),"");
может поможет
2 Lama12
 
24.04.13
12:04
(1) 160 это не разрывный пробел, если не ошибаюсь.
Строки точно без него.
В отладчике разбирал каждый символ. Там восстанавливаются пробелы.
3 НЕА123
 
24.04.13
12:05
может стоит описаниетипов колонки посмотреть?
4 Lama12
 
24.04.13
12:06
(3) Проблема в том, что я его не делал.
Если б специально написал, то стал бы в него смотреть.
ТЗ получена вот так

Результат = Запрос.Выполнить();
ТЗ_Заказы = Результат.Выгрузить();
5 1Сергей
 
24.04.13
12:06
При выгрузке из запроса получается таблица с типизированными колонками, если не ошибаюсь
6 Lama12
 
24.04.13
12:06
4+ Или в 1С:Предприятие 8.2 (8.2.18.61)
платформа стала настолько умная, что сама описание типов в новую таблицу сует?
7 Lama12
 
24.04.13
12:07
(5) Раньше не сувала. Ладно. Буду в этом направлении копать.
8 НЕА123
 
24.04.13
12:09
(7)
>Раньше не сувала
бредишь.
9 Lama12
 
24.04.13
12:09
(8) Возможно. Дело действительно в описании типов.
Сейчас переделаю.
Спасибо.
10 НЕА123
 
24.04.13
12:12
(9)
еще скажи что не видел никогда
ВЫБРАТЬ ПЕРВЫЕ 0
11 Lama12
 
24.04.13
12:16
(10) Не видел.
Но идею понял :).
А от базовых типов такого не ожидал бы даже видя такой запрос.
12 ptiz
 
24.04.13
12:20
(11) А что ожидал?
Что платформа даст колонке не тот тип, который получен из данных запроса, а возьмёт с потолка какой-то другой?
13 Lama12
 
24.04.13
12:21
(12) Ожидал строку разной длины. Т.е. без пробелов справа.
14 hhhh
 
24.04.13
12:28
(13) ну код - это четко строка фиксированной длины, это даже школьники знают. Вот если бы наименование было, там вроде переменной длины.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший