Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
20 мая 2024, 03:00

загрузка фото через мобильное устройство

Автор Enot_tut, 28 июл 2015, 09:06

0 Пользователей и 1 гость просматривают эту тему.

Enot_tut

на компьютере все сохраняет и нормально фотки отправляет на мобильное устройство,


а на мобильной платформе открывает файловый менеджер но не сохраняет файлы и он не отоброжаеться в окошке фото

вот код помогите исправить ошибку пожалуйста
&НаКлиенте
+ Code
Процедура ДобавитьКартинку(Команда)
ИмяФайла = "";
ПутьФайла = "";
//Вызываем Диалоговое окно и помещаем файл Картинки из локальной файловой системы во временное хранилище

Если ПоместитьФайл(ПутьФайла, , ИмяФайла, Истина) = Истина Тогда
//в строковый реквизит ФОТО нашей формы сохраняем ссылку на Картинку во временном хранилище

Фото = ПутьФайла;
//для создания нового элемента в Справочнике Файлы и записи Картинки в его реквизит Файл

//переходим на сервер с помощью вызова серверной процедуры
УстановитьКартинку();
КонецЕсли;
//условие ЕСЛИ нужно для того, чтобы если пользователь отказался от выбора файла

//мы не вызывали серверную процедуру УстановитьКартинку()

    #Если МобильноеПриложениеКлиент Тогда

    НовВз = Новый ЗапускПриложенияМобильногоУстройства();
    НовВз.Действие = "android.intent.action.GET_CONTENT";
//Указываем тип искомых файлов, нас интересует только фото

    НовВз.Тип = "image/*";//"file/*"; //"*/*"

//Говорим что интересуют только локальные данные, а не облачные
    НовВз.ДополнительныеДанные.Добавить("android.intent.extra.LOCAL_ONLY",Истина);
    РезультатРаботы = НовВз.Запустить(Истина);
    Если НЕ РезультатРаботы Тогда
        Сообщить("Файл не выбран!");
    Возврат
    КонецЕсли;
    ПутьКФайлу = НовВз.Данные;
    Если ПоместитьФайл("что вписать сюда?", , Истина) = Истина Тогда
  Фото = "что вписать сюда?";
УстановитьКартинку();
КонецЕсли;
    #КонецЕсли

КонецПроцедуры

&НаСервере
Процедура УстановитьКартинку()
//создаем новый элемент в Справочнике Файлы

НовыйФайлКартинки = Справочники.Файлы.СоздатьЭлемент();
//в реквизит СправочникаФайлы Файл помещаем выбранную ранее Картинку

НовыйФайлКартинки.Файл = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(Фото));
Фото = ПоместитьВоВременноеХранилище(НовыйФайлКартинки.Файл.Получить());
//записываем новый элемент справочника Файлы

НовыйФайлКартинки.Записать();

//устанавливаем значение реквизита Картинка Справочника Сотрудники

Объект.Картинка = НовыйФайлКартинки.Ссылка;
КонецПроцедуры

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
//отображение картинки при открытии формы справочника

Фото = ПолучитьНавигационнуюСсылку(Объект.Картинка, "Файл");

//устанавливаем автомасштаб для картинки

Элементы.Фото.РазмерКартинки = РазмерКартинки.АвтоРазмер;
КонецПроцедуры

Enot_tut

ребята помогите пожалуйста ошибка вот в этой строке
#Если МобильноеПриложениеКлиент Тогда
    УРИ = "";
НовВз = Новый ЗапускПриложенияМобильногоУстройства();
    НовВз.Действие = "android.intent.action.GET_CONTENT";
//Указываем тип искомых файлов, нас интересует только фото
    НовВз.Тип = "image/*"; //"file/*"; //"*/*"
//Говорим что интересуют только локальные данные, а не облачные
    НовВз.ДополнительныеДанные.Добавить("android.intent.extra.LOCAL_ONLY","output",УРИ, "Uri",Истина);
    РезультатРаботы = НовВз.Запустить(Истина);
Если НЕ РезультатРаботы Тогда
    Сообщить("Файл не выбран!");
    Возврат
КонецЕсли;
ПутьКФайлу = НовВз.Данные;
Если ПоместитьФайл(УРИ, , Истина) = Истина Тогда

Фото = "Uri";
УстановитьКартинку();
КонецЕсли;
    #КонецЕсли

vitasw


Похожие темы (5)

Рейтинг@Mail.ru

Поиск