Вход | Регистрация

1С:Предприятие ::

Метки: 

ComSafeArray в строку

Я
   Euroset1
 
27.06.18 - 09:58
Всем привет. Есть ComSafeArray, полученный из BLOB из оракл. Внутри побайтово текст на русском в windows 1251 кодировке.


Как собрать его в читаемую строку 1с без использования временного файла?
 
  Рекламное место пустует
   sechs
 
1 - 27.06.18 - 10:14
Преобразовать его в строку на стороне окакла с применением подходящего из пакета UTL_RAW
   sechs
 
2 - 27.06.18 - 10:15
Можешь также про ADODB.Stream подумать
   sechs
 
3 - 27.06.18 - 10:15
Можешь запользовать новомодные буфера двоичных данных в 1С
   sechs
 
4 - 27.06.18 - 10:15
Дерзай, юный падаван
   Euroset1
 
5 - 27.06.18 - 11:07
А почему на попытки использовать любой метод из синтакс помощника он мне пишет "значение не является значением объектного типа"? Хотя сообщить(ТипЗнч(рез)) и сообщить(рез) выдают "COMSafeArray"
   Euroset1
 
6 - 27.06.18 - 11:10
Вернее ТипЗнч выдает COMSafeArray, а само значение отображается как пусто.
   Сияющий в темноте
 
7 - 27.06.18 - 11:16
Поди у вас массив байт,а он для системы обьектом не является.Его нужно просто побайтно прочитать.Можно сделаиь вставку на VbScript и его функции MidB и AscB
   Euroset1
 
8 - 27.06.18 - 11:36
Почему-то после первого обращения мой ComSafeArray превращается в нулл. Даже в отладчике прямо в процессе отладки
   vde69
 
9 - 27.06.18 - 11:52
для каждого эл из твойКомМассив Цикл
 результат = результат + Строка(эл)
КонецЦикла
   sechs
 
10 - 27.06.18 - 11:59
(9) Браво!
 
 
   Euroset1
 
11 - 27.06.18 - 12:07
(9) =)
Протестив глазами получил следующий результат: 034598398573974569827364987264398273649827634987263498726349876234789...


Кстати для каждого для этого массива не прокатит. его нужно сначала выгрузить в обычный и только потом... а там коды символов в нем.
   vde69
 
12 - 27.06.18 - 12:42
(11) тогда
результат = результат + Символ(Число(эл))
   vde69
 
13 - 27.06.18 - 12:43
(8) это из-за свойств самого отладчика (динамическое получение списка свойств), не пользуйся отладчиком, все, что нужно получай через "сообщить"
   sechs
 
14 - 27.06.18 - 13:04
(12) Чтобы получить при преборазовании из win1251 очевидный ОХГДЕЖ ЙЮЙНИ ?
   Euroset1
 
15 - 28.06.18 - 13:23
(13) так нифига подобного, даже два сообщить подряд различались: в первом значение, а во втором уже пустота)) Это почему-то именно с блобами и именно при таком способе получения.
   Euroset1
 
16 - 28.06.18 - 13:25
Вообще в итоге перешли на пост запрос вместо блоба.


Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует