Имя: Пароль:
1C
 
Строка(списокЗначений)
0 Stimcool
 
24.03.11
12:47
Вначале немного теории:

Строка (String)
Синтаксис:
Строка(<Значение>)
Параметры:
<Значение> (обязательный)
Тип: Произвольный. Исходное значение.
Возвращаемое значение:
Тип: Строка. Полученное значение.(Строка (String)Описание:Значения данного типа содержат строку в формате Unicode произвольной длины.)
Описание:
Преобразует полученный параметр в значение типа Строка.
При преобразовании к строке числа формируется его полное представление в стандартном виде, соответствующем национальным установкам.
Преобразование значений типа Булево зависит от национальных установок и содержит строковое представление этих значений.
При преобразовании к строке даты формируется ее полное представление в стандартном читабельном виде, соответствующем национальным установкам.
Преобразование к строке значений остальных типов производится по мере возможности и обычно содержит читабельное представление значения.

А теперь пробуем так:

Список = Новый СписокЗначений;
Список.Добавить("00000001");
Список.Добавить("00000002");
Список.Добавить("00000003");
Список.Добавить("00000004");
Список.Добавить("00000005");
Список.Добавить("00000006");
Список.Добавить("00000007");
Список.Добавить("00000008");
Список.Добавить("00000009");
Список.Добавить("00000010");
Список.Добавить("00000011");
Список.Добавить("00000012");

Запускаем отладчик и видим, что:
Строка(Список) = "00000001; 00000002; 00000003; 00000004; 00000005; 00000006; 00000007; 00000008; 00000009; 00000010;..."

Почему так происходит?
1 Draziw
 
24.03.11
12:52
потому что по теории это относится к последнему пункту:
Преобразование к строке значений остальных типов производится по мере возможности и обычно содержит читабельное представление значения.

что дословно означает, как нам разработчикам языка захотелось преобразовать список значений к строке, так мы и сделали, а вы будите этим пользоваться.
2 Defender aka LINN
 
24.03.11
12:53
(0) Как происходит? Все как в мануале, что тебе не нравится?
3 Stimcool
 
24.03.11
12:55
(2) в мануале сказано про читабельный вид и "Значения данного типа содержат строку в формате Unicode произвольной длины"
Нигде не сказано про ограничения этой функции
4 YHVVH
 
24.03.11
12:56
(0) действительно творится загадочное.
5 Ненавижу 1С
 
гуру
24.03.11
12:57
(3)  >>и обычно содержит читабельное представление значения

ключевое слово "обычно"
6 Fragster
 
гуру
24.03.11
12:59
(0) значениевСтрокуВнутр + пару преобразований СтрЗаменить - и все будет ОК
7 Stimcool
 
24.03.11
13:00
(5) обычно - это не технический термин. Считаю, что  описании встроенного языка его не должно быть. Куда подавать претензии?
8 hhhh
 
24.03.11
13:09
(7) а в чем претензия? Там что не в уникоде? Вообще-то очень удобно они тут со списком придумали, жалко будет, если какие-нибудь придурки заставят их поменять.
9 Stimcool
 
24.03.11
13:14
(8)вообще-то про претензии шутка была, но суть в том, что ограничения функции Строка() не документированы и это несколько удручает.Непонятно каких еще неточностей ждать в документации
10 Stimcool
 
24.03.11
13:18
+ну и за придурков, понятное дело, можно и ответить, но вроде 50 лет, можно и списать
11 hhhh
 
24.03.11
13:22
(10) ну я же тебя не причислял к придуркам, я же просто написал, что не разобрался, не понял, в чем суть твоей претензии.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший