Имя: Пароль:
1C
1С v8
ado - Excel - длина строки больше 255
0 fimanich
 
11.05.12
13:35
Всем доброго дня!
С помощью ado читаем файл Excel. Да вот незадача, в ячейке больше 255 символов, а считывается только 255.

Как побороть, подскажите, пожалуйста?

Строка подключения:
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ИмяФайлаЗагрузки + ";Extended Properties=""Excel 8.0;HDR=No;IMEX=1""";

В отладчике rs.Fields(1).Precision = 255
Соответственно rs.Fields(1).Value обрезается на 255 символе.
1 shuhard
 
11.05.12
13:39
(0) реестр уже правил ?
http://support.microsoft.com/kb/q281517/
2 aleks-id
 
11.05.12
13:39
(0) я не нашел решения. плюнул и прочитал через COM
3 shuhard
 
11.05.12
13:40
(2) такой подлянки форум от тебя не ожидал
4 aleks-id
 
11.05.12
13:43
(3) мне надо было получить данные всего 1 раз из 3500 строк. так что простите. каюсь :)
5 shuhard
 
11.05.12
13:44
(4) [каюсь :)]
=)
6 fimanich
 
11.05.12
13:48
(1) неужто без правки реестра не побороть?
Дело в том, что обработина будет запускаться на разных компах и править реестр не вариант.
(4)(5) Погодите каяться, может все же есть решение?
7 shuhard
 
11.05.12
13:49
(6) [неужто без правки реестра не побороть?]
ты сначала проверь что правка реестра помогает, минуту назад у тебя не было и такого варианта
8 fimanich
 
11.05.12
14:03
(7) убедился, помогает, огромное спасибо за эту подсказку.
Однако проблема от этого не решается (см.(6))
:-(
9 Aprobator
 
11.05.12
14:07
(0) как я удачно зашел однако. Про IMEX=1 не знал. А то попался файл где колонка имеет ячейки как с форматом число, так и со строкой. Так числовые данные вообще не считывались.
10 shuhard
 
11.05.12
14:07
(8) ну у adodb есть методы stream - это как бы намёк =)
11 fimanich
 
11.05.12
14:14
(10)а поподробнее можно про этот stream?
Хотелось бы победить проблемку...
12 shuhard
 
11.05.12
14:22
(11) рад бы помочь, но не чем
13 fimanich
 
11.05.12
14:34
(13) Ясно. Спасибо, ты мне уже не первый раз по ентому ado подсказываешь.
Придется, похоже, юзать Com + open office в данном случае.
Но если кто вдруг знает - прошу откликнуться!
14 fimanich
 
11.05.12
14:35
(13) Конечно там должно быть (12), а не (13)
15 Rizhij_Nikitos
 
11.05.12
14:40
(0) пробуй через КОм, читал там и больше 300 символов.
16 YHVVH
 
11.05.12
15:03
йоксель не?
17 fimanich
 
11.05.12
15:04
(15) сделал уже com + openoffice, читает любую длину строки.
Хотелось просто красиво сделать с пом. ado, запросом с секцией where (мне там не все строки нужны из файла, а только часть).
18 fimanich
 
11.05.12
15:06
(16) внешняя компонента не подходит, см. (6) - на разных компах запускается, подключать везде ВК не получится, а вот чудище open office на всех компах есть, потому на нем и полетим...