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

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

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

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

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

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

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

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

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

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

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

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

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

Вопросы

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

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

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

  1. elintor

    Подскажите по ошибке (во вложении) – как ее можно победить и из-за чего она появилась, т.к. обмен работал и как говорил после очередного обновления появилась эта ошибка.
    Так же почему то 1с вносит “двойные” записи в httpd.conf в Apache, то есть периодично секции типа:
    # 1c publication
    Alias “/MobPrMA” “C:/www/MobPrMA/”
    AllowOverride All
    Options None
    Order allow,deny
    Allow from all
    DirectoryIndex 1cema.xml
    И еще вопрос – как разнести Apache и 1с по разным машинам, “игры” с webinst.exe к желаемому результату не привели.

    bb0aa33311ff66e0b913a832515fb540.jpg

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

      Ответили в другой ветке уже

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

      Попробуйте нажать клавишу громкости вниз и кнопку включения.
      Если не поможет — проще, при наличии root-прав установить соответствующий софт.

  2. Mishell

    Как на планшете просмотреть окно сообщений после закрытия, т.е. вывод в окно сообщений, потом закрыть, снова вывод открывается окно с текущим сообщением и предыдущим. А как это окно активировать после закрытия, что бы просмотреть выведенные сообщения?

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

      Я не нашел как :) По ходу нельзя, ну можно сделать кнопку на форме — выводить пустое сообщение.

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

      До вывода следующего сообщения — не получится.

  3. nm_nike

    Не получается войти в отладку на мобильном устройстве, даже приложение не перезапускается на реальном устройстве из конфигуратора. Хотя на виртуальном андроиде запускалось из конфигуратора. Галка «Перезапуск из конфигуратора стоит», в чем может быть проблема?

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

      а что вы вообще пытаетесь сделать?

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

      Отладка для сеанса запущенного на эмуляторе или мобильном устройстве пока не работает.

  4. Nata4ik

    Доброго времени суток всем!
    Подскажите пожалуйста,в чем у меня проблема.
    Выпадает ошибка на VMware «Получение элемента по индексу для значения неопределено» .Данные провайдера passive. Ошибка возникает при нажатии на кнопку «Получить текущие координаты». В отладчике не получается посмотреть- отладчик не заходит (уже несколько раз Апач перезапускала, не пойму почему не заходит отладка). По кнопке «Показать опции» показывает 3 провайдера. Геопозиционирование работает только на реальных устройствах, а на виртуальной машине не работает или у меня что-то не так? Спасибо за помощь.

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

      отладка не работает так :)

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

      Провайдеров показывает, но они «не рабочие». Никаких данных Вы с них получить не сможете. Единственной решение — через фейковые координаты. Дмитрий в видео показывал как это сделать.

    • Escander

      эта ошибка возникает если данных как таковых нет, т.е. получить координаты возвращает Неопределено. Установите программу Fake GPS, задайте сами координаты и по части геопровайдеров у вас появятся данные.

  5. Wolfy

    Добрый вечер.
    Возникла проблема с выводом положения на карте через ПоказатьНаКарте(Координаты). При первом вызове потребовал обновить сервисы гугл. После обновления при вызове на планшете получаю крутящийся круг и карты не открываются, хотя если вывести координаты через сообщить (« » + Координаты.Широта + « » + Координаты.Долгота) корректно выводятся реальные координаты.
    Планшет DNS M76r. Возможно проблема в кривой стоковой прошивке ?

    • Wolfy

      Вопрос снимается. Глюк планшета. Полный сброс через рекавери и установка только 1с и обновление сервисов гугла решили проблему — карта открывается, маркер отображается.

      • Lidiya_Sh

        аналогичная проблема и обновление сервисов гугла не помогло

  6. Lidiya_Sh

    Добрый вечер,
    у меня проблема с получением координат
    использую такой код
    Провайдеры = СредстваГеопозиционирования.ПолучитьПровайдеров();
    Для каждого Провайдер Из Провайдеры Цикл
    Сообщить(«Данные провайдера » + Провайдер.Имя);
    Обн=СредстваГеопозиционирования.ОбновитьМестоположение(Провайдер.Имя,30);
    Если Не Обн Тогда
    сообщить(«— Не обновляет»);
    КонецЕсли;

    Данные = СредстваГеопозиционирования.ПолучитьПоследнееМестоположение(Провайдер.Имя);
    Если ДанныеНеопределено Тогда
    сообщить(«— «+Данные.Дата);
    Иначе
    сообщить(«— Данных нет.»);
    КонецЕсли;
    КонецЦикла;

    В результате на планшете следующие сообщения
    Данные провайдера network
    — Не обновляет
    — Данных нет.
    Данные провайдера passive
    — Не обновляет
    — Данных нет.
    Данные провайдера gps
    — Не обновляет
    — Данных нет.

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

      Почитайте предыдущие комментарии. Проблема с координатами неоднократно обсуждалась — разные варианты были. Возможно какой-то из них Вам подойдет?

      • Lidiya_Sh

        установила fake gps на планшет, задала координаты, после этого заработало

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

          Отлично! Фейк — тоже решение :)

          • Lidiya_Sh

            Осталась одна проблема, никак не могу решить: метод ПоказатьНаКарте раньше просил обновление, я обновила сервис google play до версии 4.2.42, после этого стал открываться белый экран, в правом нижнем углу + и -, в левом нижнем углу надпись Google.
            Координаты точно передаются, я их вывожу в сообщении перед ПоказатьНаКарте:
            сообщить(«Прочитаны координаты: высота «+Коорд.Высота+», долгота «+Коорд.Долгота+», широта»+Коорд.Широта);
            ПоказатьНаКарте(Коорд);
            Прочитаны координаты: высота 65, долгота 138,9644, широта -28,597228

            Можно ли сдать 4-е задание в таком виде (то что карта у меня не открывается), все остальное сделано.

            • Lidiya_Sh

              Это был вопрос

              Можно ли сдать 4-е задание в таком виде (то что карта у меня не открывается)?

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

                Я думаюпропустят. Причина у вас объективная. Опишите все со скрином ошибки в отчете и все

    • Escander

      У меня такое было на эмуляторе, установите программу
      Fake GPS и сами выберите себе соординаты

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

        Ligia_Sh еще вчера отписалась что уже использовала fake gps и со всем разобралась ) Порой кажется, что «помощь» оставляют не читая всей цепочки =)

  7. Денис Глазырин

    На странице с отчётом по 4-му заданию, после добавления комментария — должно быть видно, что он на модерации?

    • Escander

      вроде нет… в крайнем случае если повторите думаю вас никто за это не лишит доступа с очередным материалам

  8. Максим

    Подсказка по открытию файлов:

    &НаКлиенте
    Процедура ПоказатьДанные(Команда)
    ПоказатьДанныеНаСервере();
    КонецПроцедуры

    &НаСервере
    Процедура ПоказатьДанныеНаСервере()
    Запись_ = РеквизитФормыВЗначение(«Запись»);
    ДвоичныеДанные = Запись_.Данные.Получить();
    ИмяФайла = КаталогВременныхФайлов()+»test.»+Запись_.Расширение;
    ДвоичныеДанные.Записать(ИмяФайла);
    ЗапуститьПриложение(ИмяФайла);
    КонецПроцедуры

    Аналогично для сервера и клиента, а также частично для координат.

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

      А зачем кому-то такие подсказки? Мне кажется все сами должны бы до этого дойти.

      • IcomDen

        Согласен, сделал аналогично, а затем увидел, теперь даже обидно

    • Mishell

      Если реквизит формы обозвать «Запись» то работать не будет

    • aleksnow

      Зачем велосипед то делать (ИмяФайла = КаталогВременныхФайлов()+”test.”+Запись_.Расширение;)

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

    • syuzyov

      К слову: для получения имени временного файла есть метод ПолучитьИмяВременногоФайла(Расширение). Прелесть в том, что если забыть удалить файл, то платформа это сделает сам при закрытии.

  9. myshko

    Когда делал задание по 4-му модулю столкнулся с проблемой:
    Если на сервере получить из регистра сведений хранилище значений, получить из него данные и эти данные передать на клиент — все хорошо. А если с сервера на клиент передать хранилище значений и на клиенте попробовать получить значение из хранилища, то в результате метод .Получить() вернет Неопределено. Согласно синтакс помошнику и хранилищем значений и сохраненным в нем значением (в моем случае — двоичные данные) можно обмениваться с сервером…

    Это «фича 1с :) » или такое поведение логически обосновано где-то в документации?

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

      все логично. тип мультимедиа не доступен на сервере

      • myshko

        Вы, помоему, не совсем поняли о чем я спрашивал.

        Я передавал не ДанныеМультимедиа , а ХранилищеЗначений, внутри которого были ДвоичныеДанные (перед отображением получаем на сервере сохраненные в регистре сведений данные и передаем их на клиент для отображения ). И ХранилищеЗначений и ДвоичныеДанные доступны и на клиенте и на сервере.

        • L0z4

          вот уже не помню почему, но видимо была такая же проблема на практике. ХЗ передается, но не доходит. Поэтому привык использовать временноеХранилище для передачи с сервера на клиент и обратно.

          • myshko

            Спасибо, по сравнению со всеми остальными это хоть относится к сути вопроса :)
            Значит, проблема, скорее всего, воспроизводится не только у меня, будем учитывать.

            Этот вопрос, конечно, не совсем к тематике курса относится, но хотелось бы услышать комментарий мастер-тренера по этому поводу, если это не сложно.

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

          Это конечно не ответ по существу вопроса, но для чего гонять данные туда-обратно, когда можно всё на стороне сервера выполнить?

          • myshko

            Где гоняются данные туда-сюда?

            Вопрос о переменной, которая содержит в себе значение типа ХранилищеЗначений, которая должна быть доступна и на сервере и на клиенте.

            Если на сервере сделать Возврат Переменная.Получить(); , то все хорошо. Если просто Возврат Переменная; и на клиенте » ПолученноеЗначениеССвервере.Получить() » — то на клиенте вместо данных получию Неопределено.

            • Alex_grem

              Конструктор Новый ХранилищеЗначений доступен только на мобильном сервере (см. СП)

            • myshko

              Alex, а при чем тут конструктор?

              Получить()
              Возвращаемое значение:
              Тип: Произвольный.
              Значение, содержащееся в хранилище.
              Описание:
              Получает из хранилища сохраненное в нем значение.
              Доступность:
              Сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).

  10. bsi

    на эмуляторе кто смог получить ч/з инет координаты?
    у меня глухо зависает.

    • Escander

      у меня обнаруживало всех 3 провайдеров геопозиционировнаия, но по всем ПолучитьПоследнееМестоположение = Неопределено. После установки программы Fake GPS по провайдерам GPS и Passive получил именно то, что задал в ней, а вот по провайдеру NetWork как и заявлено ничего не изменилось.

  11. felix170

    а где можно найти обязательное задание №4

  12. mrscylla

    Samsung Galaxy s4 — перезагружается при попытке сделать фото. Видео и звук работают нормально.

    • Escander

      Это типа нормально на текущем этапе для мобильной платформы… ждём версию 8.3.5

      • ZaytsevStepan

        Это очень не нормально, топовый телефон, и такой баг. У меня так же

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

          Нужно писать разработчикам мобильной платформы. Без обратной связи все двигается обычно очень медленно :(

  13. damnedskiff

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

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

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

      • damnedskiff

        Я просто уточнить, что не нужны танцы с бубном, по поводу связи с API поставщиков карт.

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

          Не не не — ничего такого :)
          Хватит с нас и других танцев с другими бубнами =))

  14. Екатерина

    Добрый день! При прохождении теории четвертого модуля
    на команде постпроцессора
    #Если НЕ МобильноеПриложениеКлиент Тогда
    при проверке модуля общей команды СоздатьВложение вылетает ошибка. Что не так?

    8c1914e67ab8479dd197470806c66909.JPG

    • DaNN

      у вас похоже где-то лишняя команда препроцессору

      • Екатерина

        Не в этом деле. Первая ошибка идет
        переменная не определена МобильноеПриложениеКлиент
        а вот почему такое не пойму

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

      Точку с запятой в Конец если удалите

  15. Stan

    Еще вопрос, а как открывать мультимедиа с помощью 1С?

  16. Stan

    Подскажите пожалуйста. Создаю вложение, получаю координаты, а когда пытаюсь записать данные в регистр, мобильное приложение просто закрывается не выдавая никаких ошибок. Записи в регистр не происходит. В какую сторону думать?

    • L0z4

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

    • Stan

      Все получилось. Спасибо.

      Данные = СредстваГеопозиционирования.ПолучитьПоследнееМестоположение(Провайдер.Имя);

      Если в регистр пытаться записать так:
      «Новый ХранилищеЗначения(Данные);»
      то приложение вылетало, а если «Новый ХранилищеЗначения(Данные.Координаты);» — все нормально

    • L0z4

      почему все пишут геокоординаты в х.з. для хранения?
      Ведь 3 числа хранить куда проще, да и меньше проблем с выводом. А х.з., оно на то и х.з. что хз что в этом х.з.

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

        В условии задания же написано — ХЗ! :)
        Можно конечно в ХЗ и структуру с 3мя координатами засунуть, но тогда на кой ХЗ О_о

        • L0z4

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

  17. ci4e

    Честно говоря, так и не понял, для чего при публикации используется веб-службы. Все время формируются ссылки на 127.0.0.1. А если мне надо отправлять это все в локалку (192.168.х.х.) или вообще в облако (х.х.х.х)?
    Материалы 1-го дня сумел опубликовать, не используя apach (в предложенном виде). Со 2-м днем — проблемы. Причем проблемы не в коде 1С, а именно во взаимоотношениях 1С и файловых систем на веб-ресурсах (как в локалке, так и облачных)…

    К сожалению, должен уехать на неделю… А очень хотелось пройти весь цикл занятий. Скажите, а можно ли будет потом, по прибытии, получить оставшиеся материалы (успел скачать теорию и задание 4-го модуля)?

    • L0z4

      Ссылки на 127.0.0.1 формировались для теста при разработке только в первый день. Дальнейшая работа, естественно, должна быть с реальным внутрисетевым айпи, или вообще белым внешним. Проблема с файловыми системами только одна — необходимость исходно настроить права доступа для 1С и апача.
      //Причем здесь облако?

    • L0z4

      а как вы опубликовали веб-сервисы без апатча? Или, просто заменили его на IIS?

  18. Nicfest

    А вот если комментарий пропал но доступ к решению преподавателя не появился, то это что значит?

  19. hjkl

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

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

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

    • Nicfest

      Так и есть если Вам стали доступны комментарии других участников и решение преподавателя значит Ваше домашнее задание считается засчитанным

    • DaNN

      да, значит вы прошли. Можете качать решение и сравнивать

  20. kartuzov

    Добрый день.
    Работая с теорией по 4-му модулю, не смог получить координаты gps (телефон HTC One V). Координаты других провайдеров получал, gps усиленно противиться, сообщает, что в его данных нет никаких свойств, в т.ч. даты, координат. Хотя использование GPS-позиционирования в телефоне включено, и когда открываешь карты или приложение Location, спутник работает (видно по иконке) и координаты показвыает…
    Это проблема моего телефона?
    На скринах показана ошибка, на втором видно, что координаты прекрасно выводятся, при обращении к gps вылетает ошибка.

    673fd602fa7e790de43b1e4c7521f3f2.png

  21. syuzyov

    У меня в эмуляторе почему-то в гуглокартах (и в яндекс-картах тоже) вместо карты черный экран. При поиске па адресу место находит, открывает описание, но… Может кто знает, как с этим бороться? Ил может это глюк с эмуляцией под hyper-v?

    0c704854eae2774d4f439b4a9f27d0bc.jpg

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

      А интернет там работает во внешку?

      • syuzyov

        Да, я на картинке специально показал, что найдена запись «Дом». Если в нее щелкнуть, даже откроется картинка

      • syuzyov

        Попробовал отрубить интернет — появился серый фон в сеточку, включил обратно — снова черный экран. В общем пока отложил и поставил 1с на живой телефон :)

  22. L0z4

    Вопрос теории:
    На сколько важно и вообще зачем нужно разделение процедур на клиентские и серверные на мобильной платформе? Она и там запускает 2 процесса вместо одного?

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

      Судя по тому что в СП везде идет разделение доступности для мобильного на клиент и сервер и т.п. Видимо как-то так.
      А тех. детали видимо только у разработчиков попытать можно…

    • DaNN

      Я думаю когда появятся запросы, часть кода будет на сервере выполняться, возвращая только данные

  23. srvrv

    Что ж Android выгружает 1с каждый раз при работе с картами, с мультимедиа?
    У всех так? Ничего не поделать с этим?

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

      Да нет, вроде все ок.
      В смысле при выозве СделатьФотоснимок у Вас закрывается 1С?

      • srvrv

        При просмотре картинки или видео открывается приложение Android, связанное с файлом. Его закрываешь, 1с по новой загружается, как первоначальный запуск.

        • L0z4

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

    • DaNN

      у меня такие проблемы на эмуляторе с картами. А так у большинства все ок.

      • Escander

        шаг №1 — проверить что есть выход в интернет.
        шаг №2 — проверить работоспособность гугло-карт на самом эмолируемом аппарате (если они работают — в 1С тоже не должно быть проблем, если не работают — админ мог блокировать часть портов)

  24. Олеся

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

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

      Помоему «Нажмите быстро раз 10+» на всех и работает — не? :)

    • IcomDen

      меню «Настройки» — > О телефоне — > Нажать 7 раз на пункт «Номер сборки»

    • Олеся

      да работает всё) просто помню, что были какие-то служебные коды в андроиде для расширенных настроек, уточняла можно ли как альтернативный вариант через код получить к ним доступ.
      пошукала, похоже попутала функции разработчика с входом в режим сервиса (*#*#197328640#*#*).

  25. ivanr

    Добрый вечер.

    В уроке приведён пример записи с камеры. Но при этом открывается какая-то непонятная камера, которой никогда не видел — без настроек, вспышки и прочее. Я понимаю, что это какая-то глубинно платформенное приложение. Вопрос: как можно использовать более цивилизованные камеры для создания лучших снимков?
    Заранее спасибо!

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

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

  26. nad_komarova

    Как сделать скриншот на мобильном устройстве?

    • L0z4

      вкл/выкл + громкость вниз
      или вкл/выкл + домой
      на разных по разному. Если ни того ни другого то искать софт.

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

      У самсунгов на системной панели еть кнопка в виде квадрата

  27. saddy

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

    • L0z4

      я в институте так же думал, но надо мной смеялись.

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

      Вы видимо купили курс за 2к? Если так, то лучше обратитесь на саппорт, Ваш случай — их дело.

    • DaNN

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

  28. Maxim_Goncharov

    Вроде бы сделал ДЗ №4, работает обмен с клиентом и сервером на компьютере регистром ПрикрепленныеФайлы (но без фотографии конечно),а вот фотография на мобильном устройстве в регистре есть но при обмене ошибка «Фатальная ошибка:Extra content at the end of the document». Что не так?

    • DaNN

      у меня всегда такую ошибку исправляло переименование латинскими символами.

    • DaNN

      Посмотрите еще все ли правильно с узлами обмена, коды заполнены? нужное количество узлов

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

      Проверьте все ли узлы обмена созданы

    • Maxim_Goncharov

      Удалил в центральной базе узел мобильного приложение и создал его ещё раз и помогло

  29. naditomilina

    Есть ли у кого проблемы с распаковкой архива с вебинаром? Два архиватора на все скаченные файлы говорят — поврежден архив :(

    • alex_15650

      Все хорошо, может файл так скачался криво?

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

      Да вроде все отлично распаковалось.

    • DaNN

      попробуйте воспользоваться каким-нибудь download master

  30. L0z4

    после месяца возни с yapi для получения и красивого вывода координат, это просто кайф — 1 час и все готово. На форме записи регистра допилил еще представление (получаю при открытии формы) через ПолучитьАдресПоМестоположению — при включенном интернете работает отлично, а вот при его отсутствии только тормозов добавляет. Как бы еще проверять наличие интернетов?
    И, вопрос, вывод кнопок (звук, видео, фото, отмена) и последующая проверка на возможность, это просто пример, или проверять каждую из возможностей устройства и выводить только допустимые кнопки это более «затратно»?
    Возник еще такой вопрос: использовал общую команду (Как и в методике), но вот чувство противление против этого не покидает. Мы же делаем команду непосредственно связанную с регистром сведений, и располагать ее хочется именно как команду регистра сведений (хоть какая-то инкапсуляция). НО, при попытки вызвать из формы документа или списка документов такую команду вываливается абсолютно тупая ошибка. Баг платформы, или моя мысль в корне не верна?

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

      Видимо все таки баг. На стационарке ведь успешно отрабатывает.

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

      Только вывод кнопок и проверка, элегантней решения я не нашел, но это не значит, что его нет.

      вы запутались :) «Собака махает хвостом, или хвост собакой?» Это норма программирования, т.е. тут однозначно не ответить. Что важнее? Регистр — это хранилище данных, вспомогательный объект. Вешать в него команду можно, но смысл? Мы видь работает то с документами, а их может быть очень много.

      Тут вообщем как посмотреть.

      Я вот помню спорил о том, что полный план обмена является частным случаем РБД. Так как у него меньше возможностей, чем у РБД :)

  31. alex_15650

    А каким образом воспроизводить звук или видео?

      • alex_15650

        Спасибо, получилось. Только предварительно пришлось записать во временный файл.

  32. Urgat

    При записи в регистр возникает ошибка
    текст процедуры был героически скопирован (с изменениями) с пдф файла

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

    1d3a65533a709e5ef71d4bcba0e2c05c.png

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

      офигенная ошибка =)
      Куда копать… куда светить… жесть…

      • Urgat

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

      • ivanr

        отлаживал Сообщить() прям на телефоне. Находил, где вываливается, а потом читал синтакс помощник :)

      • Urgat

        в общем по советам ivanr выяснилось что ошибка возникает в момент записи в регистр
        «НовРег.Записать(Ложь);»
        использование набора записей дало точно такой же результат.

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

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

          • Urgat

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

            данные передаются в процедуру как
            Данные = Результат.ПолучитьДвоичныеДанные();

    • alex_15650

      Может ситуация как у меня? Координаты пробовали в отдельную переменную сохранять а потом процедуре передавать?

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

      Включайте смекалку :) Решение на виду. это баг платформы, но можно красиво все решить.

      • Urgat

        вот как то не вижу прям красивого решения. отключаю добавление двоичных данных в регистр — работает, включаю не работает. с чем хоть баг связан? у знающего человека то все завсегда на виду ;)

      • Urgat

        Смотрю решение проблемы, если вы имеете в виду то, решение проблемы с координатами, то оно похоже на шаманство. складывается впечатление, что 1С как винда — новую версию надо ставить только после второго сервис пака :)
        и таки да с двоичными данными это помогло 0_0

  33. alex_15650

    МенЗаписи.Координаты = Новый ХранилищеЗначения(Коорд);

    Не записывает координаты в РС, пишет поле недоступно для записи. Чушь какая-то.

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

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

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

          Попробуйте мой бубен :)
          например код

          ЗаписатьДанныеВРегистр(Данные, ИнформацияМультимедиа, Местоположение.Координаты, Результат.РасширениеФайла, ПараметрКоманды);

          у меня не сработал, зато когда вынес предварительно в переменную координаты:

          ПослКоординаты = Местоположение.Координаты;
          ЗаписатьДанныеВРегистр(Данные, ИнформацияМультимедиа, ПослКоординаты, Результат.РасширениеФайла, ПараметрКоманды);

          то все успешно отработало. В чем соль — не понятно :)

          • alex_15650

            Здорово )) и правда не понятно почему так. Все сохраняет и мой дом на карте показывает ))

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

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

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

              Это баг платформы, и вот все делают ошибку — текущая дата — это не дата получения координат.
              Кто то догадается как запихнуть местоположение в хранилище?
              В ДЗ мы это рассмотрели :)А вы без дз еще подумайте.

  34. kdv170

    Не удается обновить координаты ни по GPS ни по Network
    Телефон HTC Android 4.1.1
    Навигация вроде работает
    Неувязочка какаято.

    • MrBoo

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

    • ivanr

      У меня не было геоданных пока не разрешил доступ к своему местоположению в телефоне.

      • drozdoff

        собственно два вопроса:
        1. можно ли программно включить GPS
        2. на соньке XL доступен только passive. даже после включения всех служб местоположений.

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

          1. Стандартными средствами платформы — нельзя.

          • drozdoff

            т.е. если агент выключит в настройках службы местоположений — то получить координаты никак не получится?

            • DaNN

              получатеся — нет. Только последние сохраненные координаты. А в чем проблема, наказывайте штрафами за такое:)

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

              Опять же, стандартными средствами, увы — да. Ждем развития платформы, или используем смекалку и дополнительные внешние по отношению к 1С механизмы, программы и т.п.

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

          Ну может быть а такое, а может у вас опция получения данных по GPS отключена.

          • drozdoff

            на самом деле все было включено. просто был включен еще и режим STAMINA (энергосбережение). в каментах у kdv170 прочитал про энергосбережение — выключил — все получилось.

  35. kdv170

    И еще при получении текущих координат
    МассивСвойств = Новый Массив;
    МассивСвойств.Добавить(«ВертикальнаяТочность»);
    МассивСвойств.Добавить(«ГоризонтальнаяТочность»);
    МассивСвойств.Добавить(«Дата»);
    МассивСвойств.Добавить(«Координаты»);
    МассивСвойств.Добавить(«Направление»);
    МассивСвойств.Добавить(«Скорость»);
    ОчиститьСообщения();
    Провайдеры = СредстваГеопозиционирования.ПолучитьПровайдеров();
    Для Каждого Провайдер Из Провайдеры Цикл
    Сообщить(«Данные провайдера : » + Провайдер.Имя) ;
    Данные = СредстваГеопозиционирования.ПолучитьПоследнееМестоположение(Провайдер.Имя);
    Для Каждого СтрокаДанных Из МассивСвойств Цикл
    // Попытка
    Сообщить(СтрокаДанных+»: » + Данные[СтрокаДанных]);
    // Исключение
    // КонецПопытки;
    КонецЦикла;
    КонецЦикла;

    Выдает «Получение значения по индексу для значения не определено»
    Не могу пока понять для какого провайдера

      • L0z4

        у меня тоже самое было.. Как я понял, из-за того что я ни разу не пользовался GPS и как только он пытается получить данные из него, то натыкается на пустоту.
        В команде получения данных по gps изменил с 10 секунда на 1000. вышел на балкон и через 108 секунд телефон установил контакт с этими внеземными цивилизациями.
        Соответственно и ошибка исчезла.

        • kdv170

          У меня начал по сети определять когда отключил мастера экономии батареии долбаного

        • kdv170

          У меня начал по сети определять когда отключил мастера экономии батареии

          • L0z4

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

  36. kdv170

    Что то неувязочка у меня
    &НаКлиенте
    Процедура ВключитьЗапись(Команда)
    Сообщить(«Включение»);
    ОП = Новый ОписаниеОповещения(«ОбработкаОповещения»,ЭтаФорма);

    На телефоне выдает Несоответсвие типов (Параметр номер»2″)

  37. blackdoor@mail.ru

    Тем жуткий, при всем желании не успеть, хоть на работу неходи )

    • DaNN

      А вроде наоборот, этот день самый простой для понимания

  38. alehinsasha

    Как на VMwaer player повернуть мобильное устройство вертикально?

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

      Даже не знаю, а зачем это надо? :)

  39. nad_komarova

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

    • nad_komarova

      И еще вопрос — как удалить конфигурацию с мобильного устройства?

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

        На андроиде в списке приложений нажмите и удерживайте палец на нужной базе. Появится окно где есть команды Изменить и Удалить.
        На iOS рядом с каждой базой в списке есть пиктограмма со знаком «i» жмете его, там Удалить.

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

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

      • nad_komarova

        Спасибо за помощь! Конфигурацию удалось удалить, с номерами сообщений поработаю :)

    • 13jaguar

      Для таких случаев я сделал обработку, которая очищает очереди обмена. Или можно удалять и заново создавать узлы обмена.

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

        На ИТС давно обновлена обработка по работе с регистрацией данных. Шикарно сделали, весь инструментарий под рукой.

  40. Ava1or

    Из методички:
    Провайдеры = СредстваГеопозиционирования.ПолучитьПровайдеров();
    Для каждого Провайдер Из Провайдеры Цикл
    Сообщить(Провайдер.Имя);
    Сообщить(«Самый точный:» + СредстваГеопозиционирования.ПолучитьСамогоТочногоПровайдера().Имя;
    Сообщить(«Самый экономичный:» + СредстваГеопозиционирования.ПолучитьСамогоЭнергоЭкономичногоПровайдера().Имя);
    КонецЦикла;

    При выполнении «ПолучитьСамогоТочногоПровайдера().Имя» или «ПолучитьСамогоЭнергоЭкономичногоПровайдера().Имя»
    вылетает ошибка «Значение не является значением объектного типа(Имя)».
    Что не правильно?
    Причем провайдер «passive»
    Эта ошибка и на планшете и на эмуляторе

    • Ava1or

      Данные = СредстваГеопозиционирования.ПолучитьПоследнееМестоположение(«passive»);
      ПоказатьНаКарте(Данные.Координаты);

      Ошибка «Значение не является значением объектного типа(Координаты)»
      Проблема платформы или что это?

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

        попробуйте вариант:

        Данные = СредстваГеопозиционирования.ПолучитьПоследнееМестоположение(“passive”);
        Координаты = Данные.Координаты;
        ПоказатьНаКарте(Координаты);

        :)

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

        Возможно ваше устройство ни разу координаты не получало, запустите gps status например и дождитесь получения координат, затем можно и в 1с пробовать

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

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

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

      Перед обращением к имени провайдера вставьте фрагмент:
      Сообщить(ТипЗнч(Провайдер));
      И посмотрите что сообщит система. Скорее всего будет неопределено. Проблема в провайдере.

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

          Не там вставили. Сообщите тип для самого точного и для самого экономичного. Скорей всего там проблема будет.

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

              Ну вот видимо второй — «Неопределено» у Вас и вышибает.
              Используйте того провайдера, который работает.

            • Ava1or

              ОК, спасибо.
              Но это на эмуляторе. Почему такая же ошибка на планшете? Причем там только один провайдер «passive»

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

                Т.е. на планшете только пассив, и там тоже проблема с Неопределено?
                Тут уже я бессилен… Подождем Дмитрия, может он из своей широкой практики что-то подскажет. Я то всего лишь экспериментатор :)

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

              Ясно, на блюстаке так не пройдет, он сам себе эмулирует провайдеров. Так что тут пишите конкретные имена провайдеров.

  41. lopus

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

  42. alex_15650

    Добрый вечер! Такая проблема. На мобильном устройстве перестали отображаться команды основного раздела, есть только «Список приложений» и «О программе». Командный интерфейс основного раздела настроен, у объектов включено использование стандартных команд. Я голову сломал уже! Все было нормально! В чем может быть дело?

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

      Пробовали создать еще одну базу, и посмотреть что будет в ней?

      • alex_15650

        Удалил WS-ссылку и почему то все заработало

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

          Как удалили? Откуда удалили? А как без неё планируете синхронизироваться? Используете программное создание?
          И все таки вариант с новой БД пробовали?

  43. Urgat

    Добрый вечер!
    Вопрос по галочке. При создании объекта мультимедиа выдается ошибка «{ОбщаяКоманда.СоздатьВложение.МодульКоманды(13,22)}: Тип не определен (СредстваМультимедиа)
    Мультимедиа = Новый <>СредстваМультимедиа; (Проверка: Тонкий клиент)». где какую галочку я забыл поставить? :)

    • Urgat

      хм в методичке в отличие от видео такого не было :) удалите пожалуйста

      • alex_15650

        Сервис — Параметры — Модули — Проверка — оставить только мобильное приложение

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

      обрамите работу с мультимедиа и получение координат в:

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

      #КонецЕсли

  44. NikIO

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

  45. alehinsasha

    Где же всё-таки отчитываться по 4 заданию? Если пройти по ссылке (смотри вложение) то открывается страница на которой нет возможности добавить комментарий! (смотри вложение)

    d1d64078bb2f922768f9b0745b6d8df1.png3aa4c002ffbfa256e9d79e7e76ec8652.png

  46. Crucian

    Когда будет доступна возможность добавления комментария по отчету? И, соответсвенно, интересует крайний срок отчета?

    • Насипов Фарит (Админ)

      1. Добавлена
      2. Пока ориентируйтесь на срок до вечера вторника.
      Срок может быть продлен по результатам опроса.

  47. scooper

    Сообщите максимальный срок отчета по данному заданию?

  48. raven30

    Добрый вечер!
    Методичка в формате PDF, 15 страниц: mobile-apps-fm-theory-module04.pdf не доступна. файлы отсутствуют.

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