|
Мобильная платформа. Как к документу прикрепить фото из галереи? | ☑ | ||
---|---|---|---|---|
0
Родионовна
03.10.16
✎
16:36
|
Здравствуйте.
Очень прошу отклика того, кто нашел решение, как к документу прикрепить фото (не сделать, а выбрать из галереи). 1. Действие = "android.intent.action.GET_CONTENT" - без утилиты акоды не взлетело, не получилось преобразовать content в uri. А ставить еще один апк - меня с этой идеей точно отправят. 2. ДиалогВыбораФайла() в 8.3.9 - это неудобный скроллинг списка изображений без разбивки по каталогам. Да и не хотелось пока в работу тестовую платформу внедрять - уже нашли существенные баги. |
|||
1
kittystark
03.10.16
✎
17:02
|
на уровне идеи:
своим кодом пробежаться по каталогу, и на лету сгенерировать со вcякими <img src=...> HTML-код, разместив его в поле хтмл на форме |
|||
2
kittystark
03.10.16
✎
17:04
|
|
|||
3
Родионовна
03.10.16
✎
17:21
|
(1)Спасибо за отклик. Это на крайний случай, т.к. на планшете эта идея отрабатывает очень медленно.
|
|||
4
kittystark
03.10.16
✎
17:25
|
нема за шо
ПоместитьФайл(...), не оно ? |
|||
5
Родионовна
03.10.16
✎
17:28
|
В boss на 8.3.8 эта функция хорошо реализована - удобно и быстро. На первый взгляд через GET_CONTENT.
|
|||
6
Родионовна
03.10.16
✎
18:37
|
(4) На мобильной платформе параметр <Интерактивно> игнорируется и диалоговое окно выбора файла не отображается никогда
|
|||
7
lucbak
03.10.16
✎
20:41
|
(6) в 8.3.9 все отображается (ничего не игнорируется)
|
|||
8
lucbak
03.10.16
✎
20:44
|
Какие баги нашли ? (ХОчется знать чего ждать)
|
|||
9
kittystark
04.10.16
✎
09:25
|
(6) в (4) код рабочий - взят из реальной конфы и на моб.платформе 8.3.8.58 работает, во всяком случае под андроидом
|
|||
10
Родионовна
04.10.16
✎
12:06
|
(9) проверила еще раз на 8.3.8.58 - окно выбора не появляется. Моя выдержка в (6) из справки к платформе
(8) Например, приложение вылетает при открытии формы с таблицей типа "Дерево" или "Иерархический список". |
|||
11
lucbak
04.10.16
✎
12:08
|
(10) не всегда надо слепо верить СП :)
Вылет а "Иерархический список" тоже заметил, на Дереве вылетов не наблюдаю. |
|||
12
newbling
04.10.16
✎
12:14
|
Я недавно делал прикрепление файлов, могу скинуть
&НаКлиенте Процедура Загрузить(Команда) // Тут с помощью НайтиФайлы() достаём один или много ОписаниеОповещения("ОтветПользователяПродолжитьЗапись",ЭтотОбъект,МассивКартинок), "Найдено "+КолКарт+" картинок. Продолжить?",РежимДиалогаВопрос.ДаНет); КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ОтветПользователяПродолжитьЗапись(РезультатВопроса,МассивКартинок) Экспорт Если РезультатВопроса = КодВозвратаДиалога.Да Тогда ПомещаемыеФайлы = Новый Массив; Для Каждого фКартинка Из МассивКартинок Цикл ПомещаемыеФайлы.Добавить(Новый ОписаниеПередаваемогоФайла(фКартинка.ПолноеИмя)); КонецЦикла; ПомещенныеФайлы = Новый Массив; ПоместитьФайлы(ПомещаемыеФайлы,ПомещенныеФайлы,,Ложь); МассивДанных = Новый Массив; Для сч = 0 По ПомещенныеФайлы.Количество()-1 Цикл МассивДанных.Добавить(Новый Структура("ИмяБезРасширения,Расширение,АдресФайлаВоВременномХранилище", СокрЛП(МассивКартинок[сч].ИмяБезРасширения), СокрЛП(МассивКартинок[сч].Расширение), ПомещенныеФайлы[сч].Хранение)); КонецЦикла; ЗагрузитьИзображенияСервер(МассивДанных); КонецЕсли; КонецПроцедуры &НаСервере Процедура ЗагрузитьИзображенияСервер(МассивДанных) //пустАвтор=Справочники.Пользователи.ПустаяСсылка(); Для Каждого ЭлемДанных Из МассивДанных Цикл спрНом = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул",ЭлемДанных.ИмяБезРасширения); Если спрНом.Пустая() Тогда Сообщить("Не найдена номенклатура с артикулом "+ЭлемДанных.ИмяБезРасширения, СтатусСообщения.Важное); Иначе Попытка ПрисоединеннаяКартинка = ПрисоединенныеФайлы.ДобавитьФайл(спрНом,ЭлемДанных.ИмяБезРасширения,ЭлемДанных.Расширение,ТекущаяДата(),,ЭлемДанных.АдресФайлаВоВременномХранилище); ОбНом = спрНом.ПолучитьОбъект(); ОбНом.ФайлКартинки = ПрисоединеннаяКартинка; ОбНом.Записать(); Сообщить("Добавлени картинка "+ЭлемДанных.ИмяБезРасширения + ЭлемДанных.Расширение + " для номенклатуры "+спрНом.Наименование); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
13
newbling
04.10.16
✎
12:15
|
Ну и ессно надо накидать обработчик выбора файла чтоб красиво было, но это уже другая тема
|
|||
14
newbling
04.10.16
✎
12:16
|
ПрисоединенныеФайлы.ДобавитьФайл удобно тем, что там уже учтена возможность хранения файлов в томах на диске или внутри базы.
|
|||
15
Родионовна
04.10.16
✎
12:34
|
(11) я не доверяю, я проверяю. И на 8.3.8.68 тоже - нет интерактива.
(14) Это функционал из БСП. Меня интересует как организовать выбор изображения в мобильном приложении и получить дв.данные для дальнейшей отправки по Ws. Через НайтиФайлы() можно вывести форму с полями html док-та для выбора пользователем нужного, но отрисовываться она будет ппц как долго |
|||
16
lucbak
04.10.16
✎
13:09
|
(15) на 8.3.9 есть, хотя в СП написано, что нет.
Можешь воспользоваться вот этим: http://catalog.mista.ru/public/155226/ (в принципе работает, но есть небольшая проблема с отрисовкой) |
|||
17
arsik
гуру
05.10.16
✎
15:33
|
(0) Вообще то у меня вот такой кусок работает без всякого ACODE, т.к. он использует стандартные методы мобильной платформы и андроида.
|
|||
18
arsik
гуру
05.10.16
✎
15:47
|
+(17) Только не найду как в дополнительных параметрах передать, что нужен множественный выбор.
|
|||
19
arsik
гуру
05.10.16
✎
16:12
|
+(18)
Никакого эффекта |
|||
20
arsik
гуру
05.10.16
✎
16:20
|
+ (19) Все понятно. Это ограничение стандартной галереи в андроиде.
http://stackoverflow.com/questions/31002388/android-intent-extra-allow-multiple-allows-only-single-picking |
|||
21
DitriX
06.10.16
✎
12:48
|
(17) не вводите людей в заблуждение. В данном случае - это работает именно у ВАС, и далеко не факт, что работать будет у других.
Так как есть разные версии прошивки, есть разные версии тех же приложений и т.д. |
|||
22
arsik
гуру
06.10.16
✎
14:55
|
(21) Ну яж почитал чуток :)
Интенты - намерения не предназначены приложению, они в систему кидаются. Там же и ищется соответствие Намерение + миме тип. И выдается список приложений какими я могу воспользоватся. Это все работает на уровне андроида, и не важно какие приложения у меня стоят. Если есть подходящее по фильтру я его увижу в списке выбора. |
|||
23
Родионовна
06.10.16
✎
16:50
|
(17) Я неточно изложила проблему: фото выбрать можно и оно отображается в поле типа Html документ, а вот сохранить его в двоичные данные и передать в центральную базу - увы.
НовВз.Данные- это ссылка типа content и ее в двоичные данные не преобразовать. |
|||
24
arsik
гуру
07.10.16
✎
08:42
|
(23) Странно. У меня в
НовВз.Данные - строка типа "file:///storage/emulated/0/DCIM/Camera/IMG_20161003_151055_HDR.jpg" Ниже приведенный код вполне себе работает.
|
|||
25
arsik
гуру
07.10.16
✎
08:42
|
Покажи свой кусок
|
|||
26
DitriX
07.10.16
✎
19:51
|
(22) потому что ваше приложение фотографий возвращает прямой линк к файлу, а у других - через контент првайдера, а 1с не может в них.
Тут дело не в коде, а в приложениях. |
|||
27
arsik
гуру
07.10.16
✎
19:58
|
(26) О том что проблема в обработке результата я только в (23) узнал.
Понятно что приложение может разный результат вернуть. (23) Может поиграться с ДополнительныеДанные? Туда возможно можно передать параметр, для приложения, что бы оно возвращало ури. Но это опять затыкание дыр, т.к. на разных устройствах разные приложения могут стоять. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |