|
Строка получаемая из запроса |
☑ |
0
Septera
06.12.14
✎
18:14
|
Платформа 8.1.15.14, запросом получаю строку длиною 10 символов, реквизит из которого получаю также имеет макс. длину 10, после выгрузки в ТЗ колонка наследует этот тип и такая вот борода получается:
// СтрокаТЗ.Код = "1234567890"
Стр = СтрЗаменить(СтрокаТЗ.Код, "0", "10");
// Стр = "1234567891"
1Ска съела "0" оО?! Первое что приходит привести значение к нужному типу еще в запросе, но таблица 200к+ и тесты показали задержку в 2с что вообще не желательно, может есть более интересные решения?
|
|
1
grate
06.12.14
✎
18:29
|
попробуй в запросе объединить результат с одной строкой вида "ВЫБРАТЬ "12345678901" КАК КОД,...", а после выгрузки ТЗ просто удали эту строку
не знаю только, сильно ли это скажется на производительности
|
|
2
Septera
06.12.14
✎
18:32
|
(1) а если не в запросе?
|
|
3
grate
06.12.14
✎
18:37
|
(2) выгрузить колонку в массив, удалить колонку с неправильным типом, добавить колонку с нужным типом, загрузить значения в колонку
|
|
4
DmitrO
06.12.14
✎
18:40
|
Стр = СтрЗаменить(Строка(СтрокаТЗ.Код), "0", "10");
Стр = СтрЗаменить(СтрокаТЗ.Код+"", "0", "10");
|
|
5
DmitrO
06.12.14
✎
18:41
|
а вообще, это ошибка платформы.
|
|
6
Septera
06.12.14
✎
18:47
|
Все намного проще, надо было просто присвоить новой переменной значение строки ТЗ и с ней уже работать:
// СтрокаТЗ.Код = "1234567890"
Перем1 = СтрокаТЗ.Код;
Перем1 = СтрЗаменить(Перем1, "0", "10");
// Перем1 = "12345678910"
|
|
7
DmitrO
06.12.14
✎
18:49
|
(5)+ которой в 8.3.5.1248 уже нет, например..
|
|
8
Defender aka LINN
06.12.14
✎
18:49
|
(5) Скуяли это ошибка?
|
|
9
Ник второй
06.12.14
✎
18:52
|
И скорее всего все ооочеь просто, а именно реквизит
"Стр" имеет длину в 10 символов, поэтому и обрезает )))
|
|
10
RomanYS
06.12.14
✎
18:52
|
(5) не ошибка
|
|
11
DmitrO
06.12.14
✎
18:54
|
(8)встроенная функция СтрЗаменить не должна принимать тип первого аргумента
(9)если в контексте испытательного стенда есть реквизит типа Строка(10) с именем Стр, то это ошибка в геноме топик стартера :)
|
|
12
DmitrO
06.12.14
✎
18:55
|
поправка:
(8)встроенная функция СтрЗаменить не должна принимать тип первого аргумента для образования типа результата функции
|
|
13
Defender aka LINN
06.12.14
✎
20:40
|
(11) Дык она какбе и не принимает
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший