|
Выгрузка файлов в XML | ☑ | ||
---|---|---|---|---|
0
seraf
15.05.12
✎
17:31
|
Подмогите примером как в XML выгрузить кроме реквизитов справочника номенклатуры еще и файлы картинок
Если можно кусочком кода |
|||
1
SuperMario
15.05.12
✎
17:33
|
файлы картинок???
в xml??? Ничего не путаешь? |
|||
2
Нуф-Нуф
15.05.12
✎
17:34
|
(1) а че? получешь цвета побитно и в хмл...
|
|||
3
Нуф-Нуф
15.05.12
✎
17:34
|
файлы картинок хранятся в отдельно справочнике
|
|||
4
Defender aka LINN
15.05.12
✎
17:35
|
(1) А что тебя смущает?
|
|||
5
SuperMario
15.05.12
✎
17:35
|
(2) Креативно!
|
|||
6
Нуф-Нуф
15.05.12
✎
17:35
|
выгружай его
|
|||
7
seraf
15.05.12
✎
17:35
|
ну понятно что не файлы картинок а наверное ссылки в хмл файле на картинке выгруженные в папку по соседству.. я примера не нашел
|
|||
8
SuperMario
15.05.12
✎
17:35
|
(4) сама идея.
|
|||
9
Нуф-Нуф
15.05.12
✎
17:36
|
картинки в виде двоичных данных отлично храняться в хмл
|
|||
10
seraf
15.05.12
✎
17:36
|
как мне через xml перебросить номенклатуру и сопутствующие ей изображения
|
|||
11
Нуф-Нуф
15.05.12
✎
17:37
|
(10) см (3)
|
|||
12
Нуф-Нуф
15.05.12
✎
17:38
|
ХранилищеДополнительнойИнформации
|
|||
13
seraf
15.05.12
✎
17:38
|
(11) да в отдельном справочнике хранятся
так как двоичные данные выгружать, тогда файл хмл должен быть объемным |
|||
14
seraf
15.05.12
✎
17:40
|
я просто думал будет тег со ссылкой на файл, который в папочку выгрузиться
|
|||
15
Нуф-Нуф
15.05.12
✎
17:42
|
(14) нет
|
|||
16
seraf
15.05.12
✎
17:43
|
(15) ясно спасибо думаю разберусь
|
|||
17
seraf
16.05.12
✎
10:27
|
привет, чет так и не допер
делаю такой код Попытка ДД = ВыборкаТЧ.Изображение.Получить().ПолучитьДвоичныеДанные(); Исключение ДД = ""; КонецПопытки; ТипXML = XMLТипЗнч(ДД); Файл.ЗаписатьНачалоЭлемента(ТипXML.ИмяТипа, ТипXML.URIПространстваИмен); Файл.ЗаписатьТекст(СокрЛП(Строка(ДД))); Файл.ЗаписатьКонецЭлемента(); в итоге в строку попадают преобразованные в строку двоичные данные, но обрезаны до определенной длины типа <d6p1:base64Binary xmlns:d6p1="http://www.w3.org/2001/XMLSchema">FF D8 FF...</d6p1:base64Binary> что неправильно делаю? |
|||
18
andrewks
16.05.12
✎
10:36
|
жесть...
|
|||
19
andrewks
16.05.12
✎
10:39
|
Base64Строка()
Base64Значение() |
|||
20
seraf
16.05.12
✎
10:40
|
(18) ну не выгружал я ничего в хмл не умею еще
|
|||
21
seraf
16.05.12
✎
10:40
|
мог бы через другие обмены сделать но хочется в этом разобраться)
|
|||
22
seraf
16.05.12
✎
10:42
|
(19) спасибо)
|
|||
23
Serginio1
16.05.12
✎
12:34
|
Можно и через объекты XDTO
ддФайлЭксель = Новый ДвоичныеДанные(ИмяФайла); ТипДвоичныеДанные = ФабрикаXDTO.Тип("http://www.w3.org/2001/XMLSchema", "base64Binary"); ДвоичныеДанные = ФабрикаXDTO.Создать(ТипДвоичныеДанные,ддФайлЭксель); ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, ДвоичныеДанные ); |
|||
24
seraf
18.05.12
✎
16:23
|
заканчиваю свои мучения с переносом картинок, но всё же нужна помощь)
получаю из xml двоичные данные файла, предварительно приведенные в строку через Base64Строка ДД = Base64Значение(СтрокаXML.base64Binary); Карт = Новый Картинка(ДД); ХЗ = Новый ХранилищеЗначения(Карт); Файл = Справочники.Файлы.СоздатьЭлемент(); Файл.ХранимыйФайл = ХЗ; Файл.Записать(); в итоге в хранилище файла изображения нет, выгружается что-то почти пустой вместо моей картинки что еще не так? |
|||
25
seraf
18.05.12
✎
16:24
|
(24) почти пустой файл выгружается на выходе
|
|||
26
seraf
18.05.12
✎
16:25
|
Файл.ХранимыйФайл тип ХранилищеЗначений
|
|||
27
seraf
18.05.12
✎
16:36
|
размер файла правильно определяется, я наверное в конце неправильно в хранилище значений помещаю
|
|||
28
andrewks
18.05.12
✎
16:37
|
ДД = Base64Значение(СтрокаXML.base64Binary);
ХЗ = Новый ХранилищеЗначения(ДД); Файл = Справочники.Файлы.СоздатьЭлемент(); Файл.ХранимыйФайл = ХЗ; Файл.Записать(); |
|||
29
Fragster
гуру
18.05.12
✎
16:40
|
XDTO рулит
|
|||
30
seraf
18.05.12
✎
16:46
|
(29) разбираться надо
ДД = Base64Значение(СтрокаXML.base64Binary); вот что-то тут не так, закодированная строка огромная а двоичных данных кот наплакал на выходе |
|||
31
seraf
18.05.12
✎
16:56
|
Base64Значение(<Строка>)
Параметры: <Строка> (обязательный) Тип: Строка. Строка, закодированная по алгоритму base64. Возвращаемое значение: Тип: ДвоичныеДанные. Описание: Получает из строки закодированной по алгоритму base64 двоичные данные. Не понимаю, из закодированной строки получает двоичных данных на пару байтов. Правильно ведь, передают туда строку из хмл, предварительно помещенную так ДД = ВыборкаТЧ.Изображение.Получить().ПолучитьДвоичныеДанные(); ДДСтрока = Base64Строка(ДД) ТипXML = XMLТипЗнч(ДД); ФайлXML.ЗаписатьАтрибут(ТипXML.ИмяТипа, ТипXML.URIПространстваИмен, ДДСтрока); |
|||
32
seraf
18.05.12
✎
17:46
|
ниче не понимаю
если в самой выгрузке играться с двоичными данными то Base64Значение возвращает длинный код двоичных данных из закодированной Base64Строка строки та же длинная строка обрабатываясь уже при закрузке возвращает несколько байтов |
|||
33
seraf
18.05.12
✎
18:06
|
ураа поборол
неизвестно откуда пробелы влезли в закодированую строку, Стрзаменить все решил всем спасибо |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |