Бесплатный курс по Мобильной платформе 1C. Модуль 4

Модуль 4. Работа с мультимедиа (аудио, фото, видео) и геопозиционированием

В ходе четвертого модуля Вы научитесь работать с объектом Мультимедиа:

  • как делать фото
  • как делать видео
  • как записать разговор

Вы изучите объект СредстваГеопозиционирования:

  • что такое провайдеры
  • как получить текущие координаты
  • как получить адрес по координатам и наоборот
  • как показать текущее местоположение на карте
  • как просмотреть свой маршрут
  • как можно сделать ложный маршрут

Порядок обучения

329696678Скачивайте теоретические материалы в PDF и видео-формате. Рекомендуем начинать именно с изучения теории.

home-security-systems-installation-costs Выполняйте практическое задание для закрепления полученных знаний.

загруженное (5)Выполните самоконтроль, просмотрев видео-решение преподавателя.

Теоретические материалы

Итак, приступайте к изучению теоретического материала третьего модуля курса.

Данный контент доступен только для зарегистрированных пользователей.
Пожалуйста, войдите на сайт (Войти), если Вы уже зарегистрированы или зарегистрируйтесь на сайте (Зарегистрироваться), чтобы получить доступ.
Регистрация занимает 1 минуту, но открывает доступ к материалам сайта.

Вопросы

Если Вам необходима поддержка, мы с радостью ответим на Ваши вопросы в рамках Мастер-группы «Полного курса по разработке Мобильных приложений на платформе «1С:Предприятие 8».

<< Перейти к Модулю 3

Комментарии / обсуждение (492):

  1. Vdeg

    На моём виртуальном устройстве не видно вот это приложение https://play.google.com/store/apps/details?id=com.fakegps.mock

    Зато видны другие, например вот это https://play.google.com/store/apps/details?id=com.lexa.fakegps

    GPS координаты я получаю, но при попытке отобразить координаты (полученные от приложения «com.lexa.fakegps») на карте вижу пустую карту и на ней метку текущего местоположения :(

    97bb42c1c422eb14e421774a4b9afb0b.PNG

    • Vdeg

      Кажется, я сам понял :) я попал в географическую пустыню :) где никаких меток на карте нет :)

  2. mxs089

    По поводу задания, необходимо создать кнопку открыть фото и т.п. на клиенте. Я правильно понимаю, что на клиенте тонкого приложения, или на клиенте МП?

    • mxs089

      МП клиент, форма регистра Прикрепленные данные, использую переменную ЭтотОбъект, при открытии в МП ошибка — переменная не определена?

      • mxs089

        совсем в галерею не заходит, пишет произошла ошибка, это после перезапуска без запуска 1с

  3. FEAS

    У меня интересный вопрос! Вроде все понял и осознал как делается вся цепочка НО:
    4 задание сделал. Решил его делать на реальном смартфоне, а до этого делал на эмуляторе.
    Но дома у меня порты не открыты. Поэтому со смарта по айпи достучаться не могу.
    1) Тогда я на рабочем сервере развернул апач, опубликовал приложение , открыл порт. Подключаюсь все ОК.
    2) Сервак на котором созданы вебсервисы находится на домашнем ноуте.

    МП вызавает вебсервисы отправляет ему данные, фото аудио и видео и координаты. Сервак принимает и отправляет в ответ.

    Собственно вопрос как МП вызывает вебсервис опубликованный на домашнем компе? Приэтом порт закрыт айпи ноута нигде не прописывал.

    • FEAS

      Понял конечно почему подключаеться потому что по вай фай в одной сети они находятся через моб. оператора не зайдет. Но к МП не конектится ( Вот такой вот баг обращайте внимание

  4. Ирина

    Вот такая ошибка появляется при добавлении конфигурации на мобильное устройство (wmvare). Уже и мп и веб-серверы публиковала заново, и каталоги удаляла и заново все создавала — ничего не помогает… И сам wmvare перезагружала.

    d35c61b57db1924e11a5a8badbdaca1c.jpg

    • Vdeg

      Публикуйте в другой виртуальный каталог веб-сервера. Мне помогло.

      • Ирина

        Спасибо, но мне это не помогло. Уже что только не делала, и в разных папках и в одной, потом всё удаляла и заново в других каталогах создавала — ничего не помогает…

    • iDim

      А вы похоже серверную конфигурацию подключаете а не клиента (мобильного)

    • DaNN

      Вы либо опубликовали не мобильное приложение, либо в одну папку опубликовали и вебсервис и мобильное приложение

  5. gigapevt

    В задании написано: «При нажатии на эту кнопку должна быть показана карта с КООРДИНАТАМИ».
    У меня просто окрывается карта с моим метоположением на ней никакие координаты не указаны. Так и должно быть ? или я что то упустил.

    • L0z4

      в вебинаре было показано как вывести подпись для отметки на карте.

  6. gigapevt

    Координаты на сервере есть. Осталось их отобразить на карте (цель 4-го задания). Порылся в инете нашел пару обработок, одна идеально показывает местоположение по введённым координатам. встроил обработку, всё красиво отрабатывает, но теперь мобилка не обновляется. При проверке синтаксис мобильной платформы ругается на пату несовместимых типов. Из-за этого не обновляется ?

    • L0z4

      зачем вам это? В задании не нужно реализовывать показ карты на стационарнике. А на мобильной платформе не нужны никакие обработки — достаточно вызвать один метод, который описан в методичке и был показан в видео.
      Удивлен что в обработке для показа карт было всего «пара» несовместимых типов.

    • Escander

      Зачем всё это? Есть-же встроенные возможности мобильной платформы для этого!

      • Mortiferus

        а я согласен с gigapevt, сам думал о том, как вывести карту на ПК. а как же иначе? если вы записываете маршрут манагеров, то как потом будете контролировать? вот тут карта и нужна.
        ссылочку себе скопировал, пригодится по-любому.

  7. Vdeg

    Настроил элементы в планах обмена в БД на мобильном устройстве и на сервере (см. скриншоты). При попытке провести синхронизацию данных выдается ошибка «Неизвестный получатель». Как можно победить эту ошибку?

    dab6eaee77353ad7e5741437258b6167.PNG359daaed04baf8fa738bd7f6c7b602c0.PNGc4126ef349dde1f33d900496baed802a.PNG

    • L0z4

      мобильный клиент прописывает «СВ»?
      может, эффект коварства буквы «С» на клавиатуре?

      • Vdeg

        Поменял коды на ZZ (база сервера), Z1 (база на мобильном устройстве) — та же проблема. Может, где-то что-то закэшировалось? Как бы почистить этот кэш ?

        • L0z4

          главное что в коде на моб.клиенте вы пишете название узла так же как и в конфигурации ZZ
          Кэш.. ну можно просто снести базу на андройде. Или еще раз обновить с сервера.

      • MarinaG

        Проблема решилась очисткой кэшированных данных на телефоне. Теперь как только перестает загружаться конфа или еще какие-нибудь глюки, сразу чищу кэш и работаю дальше.

    • mxs089

      попробуйте создать форму для плана обмена и добавить поля принятого и отправленного сообщения, в режиме предприятия обнулить их (на клиенте и сервере)

    • Vdeg

      С этой ошибкой разобрался. В коде был явно прописан код центральной базы. Я исправил его на свой код «ZZ» — ошибка исчезла.

  8. Gendalf

    Отчитался во второй части
    (из финального задания ссылка почему-то сюда ведет)

  9. Vdeg

    Сделал измерение СсылкаНаОбъект в регистре сведений “Прикрепленные данные” ведущим. Почему у меня на мобильном устройстве в конкретном документе Поступления не появляется кнопка “Перейти” ?

    • Mortiferus

      это еще не доработано 1С, как я понял. но я туда попадаю из документа по правой кнопке — открывается новое окно с ссылкой на регистр по документу. правда, при открытии этой формы регистра, открываются все записи, а не только подчиненные документу. видимо, надо ждать доработок.

  10. Булимов Олег

    Не могу опубликовать на Веб сервере, выскакивает ошибка о невозможности записи файла(снимок экрана прилагаю) — что делать, я уже и апач переустановил, но все зря… помогите.

    a679bb9f7bfd492178085e7d72e52a9f.JPG

    • Escander

      запустите 1С из под админа (правой кнопкой на ярлыке на рабочем столе щёлкните и из выпавшего контекстного меню выберите «запуск от имени администратора») и вот тогда попробуйте повторно опубликовать

    • Игорь Сапрыгин

      Запустите 1С от имени администратора

  11. Illuha

    Почему не передаются координаты на сервер?
    Пришлось передавать не координаты а ДанныеМестоположения. Уже не сервере работает «ДанныеМестоположения.Координаты».

    • Escander

      на каждой странице обсуждения этого ДЗ про это пишут… ну не без багов платформа…

      • Mortiferus

        ё-моё… а я себе всю голову сломал… вижу же, что все правильно делаю. пришлось напрямую ШГВ перегонять!

  12. DmitriyVa

    Телефон HTC Desure Z, Гугол и 2ГИС работают, позиционируют точно.
    конфигурация “Контроль расходов” и моя и (mobile-apps-fm-module04-configuration)
    — на команду “Показать текущие координаты” выдает: “1С Предприятие Получение элемента по индексу для значения не определено”.
    — «Обновить местоположение gps» — Не удалось получить координаты.
    — регистр, координатами не заполняется.

    С чем может быть связанно? (в отладчик попасть не получается).

    • Escander

      с те что результат полученный по местоположению от геопровайдера = Неопределено, соответственно у вашей переменной в которую сохранили текущие координаты нет «субреквизитов» (широта, долгота, высота) ну и показывать нечего.

      • DmitriyVa

        То есть «Координаты» есть, а (широта, долгота, высота) у координат нет, правильно?
        Это зависит от прошивки телефона или внешние причины?

        • Игорь Сапрыгин

          Вы бы хоть код вашей команды приложили. Без кода приходится на кофейной гуще гадать :)
          Дайте код, сориентируемся)

          • DmitriyVa

            когда удалил из кода сноски на «Высота» (оставил широта и долгота) — регистр стал заполняться.

            P.S.
            Мой телефон шел с родной «двоечкой», прошивку на 4-ку я сам менял, по этому выше спрашивал — может в этом дело? И другая проблема (обмен с телефона с сервером) тоже?

    • Escander

      предлагаю анализировать данные по провайдерам и если по всем текущееМестоположение = Неопределено, то вводить вручную.

      • ak0710

        Я сохранил все в структуру значений , если неопределенно, ее нулями заполнил

  13. Shtyr

    Мда, похоже что единственный способ побороть глюки с хранением объектов ГеографическиеКоординаты и ДанныеМестоположения в хранилище значения для передачи на сервер — это делать сериализацию этих объектов перед помещением в хранилище, и затем десериализацию при извлечении из хранилища, хотя это и изврат…

    • olgavikt

      у меня получилось поместить координаты в хранилище без сериализации — я помещала в хранилище не весь объект «ДанныеМестоположения», а только ДанныеМестоположения.Координаты

  14. olgavikt

    При попытке на вирт.планшете открыть графический файл, сохранённый на телефоне, 1с вылетает и планшет пишет такую ошибку:

    057c78d160206da0c7ebd9fb4f99273c.png

    • Escander

      Имхо, это потому, что он ищет камеру и не может её подключить. На реальном устройстве всё нормально отрабатывает

      • olgavikt

        а зачем ему может понадобиться камера? я ведь уже имеющийся рисунок, снятый телефоном и через синхронизацию со стационарной платформой полученный эмулятором, посмотреть пытаюсь…

    • L0z4

      может быть и глюк платформы.. или эмулятора. А еще стоит посмотреть как вы сохраняете файл перед открытием.

      • olgavikt

        Сохраняю перед открытием так:

        &НаКлиенте
        Процедура ПоказатьОбъект(Команда)
            ПоказатьОбъектНаСервере();
            Путь = КаталогВременныхФайлов();
            Файл = Путь + Новый УникальныйИдентификатор()+ "." + Запись.Расширение;
            ПолучитьФайл(ЭтаФорма.Адрес, Файл, Ложь);
            ЗапуститьПриложение(Файл);
        КонецПроцедуры

        &НаСервере
        Процедура ПоказатьОбъектНаСервере()
            ЗаписьРег = РеквизитФормыВЗначение("Запись", Тип("РегистрСведенийМенеджерЗаписи.ПрикрепленныеДанные"));
            ЭтаФорма.Адрес = ПоместитьВоВременноеХранилище(ЗаписьРег.Данные.Получить(), УникальныйИдентификатор);
        КонецПроцедуры

        Адрес — просто доп.реквизит формы

    • ak0710

      ИмяФайла = ПолучитьИмяВременногоФайла(ТекДан.Расширение);
      ДвочиныеДанные.Записать(ИмяФайла);
      ЗапуститьПриложение(ИмяФайла);

      Я так сделал, телефон спросил выбрать приложение по умолчанию, поставил галерею все открывает

      • ike

        А двоичные данные из хранилища в записи вы как получали?

      • olgavikt

        да, телефон тоже так отреагировал. а эмулятор выдаёт ошибку

  15. brauer

    Доброе время суток! Подскажите, пожалуйста. Как выполнять отладку конфигурации, которая работает на мобильном приложении? Как проверять текущие состояния переменных и т.п.?

    • Escander

      ну в общем никак и средств нет кроме контрольного вывода на экран

  16. kuryaev_rail

    Здравствуйте!Подскажите пожалуйста про считывание штрих-кодов в каком модуле рассказывали?))

    • Игорь Сапрыгин

      Пока не рассказывали. Ожидаем в бонусном модуле :)

      • kuryaev_rail

        Спасибо за ответ))а то я думал что пропустил))

  17. viddik

    Кстати, по поводу бага моб. платформы, когда невозможно передать Координаты напрямую на сервер и невозможно поместить их в Хранилище на клиенте. Передача сработает, если «обернуть» Координаты в Структуру.

    ПараметрыЗаписи = Новый Структура("Владелец, Данные, Расширение, Координаты");
    ПараметрыЗаписи.Владелец = ПараметрКоманды;
    ПараметрыЗаписи.Данные = Результат.ПолучитьДвоичныеДанные();
    ПараметрыЗаписи.Расширение = Результат.РасширениеФайла;
    ПараметрыЗаписи.Координаты = ПолучитьМестоположение().Координаты;
       
    ЗаписатьДанныеВРегистр(ПараметрыЗаписи);

    ПолучитьМестоположение() возвращает тип ДанныеМестоположения.
    Версия моб. платформы у меня 8.3.4.21

    • viddik

      А хотя в этой версии и напрямую нормально передает Координаты на сервер. Поторопился, извиняйте…

      • Shtyr

        А не расскажите поподробнее, что была за ошибка? В смысле какой именно сервер Вы имели в виду? Я вот тоже намучался с этими координатами, в итоге не получилось сделать как хотелось. На мобильном клиенте в регистр помещаем: Новый ХранилищеЗначения(Координаты).
        После выгрузки через обмен на сервер оно не воспринимается как объект с типом ГеографическиеКоординаты, внутри хранилище явно что-то не корректное хранится с точки зрения 1С, т.к. получение данных из хранилища возвращает Неопределено.
        Кстати а если попытаться поместить в хранилище ДанныеМестоположения в которой еще помимо координат время скорость и т.д., то тогда вылетает на телефоне полностью платформа мобильная ) без вопросов )

  18. Rustik666

    Я запутался в названиях баз….
    обмен между клиентом и сервером — это обмен между мобильным клиентом и базой, в которой мы разрабатываем конфигурацию для мобильного приложения или это обмен между мобильным клиентом и центральной базой?….

    • Игорь Сапрыгин

      В названия баз и не нужно ориентироваться.
      Нужно понимать логику наших задач.
      Клиент — это сторона, которая обращается к веб сервису.
      Сервер — это сторона где реализован сам веб сервис.
      Это может быть одна конфигурация, в которой есть обе стороны и клиент и сервер — при этом базы все таки будут две иначе смысла обмена нет. Обе базы могут работать на ПК, но мы как раз Клиентскую часть выносим на мобильное устройство.
      Или это могут быть две конфигурации с разделенным функционалом.

      Надеюсь чего-то разложил :)
      Если просто по Вашим вариантам то это «обмен между мобильным клиентом и центральной базой»

  19. AnastD

    Мультимедия записала. Но столкнулась с проблемами: при возврате по стрелке назад, вываливаюсь в пусто окно, приходится закрывать приложение и открывать заново. При обмене появилась ошибка, файл приложен. Периодически пишет ошибку 1С и вываливается совсем.

    • Serdgio

      А в этом пустом окне справа внизу кнопочка меню — три вертикальные точки. Должно открываться главное меню приложения

        • AnastD

          И все таки: WS ссылка и подключение к мобильному приложению в файле, но ошибка с 127.0.0.1 остается :( Вроде все уже раз 10 опубликовано, веб-сервер в папку day3s, а моб. приложение в папку day3p. На компе все обменивается без проблем. На мобильном приложении все создается, но обменять не получается.

            • MR.DK

              Попробуйте указать URL в настройках WSDL ссылки тот же ip что и в настройках мобильного приложения.

            • AnastD

              Спасибо! С моим IP в WS ссылке все заработало

  20. dragEugen

    народ подскажите пытаюсь телефон подрубить чтобы выполнить 4е задание (до этого делал на эмуляторе) все работает, но телефон ругается на мой Ip, дескать No route to host. Как с этим бороться?

    • L0z4

      как подключаете телефон (через что), какой айпи вводите, есть ли на ПК фаерволы, брендмауэры и т.п.
      Ошибку выдает только 1С, или браузер на телефоне тоже?

      • dragEugen

        Ошибку выдаёт только 1с
        остальное работает

      • dragEugen

        Фаерволов нет, брандмауэр от винды, ip ввожу тот что вводил в эмуляторе типа 192.168 и прочее, взял из состояния локолки

        • L0z4

          т.е. открываете платформу на телефоне, вводите строку вида
          http://192.168.0.2/blabla/
          и выдает no route to host, а тут же открытый на телефоне браузер ошибки не дает?
          Может есть средства сетевой защиты на телефоне?

  21. IPast

    Подскажите, мне пока не понятно, как можно сделать проведение документа по регистрам с мобильной платформы?

    • Игорь Сапрыгин

      В обработке проведения написать код?

    • Serdgio

      Свойство Документа-объекта «Движения» и наборы записей регистров доступны в мобильном приложении (сервер). Должно все получится. В крайнем случае, как я понимаю — передача документа на сервер, там загрузка и проведение, а в обратном направлении — записи регистров.

  22. Soloviev

    Добрый вечер! Делаю 4 задание и при получении координат текущего местоположения у меня эмулятор зависает не выдавая ошибки. Не могу понять в чем дело. Зависает на функции ПолучитьКоординатыТекущегоМестоположения(). Картинку прилагаю. Не пойму в чем дело? Думал что что то в эмуляторе не то настроено. Подскажите пожалуйста!!!

    33ab5ce0aa93be564a0bf86e0392bdc8.jpg

    • Игорь Сапрыгин

      У вас таймаут указан только при обновлении координат gps. В остальных условиях таймаута нет, поставьте так же 10сек, попробуйте

      • Soloviev

        поставил таймаут, но счас он выленает на сообщение «Чо т не получилось». В общем в исключение попадает!

        • Игорь Сапрыгин

          Ну тут уже только экспериментировать — отключайте кусочки кода и ловите на чем вышибает. уберите показ координат и пару веток условия. Успешно отработает — открой часть кода и так далее.

        • Escander

          эмулятор и не получит координат… ну только если ему не «подпихнуть» их программой Fake GPS или Fake Location или ещё чем подобным.

        • MR.DK

          Исключение потому что Данные = Неопределено
          В эмуляторе сначала поставтье софтину fakeGPS, установите координаты и после этого будут координаты от провайдера passive

  23. dj_serega

    У меня в процессе фотосъемки непонятно что на экране (скрин дома =) ). Не смотря на это, фото получается нормальным.
    Это нюансы совместимости под 4.4.2?

    • DaNN

      Вы про эмулятор? у меня вообще разноцветные полозки. Это особенность реализации я так понимаю

    • Escander

      если эмулятор… у меня при проверке возможности выполнить фотографию 1С вываливалась! Так что у вас ещё вполне приемлемый результат

      • Игорь Сапрыгин

        А эмулятор может что-то сфотографировать? О_О Аж любопытно стало…

  24. tigreno

    Добрый день.

    Появление возможности работы с камерой открывает огромные возможности для работы телефонов на складе. Сканировать обычные штрихкода не получится а вот 2-х мерные (в частности QR) должно получится. Не известно ли Вам про разработки в этом направлении ??
    Может какие нибудь дополнительные компоненты можно использовать что бы передавать в 1с информацию из QR

    • DaNN

      Ждем бонуса, обещали что-то про штрихкоды

      • Игорь Сапрыгин

        Угу угу ждем с нетерпением! Это ж круть будет неимоверная :)

    • Escander

      в складе обычно нет хорошего освещения и соответственно никакого нормального фото без вспышки и автофокуса и ещё и средних (по нынешним временам) мегапикселей не получается! — Проверял! А телефон хорошей камерой и вспышкой это и цена и расход заряда батареи!!!
      Но! Есть-же HID-совместимые сканеры (через USB)! И очень приемлимые по цене!!! Ещё есть беспроводные, но по ним с мобилы нет никакого личного опыта вообще.

  25. Евгений Хавов

    Почему мобильное устройство не выдает мне провайдера «network»? Сеть есть (вай-фай), через телефон в интернет ходит — через роутер (вай-фай), а сообщение не выдает «network»…

    • Escander

      не все роутеры «публикуют» сведения о своих географических координатах.

      • Евгений Хавов

        вот попал, а у меня интернета нет на мобильнике… только дома через роутер…

  26. Андрей Черняк

    Фото, аудио или видео на ПК открываются с помощью ПолучитьФайл() по навигационной ссылке без проблем. На андроиде на планшете только сообщение «Файл не обнаружен ‘File.mp4′» (то же с jpg и 3gp). Может сталкивался кто? Как сделать чтобы и в мобильном клиенте открывал?

    • DaNN

      Сохраняете двоичные данные в файл и используете ЗапуститьПриложение(). В комментариях уже не раз было.

  27. one more

    Здравствуйте

    Когда нажимаю на кнопку, чтобы обновить конфигурацию на телефоне — телефон выдает ошибку «В процессе обновления информационной базы произошла критическая ошибка». Что это может быть ?

    • one more

      Вопрос, снят. Добавил новую базу на телефоне, всосал в неё конфигурацию — всё заработало…

  28. Konstantin2013

    Добрый день!
    При попытке синхронизации с мобильного устройства выдается ошибка, если же сделать синхронизацию на компьютере, то все проходит нормально.

    9a7c01280d89c2fb087626baf1645b35.png

    • Мальгин Юрий

      Не назначены узлы обмена на мобильном устройстве. Необходимо в узлах установить узлы — предопределенный — узел устройства и добавить узел — сервер

  29. Jona

    Добрый день, а к отчету нужно прикладывать выгрузки баз?

  30. soulseller76

    Всем привет. У меня вместо мобильного устройства — BlueStacks. При нажатии на кнопку «Фото» или «Видео», или «Аудио» приложение 1С в БлюСтике просто закрывается. Я его понимаю — ну, нет там камеры или микрофона. Но это нормальное поведение или нет?

    • Serdgio

      Странно, VMWare картинку и звук записывает.

      • soulseller76

        Моя ошибка. Вылетает только при попытке сделать фото. Звук записывает. А при попытке сделать видео, сообщает «Значение не является значением объектного типа (ПолучитьДвоичныеДанные)». Чтобы это значило?

        226555a6b07e15f065f2df1eb3d4a227.jpg

        • Поддержка курса по EDT

          Это глюк платформы. Т.е. 1С считает что она таки может записать видео,но по факту — нет. Такое бывает.Иногда в момент записи — в крит вылетает

  31. starodubceva.at@npfsr.ru

    Здравствуйте!
    Я второй день не могу скачать видео 4 дня, токен активирован, avi Downloadmaster докачивает до 48%, дальше ссылка не найдена, mp4 до 70% и тоже самое.

    • Денис Глазырин

      У меня всё скачалось и открылось без проблем. Наберитесь терпения :)

  32. draspopov

    Вот такую ошибку выдает при попытке обмена между мобильным приложением и сервером. Причем на компьютере между сервером и клиентом обмен проходит. В чем может быть проблема?

    e8c56cda689d002c5d16f53c07d139cb.png

    • Serdgio

      1. Пространства имен — латиницей?
      2. В обмене есть какие-то данные? Кажется, у меня такое было, когда ничего не передавалось.
      3. Перегрузка Appache.

      • draspopov

        Пространство Имен — DataTrasfer.
        Appache перегружал многократно.
        Заново опубликовал мобильное приложение с другим именем и каталогом. Пока ничего не помогло.

        • draspopov

          Спасибо друзья. В самом деле, удаление М1 и запись его вновь помогла.

    • Денис Глазырин

      У меня подобное было при первом обмене с мобильного клиента, при условии — что на нём не было данных. В моём случае почему-то не закрывался тег Body (нормально не закрывался). После добавления какого-либо объекта в мобильной базе ПЕРЕД выполнением синхронизации — всё проходило успешно.

      • draspopov

        К сожалению, добавление в мобильном приложение элемента справочника, документа и записи регистра не помогло. По прежнему ошибка.

    • Андрей Черняк

      Была такая же ошибка в третьем задании. Ошибка ушла, когда удалил и создал заново узел обмена М2 в базе сервера.

      • draspopov

        Спасибо Андрей. В самом деле, удаление М1(в моем случае) и запись его вновь помогла.

    • Мальгин Юрий

      Такая же ошибка — когда идет рассинхранизация сообщений — надо на узлах сбросить счетчик сообщений.

  33. Serdgio

    Правильно ли я понимаю — на эмуляторе получение реальных координат невозможно? GPS — понятно. Его нет. Но почему не работает network? Браузер же работает! И с passive тоже не ясно.

    • Игорь Сапрыгин

      Да ну их эти эмуляторы )) Это ж временная мера. не для эмуляторов пишем :)
      Это так же как разбираться в тонкостях ошибок учебной версии платформы 1С. Смысла мало…

      • Serdgio

        Жаль. Нет реального устройства — нет результата. И Fake Gps не могу поставить. Как же выполнить ДЗ и показать результат?

        • Игорь Сапрыгин

          Я верю что здесь все адекватные и не жестят :)
          Поэтому отпишите все как есть. Прикрепите скриншоты того, что можете — покажите что вы точно пытались, опишите объективную причину. Поди поймут и простят =)

          • Игорь Сапрыгин

            На странице модуля 4 даже написано:
            При этом мы не собираемся “жестить”.
            Даже если задание НЕ выполнено, но есть отчет о том, что Вы пробовали сделать и как – такой отчет тоже будет принят.

            Так что все точно будет ОК :) Тема «сырая» и все это понимают.

        • DaNN

          У меня была та же проблема. Опишите причину, напишите какие ошибки и вас пропустят.

    • Escander

      Passive — подхватывает, те координаты, что перед ним другая программа получила. NetWork — от вай-фай точек доступа данные подхватывает (если они их предоставляют)… если на стационарнике на котором стоит эмулятор включен вай-фай или ви-макс приёмники — может и подхватит

  34. zse63

    Очень гложет вопрос.
    Существуют ли штатные механизмы выгрузки информационной базы с мобильного устройства (аналог файла с расширением dt) или же для сохранения данных надо использовать обмен с пробежуточной информационной базой?

    • Денис Глазырин

      Штатных механизмов нет, поэтому — верно, придётся пользоваться обменом.

    • Escander

      нет и видимо не будет на текущей элементарно базе… проще всё необходимое выкачивать на стационарный компьютер/сервер

  35. zse63

    1. На клиенте и сервере создаем периодический регистр сведений
    ПрикрепленныеДанные с измерением Ссылка.Документы.РеализацияТоваровИУслуг и измерениями
    Данные (ХранилищеЗначений), Координаты(ХранилищеЗначений), Расширение.
    2. Создаем формуЗаписи этого регистра
    3. Создаем дополнительныйреквизит ФОТО — тип строка длиной 0, вытаскиваем ее на панель
    и указываем вид -ПолеКартинки
    4. Создаем команды — Открыть и ПоказатьНаКарте
    5. Создаем общуюКоманду — СоздатьВложение — группа КоманднаяПанельФормы Важное, Тип ПараметраКоманды —
    ДокументСсылка.ПоступлениеТоваровИУслуг. Назначим этой команде пиктограмму(картинку)
    6. В модуле команды разместим процедуры ОбработкаКоманды, ЗаписатьДанныеВРегистр и процедуры,
    относящиеся к геопозиционированию (из методического пособия занятия 4)

    Настраиваем обмен между мобильным приложением и промежуточной базой. Для этого — На клиенте
    в свойстве конфигурации указываем назначение использования (Персональный компьютер и
    мобильное устройство) — добавляем обмен данными регистра сведений — материалы 3 дня.

  36. Мальгин Юрий

    Еще вопросик. Создал кнопку по открытию медиаконтента. Фото вывожу в виде картинки. а вот как воспроизвести видео и аудио, не могу никак понять — временный файл из хранилища я получил, а вот что дальше делать??? :(

    • Spiller74

      Я делаю через ЗапуститьПриложение(<>) т.е. полученные данные нужно сохранить на устройстве в файл

      • Escander

        в каталог временных файлов и потом не забыть удалить за собой

  37. A.S.Roschin

    Добрый день.

    А не мог бы кто-нибудь скинуть apk-файл программы fakegps, т.к. нет возможности из эмулятора выходить в Интернет?

    Спасибо.

    • Escander

      Так вроде сразу ставится без предварительного сохранения.

      • A.S.Roschin

        Есть способы качать с google market’а apk-файлы, но для всех способов необходим Android ID, который на эмуляторе я получить не могу.

        • Денис Глазырин

          Зарегистрируйте «левую» почту на google.com
          Это не долго :)

          • A.S.Roschin

            Уже регистрировал.
            Но только что это дает, если нет устройства, а в эмуляторе нет подключения к Интернет?

            • Escander

              ну если вы сами знаете как скачать apk пакет — вы его себе быстрее скачаете и зальёте… но если эмулятор никак и интернетом не дружит — я-б начал писать на реальном устройстве.

  38. miheyxai

    Добрый день!
    Метод ПоказатьНаКарте() у меня не отрабатывает, если вызывать его модуля формы записи регистра. Из команды, отрабатывает. Это нормально? У всех такое? Чтоб исключить хранилище значения, я написал такой код, и уменя ничего не открылось по нажатию на кнопку:
    &НаКлиенте
    ГК = Новый ГеографическиеКоординаты(30, 60, 3.3);
    ПоказатьНаКарте(ГК);

  39. Rustik666

    При загрузке конфигурации на смартфон, ошибка
    «Не правильный формат конфигурации»
    как это лечится?….

      • draspopov

        у меня тоже в одном из вариантов конфигурации была такая проблема. До конца не понял в чем дело. Расскажите,пожалуйста, если разобрались.

        • Escander

          90% что вместо публикации мобильного приложения была сделана обычная публикация приложения

  40. Chip

    Добрый день! Подскажите, а то замучился уже экспериментировать:

    Делаю запись прикреплений:
    Данные = Результат.ПолучитьДвоичныеДанные();
    РасширениеФайла = Результат.РасширениеФайла;
    Координаты = СредстваГеопозиционирования.ПолучитьПоследнееМестоположение(«passive»).Координаты;
    ЗаписатьДанныеВРегистр(РасширениеФайла, Данные, Координаты, ПараметрКоманды);

    Соответственно пишу в ресурсы:
    НовРег.Данные = Новый ХранилищеЗначения(Данные); НовРег.Координаты = Новый ХранилищеЗначения(Координаты);

    При создании формы записи регистра соответственно читаю эти значения:
    РегистрСведенийМенеджерЗаписи = РеквизитФормыВЗначение(«Запись»); Картинка = ПоместитьВоВременноеХранилище(РегистрСведенийМенеджерЗаписи.Данные.Получить(), УникальныйИдентификатор);
    Координаты = РегистрСведенийМенеджерЗаписи.Координаты.Получить();
    Широта = Координаты.Широта;
    Долгота = Координаты.Долгота;

    На мобильном клиенте все отлично открывается и картинка и координаты и показать на карте работает.
    Делаю обмен на сервер и мне РегистрСведенийМенеджерЗаписи.Координаты.Получить() — возвращает Неопределено, при этом картинка без координат отлично работает, а координаты не передаются?!
    Типы ресурсов перепроверил 10 раз — везде ХранилищеЗначений
    Обмен проходит без ошибок
    Создавал новые записи, правил текущие, но координаты упорно на сервере из хранилища не открываются
    (Телефон Samsung Galaxy Note 2)

    • dubashov

      Обошел эту проблему добавив в регистр дополнительно Широту и Долготу. А так, у меня тоже самое — не передаются координаты на сервер. Все остальное передается. Телефон Samsung Galaxy S2

      • Chip

        Широту и Долготу я тоже добавил отдельно, но так как-то не красиво.
        Комментарии выше читал — че-то не заметил я варианта решения
        видел только что в отдельную переменную координаты присвоить, но мне это не помогло.

    • DaNN

      Посмотрите комментарии раньше, там несколько вариантов решения мелькало

    • Shtyr

      У меня была аналогичная проблема, промучался несколько часов пока не смирился и не решил что это все-таки глюк 1с… Я там писал наверху как обошел — не через отдельные реквизиты а через упаковку Структуры с широтой и долготой в хранилище.
      В общем похоже что там суть глюка в следующем — если на стационарном компе вычислить что-то типа ЗначениеВСтрокуВнутр(Новый ГеографическиеКоординаты(1,3)) то получим вот это:
      {«#»,cb28ae7c-538b-48fb-ae6e-e5a8f6c2fe1e,
      {1,3,0}
      }

      На мобильной же платформе если извратиться через хранилище без сжатия и потом через xml-файл обмена, то там плюс минус то же самое, только вот идентификатор типа совсем другой. Видимо у них разные внутренние идентификаторы типов в мобильной и стационарной платформе, вот оно и глючит. А попытка поместить в хранилище объект ДанныеМестоположения вообще приводит к вылетанию платформы мобильной, хотя как раз таки про нее написано что она сериализуется, доступна везде и т.д…

  41. Мальгин Юрий

    Добрый день. Не подскажите — не могу получить координат (код из методички) работаю на виртуальной машине. Вставил сообщение «нет координат», если метод «ПолучитьПоследнееМестоположение» возвращает неопределено.

    d8d9d992fd208dbff2f45dcfae28c45f.PNG7bbdeb6789f7122d371359042e8edf50.PNG

      • Мальгин Юрий

        Спасибо с Fake location появилось … :)

          • Escander

            если у неё есть выход в мир — иногда подхватывает network

            • L0z4

              а за счет чего, я понять не могу? По IP вычисляет :) ?
              network должен принимать координаты от ближайшей радио-вышки с которой установлено соединение через радио-модуль, как я понимаю.

            • Escander

              или публичного вайфая тоже вроде может подхватить

        • Мальгин Юрий

          Только он меня теперь постоянно отправляет в Африку — и карта — при попытки указать в этой программе фиктивное положение — черная … Может я что то не доделал?

          • L0z4

            или глюк виртуалки, или телефону не дан непосредственный доступ в интернет.

            • Мальгин Юрий

              Я на вертуалке, телефона с андройдом нет к сожалению :(

            • L0z4

              извиняюсь, я имел ввиду «виртуальному телефону»

          • Escander

            программы разные… работаю по разному… fake gps насколько вижу пользуется гугловскими картами, поэтому если карты гугл-мап видны там тоже видна карта (там двигаешь не метку а саму карту сдвигаешь, а метка неподвижна). У вас какая программа? А может у вас масштаб выбран крупный (например 1 см карты = 1км реала)? — тогда нужно изменить масштаб

  42. sserejkin

    Вопрос: (может у кого уже было) при попытке добавить фото — мобильное приложение закрывается с ошибкой. ??

    • Денис Глазырин

      Это происходит ДО того, как Вы записываете данные в регистр? При этом — координаты Вы уже передаёте на сервер?

      • sserejkin

        Нет, это происходит на моменте выполнения метода «СделатьФотоснимок» до вычисления даже не доходит. При чем одинаковое поведение как в Примерной, ДЗ и базе разработки( что создается по примеру и подобию Видео файла).
        А вот звук и видео отрабатывают превосходно.

          • Escander

            Кстати, тренер ведь рекомендовал при выявлении баг писать в 1С, если писем по каким-то моделям будет не 1-2 а поболее — обратят особое внимание

        • Денис Глазырин

          Значит это «особенность» именно Вашего устройства, к сожалению. Решения на данный момент нет.

          • sserejkin

            Очень плохо. т.к. работа со штрихкодами связана именно с фотографией :(

    • L0z4

      минимум у двух владельцев galaxy s4 такое здесь мелькало.

    • Escander

      у меня 1С вылетала из эмулятора(VmWare) при попытке проверить доступность возможности снять видео или сделать фото, хотя звук с микрофона веб-камеры писала!
      Возможно особенность вашего аппарата. Исключительно для статистики, а что за аппарат?

      • Escander

        Про аппарат вопрос снят, Lenova-770, не сразу увидел

  43. starodubceva.at@npfsr.ru

    Здравствуйте, у меня вопрос: когда мы в клиентской конфигурации в модуле ставим директивы НаСервере этот блок где физически будет исполняться? Я считала что все будет исполняться на мобильном устройстве и там нет сервера.

    • Игорь Сапрыгин

      Все будет исполнятся на мобильном устройстве, но это не избавляет вас от необходимости их использовать. По прежнему методы разделены на доступность на клиенте или на сервере.

    • Денис Глазырин

      Выполняться будет «&НаСервере» мобильного устройства :)
      В смысле — не на ПК, а на самом устройстве. Там серверная часть есть.

    • Escander

      На мобильном устройстве работает облегчённая(по функционалу) файловая база. И как и при работе файловой базы производится эмуляция сервера. Зачем? — Что-бы научиться писать код один раз а не переучиваться под каждый новый диалект платформы (с учётов выхода новых версий задача «уметь писать подовсё на 1С» будет трудоёмкая).

  44. Vdeg

    Коллеги, помогите победить ошибку «Неправильный формат конфигурации» сразу после попытки выгрузить Конфигурацию клиента в мобильное устройство (на виртуальной машине). При этом не в мобильном устройстве, через веб-браузер, всё запускается и работает.

    2853f0b5656728f159bc939ef35de81c.PNG

    • Виталий Москвичёв

      Было такое дело… надо опубликовать не конфигурацию — Администрирование — публикация на сервере (как мы делали с вебсервисами), а конф. для мобильного приложения Конфигурация — Мобильное приложение — публиковать

      • Vdeg

        Публиковал для мобильного приложения… не помогало. Где-то в кеше сидело то, что мешало добавить базу в список. Помогло только в новый каталог выгрузить конфигурацию для мобильного приложения, fm5 вместо fm4.

        2853f0b5656728f159bc939ef35de81c.PNG

        • Vdeg

          Сделал измерение СсылкаНаОбъект в регистре сведений «Прикрепленные данные» ведущим. Почему у меня на мобильном устройстве в конкретном документе Поступления не появляется кнопка «Перейти» ?

  45. SantaMarina

    Доброе утро! Вот такая ошибка:
    {ОбщаяКоманда.СоздатьВложение.МодульКоманды(44,11)}: Процедура или функция с указанным именем уже определена (ЗаписатьДанныеВРегистр)
    Процедура <>ЗаписатьДанныеВРегистр(РасширениеФайла,Данные,ПараметрКоманды) (Проверка: Тонкий клиент)
    {ОбщаяКоманда.СоздатьВложение.МодульКоманды(49,24)}: Тип не определен (ХранилищеЗначения)
    НовРег.Данные = Новый <>ХранилищеЗначения(Данные); (Проверка: Тонкий клиент)
    Вот такие 2 ошибки сразу выдает. По первой ошибке — в тексте процедура одна. Если запускать поиском, то выдает первую ссылку — описание процедуры, вторую — её вызов. И всё.

    • Талов Александр

      хранилище значения необходимо содавать в процедуре исполняемой в контексте сервера. По первой ошибке не понятно где у вас процедуры размещены. опишите подробнее

      • SantaMarina

        Спасибо, ваш ответ мне помог! У меня было так:
        #Если МобильноеПриложениеКлиент Тогда
        Процедура …

        КонецПроцедуры
        #КонецЕсли

        я поменяла местами так:

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

        #КонецЕсли
        КонецПроцедуры

        и ошибка пропала!

  46. alextk

    Вот есть такая проблема, при добавлении в регистр записи с мультимедиа контентом выдает ошибку.
    Причем запись в регистр добавляется.

    Код

    Данные = Результат.ПолучитьДвоичныеДанные();
    РасширениеФайла = Результат.РасширениеФайла;
    ТекКоординаты=ПолучитьТекущиеКоординаты();

    ЗаписатьДанныеВРегистр(РасширениеФайла,Данные,ПараметрКоманды, ТекКоординаты[«Координаты»]);
    Сообщить(«Данные записаны»); //Сюда не доходит, но запись добавляется.

    Процедура ЗаписатьДанныеВРегистр(РасширениеФайла,Данные,ПараметрКоманды, ТекКоординаты)
    НовРег = РегистрыСведений.ПрикрепленныеДанные.СоздатьМенеджерЗаписи();
    НовРег.Период = ТекущаяДата();
    НовРег.СсылкаНаОбъект = ПараметрКоманды;
    НовРег.Расширение = РасширениеФайла;
    НовРег.Данные = Новый ХранилищеЗначения(Данные);
    НовРег.Координаты = Новый ХранилищеЗначения(ТекКоординаты);
    НовРег.Записать(Ложь);
    КонецПроцедуры

    9b0718875a2a31f6bd899117da456fc6.png

    • Денис Глазырин

      Тут советовали: «ТекКоординаты[«Координаты»]» при передаче параметров в процедуру — предварительно поместить в переменную, которую в последующем и передавать на сервер (кстати, в синтакс-помощнике нет указаний на то, что возможна передача между клиентом и сервером).

    • stig

      Это координаты не пишутся.
      Попробуйте на клиенте создавать структуру и туда писать Широту, Долготу и Высоту, а на сервере эту структуру класть в ХранилищеЗначений.

    • Escander

      возможно про координаты в задании вообще была описка, т.к. будучи запрятанными глубоко в хранилище они не будут на стационарной базе доступны например в запросе и по ними никакой аналитики не сформировать без обратного доставания из хранилища каждый раз

      • Денис Глазырин

        Нет, описки в задании не было.
        Было бы можно раскладывать данные местоположения на Дату/Широту/Долготу/Высоту, передавать, например, в структуре, или даже по-отдельности. Но при таком решении — для метода ПоказатьНаКарте() — Вы их потом обратно собрать не сможете.

        • Игорь Сапрыгин

          Разве нет конструктора географических координат?

          • Денис Глазырин

            Да Игорь, Вы правы: Новый ГеографическиеКоординаты(, , ).
            Я перепутал с Данными местоположения -там нет конструктора.
            Но для вывода на карте нужны координаты, поэтому предложенный вариант — вполне возможен.

  47. syuzyov

    Прошу прощения за глупый вопрос: отправил отчет по заданию, но своего отчета я не вижу. Это так и надо, и он проявится после проверки, или он не отправился? Раньше вроде свой комментарий было видно сразу…

    • syuzyov

      Вопрос снят — ответ на странице по опросу

  48. reborn

    Вопрос по геопозиционированию, есть функция ПодключитьОбработчикИзмененияМестоположения, в нем в одном из параметров указывается как часто порождать данное событие, в синтаксисе указано что это в секундах. Но, какое бы число не выставляется, порождается максимально быстро, т.е раз в секунду, две. Было подозрение что идет отсчет от функции ПолучитьПоследнееМестоположение, но это тоже ни как не повлияло на ситуацию. пришлось делать дополнительные тайминги. Возможно баг телефона (Galaxy SII).

    • Игорь Сапрыгин

      Тестировал на своем андроиде и iOS — корректно отрабатывало

    • Escander

      >Возможно баг телефона (Galaxy SII).
      Возможно, тренер упоминал про баги на некоторых моделях проявляющиеся и рекомендовал отписываться в фирму 1С.

  49. Stan

    А есть ли возможность связать несколько точек на карте линиями? (например, чтобы продемонстрировать маршрут движения)

    • Денис Глазырин

      В текущей реализации платформы — такой возможности нет.

    • L0z4

      наверное, можно, но не через апи, а тем же образом как это делается на полной версии (поле хтмл документа, ява и т.п. страсти)

    • Escander

      только если самому реализовать, штатных средств у 1С для этого нет

  50. burlaka1c

    Подскажите, как в мобилку загрузить/обновить конфигурацию клиент ?
    1cem-arm.apk загрузил на мобилку, а дальше если загружать по http//192.168.1.5/fm/ то это ведь моя локальная сеть а не интернет ?

    • Поддержка курса по EDT

      Ну да, так и надо. Если через инет — пишите внешний IP, но если есть роутер, то не забудьте переназначить порты

Комментарии закрыты