Мобильная платформа 1С 8.3.6. Что нового?




Принцип обмена данными из 1С с сайтом (на MySQL) и выдачи (публикации) этих данных по запросу.
PHP-Скрипт автоматической загрузки данных из файла данных в формате CSV в базу данных сайта работающего на WordPress.

В продолжение моей темы: 1С:Альфа-Авто Автосалон Автосервис: обмен с сайтом.
С помощью данного скрипта можно загружать в автоматическом режиме, по расписанию, данные сервисных книжек (ремонтов авто) из 1С:Альфа-Авто Автосалон Автосервис.
Также можно загружать данные в ручном режиме: для этого делается скрытая страница, где размещается специальная кнопка.
Комментарии размещенные внутри скрипта разъяснят логику и порядок действия.
Комментарии с "/////    echo" использовались для отладки.
Дополнительно создана таблица для журналирования результатов загрузки данных.
Скрипт включает в себя защиту от SQL инъекций (думаю безопасность соблюдена в полной мере).
В кратце:
1. Пишется скрипт, который запускает этот.
2. Создается регламентное задание в WordPress, по которому запускается скрипт из п.1. 
3. Этот скрипт осуществляет проверку на существование файла обмена в папке.
4. Если данные не новые, загрузка не производится.
5. Если данные новые, очищается таблица сервисных книжек.
6. Загружаются новые данные.

Собственно сам скрипт:

<?php // Полная загрузка сервисных книжек, создан 2024-01-05 12:44:55

global $wpdb2;
global $failure;
global $file_hist;

/////  echo '<H2><b>Старт загрузки</b></H2><br>';

$failure=FALSE;
//подключаемся к базе
$wpdb2 = include_once 'connection.php'; ; // подключаемся к MySQL
// если не удалось подключиться, и нужно оборвать PHP с сообщением об этой ошибке
if (!empty($wpdb2->error))
{
/////   echo '<H2><b>Ошибка подключения к БД, завершение.</b></H2><br>';
$failure=TRUE;
wp_die( $wpdb2->error );
}

$m_size_file=0;
$m_mtime_file=0;
$m_comment='';
/////проверка существования файлов выгрузки из 1С
////файл выгрузки сервисных книжек
$file_hist = ABSPATH.'/_1c_alfa_exchange/AA_hist.csv';
if (!file_exists($file_hist))
{
/////   echo '<H2><b>Файл обмена с сервисными книжками не существует.</b></H2><br>';
$m_comment='Файл обмена с сервисными книжками не существует';
$failure=TRUE;
}

/////инициируем таблицу лога
/////если не существует файла то возврат и ничего не делаем
if ($failure){
///включает защиту от SQL инъекций и данные можно передавать как есть, например: $_GET['foo']
/////   echo '<H2><b>Попытка вставить запись в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>$m_comment));
wp_die();
/////    echo '<H2><b>Возврат в начало.</b></H2><br>';
return $failure;
}
/////проверка лога загрузки, что бы не загружать тоже самое
$masiv_data_file=stat($file_hist);   ////передаем в массив свойство файла
$m_size_file=$masiv_data_file[7];    ////получаем размер файла
$m_mtime_file=$masiv_data_file[9];   ////получаем дату модификации файла
////создаем запрос на получение последней удачной загрузки
////выбираем по штампу времени создания (редактирования) файла загрузки AA_hist.csv, $m_mtime_file

/////   echo '<H2><b>Размер файла: '.$m_size_file.'</b></H2><br>';
/////   echo '<H2><b>Штамп времени файла: '.$m_mtime_file.'</b></H2><br>';
/////   echo '<H2><b>Формирование запроса на выборку из лога</b></H2><br>';
////препарируем запрос
$text_zaprosa=$wpdb2->prepare("SELECT * FROM `vin_logs` WHERE `last_mtime_upload` = %s", $m_mtime_file);
$results=$wpdb2->get_results($text_zaprosa);

if ($results)
{   foreach ( $results as $r)
{
////если штамп времени и размер файла совпадают, возврат
if (($r->last_mtime_upload==$m_mtime_file) && ($r->last_size_upload==$m_size_file))
{////echo '<H2><b>Возврат в начало, т.к. найдена запись в логе.</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>'Загрузка отменена, новых данных нет, т.к. найдена запись в логе.'));
wp_die();
return $failure;
}
}
}
////если данные новые, пишем в лог запись о начале загрузки
/////echo '<H2><b>Попытка вставить запись о начале загрузки в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>0, 'last_size_upload'=>$m_size_file, 'comment'=>'Начало загрузки'));

////очищаем таблицу
$clear_tbl_zap=$wpdb2->prepare("TRUNCATE TABLE %s", 'vin_history');
$clear_tbl_zap_repl=str_replace("'","`",$clear_tbl_zap);
$results=$wpdb2->query($clear_tbl_zap_repl);
/////   echo '<H2><b>Очистка таблицы сервисных книжек</b></H2><br>';
if (empty($results))
{
/////   echo '<H2><b>Ошибка очистки таблицы книжек, завершение.</b></H2><br>';
//// если очистка не удалась, возврат
$failure=TRUE;
wp_die();
return $failure;
}

////загружаем данные
$table='vin_history';         // Имя таблицы для импорта
//$file_hist Имя CSV файла, откуда берется информация     // (путь от корня web-сервера)
$delim=';';          // Разделитель полей в CSV файле
$enclosed='"';      // Кавычки для содержимого полей
$escaped='\

96 Comments

  1. vandalsvq

    За статью спасибо, познавательно.

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

    В общем спасибо тебе, Дима. Я на самом деле даже жалею, что толком с тобой не смог пообщаться на IE2014. Надеюсь в следующем году удасться.

    Reply
  2. rayastar

    С недавних пор я сам являюсь ios разработчиком, но 1С — основное место работы.

    И люди, которые говорят, что мобильное приложение «это мертвый проект :).» правы по своему.

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

    Нельзя требовать от 1С полноценного инструмента! Свою основную функцию он выполняет и это факт.

    Как разработчк с правом выбора инструмента (XCode или 1C) для разработки мобильного приложения я буду пользоваться здравым смыслом.

    И если задача сможет решаться с помощью МП, то конечно выбор падет на него.

    Только где гарантия, что в момент Х я смогу реализовать какой то специфичный механизм?

    Reply
  3. DoctorRoza

    Дмитрий! Жду Вашего обзора стабильного релиза МП!

    Reply
  4. kenza

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

    Reply
  5. Константин С.

    (2) rayastar,

    И люди, которые говорят, что мобильное приложение «это мертвый проект :).» правы по своему.

    такие мнения будут всегда. Аналогично говорили про 7.7 и 8-ку. И что живет и процветает.

    соглашусь что при выборе средств реализации нужно:

    пользоваться здравым смыслом.

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

    ps:

    Как консультант-разработчик без возможности выбора, МП дало возможность написать приложения для себя используя навыки работы с 1С. Теперь на Iphone его использую и не заморачиваюсь на покупку лицензий разработки,что с другими языками не получилось

    Reply
  6. WhiteOwl

    Спасибо, очень интересный обзор!

    Reply
  7. AllexSoft

    Хороший обзор.. А подскажите, с ролями ничего не изменилось ? нельзя роли использовать ?

    Reply
  8. TODD22
    Интерфейс у новой версии просто восхитителен

    Зелёный текст на белом фоне, серые полутона рамочек, кнопочек и шрифтов, белый текст на оранжевых кнопках…. Цветовая палитра совершенно убогая и от неё глаза устают. Когда уже уволят из 1С человека ответственного за цветовую гамму интерфейсов…

    Reply
  9. rayastar

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

    Reply
  10. dj_serega

    Спасибо за статью. Попробую свое переписать, об найденных багах отпишусь. С виду всё красиво 🙂

    Reply
  11. DitriX

    (1) ну так в чем проблема — подходите и пообщаемся. Я ж никуда не убегаю 😉

    (2)не вижу проблем с функционалом, если чего то не хватает — дописываем сами, как результат — мир увидел утилиты от нас. Но если человек хочет 3д модели, то да, 1с тут не слишком подойдет 🙂

    (3) я тоже

    (4) а для чего вк придумали? Снегопат и прочее? Вы видели 1с++ делает с 7.7? Функционала всегда не будет хватать, даже если вы на яве кодите под андроид, там тоже далеко не всегда есть возможность сделать то, что хочется.

    (5) согласен на 200%, ибо народ должен привыкнуть и осознать.

    (7) роли можно было использовать еще в 8.3.5. Там правда нет ограничений, но если честно, то я не знаю зачем они вообще надо тут, разве только что бы глючило больше.

    (8)а вы разве не знали, что можно менять шрифт и цвет? Делайте свою уникальную гамму 😉 а когда появятся стили — вообще круто будет, а я знаю несколько приложений в таком стиле, причем именно бизнес решений, и ничего качают и не жалуются, поищите клиента на Приват24. Там все органично смотрится.

    (9) это вы к чему? Кто и что увидел?

    (10) ок, если что — дополню статью или новую сделай;)

    Reply
  12. dj_serega

    (11) Вот не хочет она устанавливаться 🙁 Как делал:

    1. Загрузил в сборщика конфу.

    2. Скомпилировал.

    3. не пошло 🙂 картинка файла-apk даже не отобразилась.

    4. Вспомнил что нужно обновить сборщик.

    5. Обновил.

    6. Скомпилировал.

    7. Таже ошибка: «Під час аналізу пакету виникла помилка».

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

    Каммент больше для инфы 🙂

    upd: я кажись понял. У меня была готовая xml’ка с конфой на старое приложение. Видимо нужно обновить платформу разработки. И новую xml’ку пихать в сборщик.

    Ых…

    Все-равно не пошло. Что ж я не так сделал пока не пойму 🙁

    Reply
  13. DitriX

    (12) ну это сейчас не скажу, сам не пытался еще это все запилить, как сделаю — обновлю статью старую с инструкциями.

    А вообще — смотри логи сборки, ну и отладкой пройдись, 99% что пути не подхватились.

    Reply
  14. dj_serega

    (13) Так это у тебя конфа разработки на скринах?

    У меня 1cema.apk установилась. Конфу подтягуло.

    Итог:

    Конфа разработки работает, а собранное apk не хочет. Видимо нужно сборщик с 0 заполнить. Где-то оно при создании ключа или других данных по новому заполняет/работает.

    Это уже завтра буду делать.

    Reply
  15. dj_serega

    (11)

    ок, если что — дополню статью или новую сделай;)

    Дополняй 🙂

    1. Модальные окна это ппц 🙂 В прямом смысле. Раньше открывалось на весь экран. Теперь по центру. Не разворачиваются. Не перетягиваются 🙁

    2. Фон на всех кнопках «белый», хотя стоял «Авто». Очень криво 🙁 Даже на тех которые создаются программно. Все кроме одной белый фон.

    Итог:

    Модальные окна это зло 🙂 С фоном нужно поработать.

    з.ы.: скрины, возможно, предоставлю 🙂

    Reply
  16. TODD22

    (11) Да я в целом про такси. От БП 3.0 на такси глаза устают очень сильно.

    Reply
  17. rayastar

    (11) к тому, что если человек видел и работал с мобильным приложением, написанном на нормальном яыке (цитата его слов), то ниже опускаться по функционалу/масштабируемости//производительности он не хочет

    Reply
  18. Vint_1c

    Отличная статья, большое спасибо автору.

    Захотелось даже попробовать написать и развернуть приложение на ней.

    Reply
  19. flyer

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

    Reply
  20. DitriX

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

    (19) вот поэтому я ничего почти не разрабатывал до сих пор. Тут меняется сам концепт, сама идея.

    Reply
  21. Трактор

    Слово слайд в данном случае можно перевести как сдвиг.

    Reply
  22. Samarin

    Спасибо за статью, познавательно.

    Буду ждать стабильного релиза МП. На тестовом 8.3.6 APK не взлетела, откатился на МП 8.3.5 🙁

    Reply
  23. sergos3331

    (8) TODD22, Абсолютно поддерживаю, более убогого интерфейса самого по себе да еще и по цветовой гамме трудно найти … надо постараться.

    Такое ощущение что в 1с затихарилась своя пятая колонна предателей 🙂 Увольте же наконец этого мудо-чудо дизайнера! Все же жалуются на невосприимчивость цветовой гаммы

    интерфейса и усталось от него глаз — а 1с это упорно игнорирует!

    Reply
  24. lustin

    (0) про PUSH забыл ? http://v8.1c.ru/o7/201502push/index.htm

    Reply
  25. PrinzOfMunchen

    (20) за статью огромное спасибо. А вопрос такой: можно ли как-нибудь сюда голосовой набор прикрутить? Интересная для меня тема. ))

    Reply
  26. Amelk

    Спасибо за статью, как бы ее адаптировать для мобильных платформ (Windows Mobile)

    Reply
  27. DitriX

    (24) как это забыл, написал же:

    4. Добавили pushсообщения, о них подробней тут и тут. Для тех кто работал с утилитами, может не хватит функционала и мозги расплавиться у тех, кто раньше не работал с GCMи APNS.

    Но тут не совсем пуш, а нечто большее:)

    (25) смотря что от него надо, не понимаю задачи.

    (26) а винда умеет запускать андроид приложения? или уже выпилили какой то эмулятор по типу как блек бери, кстати интересно — как на нем 1с работает 🙂

    (23) как по мне — все не плохо, так как я смотрю на очертания, а не на цвет, ибо цвет можно будет изменить 🙂

    (21) или свайп, или слай, или сдвиг, или протянуть, какая разница — суть то ясна 🙂

    Reply
  28. lustin

    (27) пропустил извини. Я был несказанно рад — теперь «события» и «асинхронность» становится все ближе и ближе 😉

    Reply
  29. dj_serega

    (27) свисни, пожалуйста, когда получится apk запустить.

    Reply
  30. LaNaite

    Это очень круто! — развитие мобильной платформы.

    Спасибо Вам за обзор!

    Если бы еще 1С позволило приобретать только платформу (без типовых конфигураций)…

    Reply
  31. PrinzOfMunchen

    (27) Например, ввод голосом строки поиска, заполнение строковых реквизитов, ну а в идеале голосовое управление.)) «Ок`ей 1С, закрой месяц»))))

    Reply
  32. Amelk

    Можно использовать эмулятор Android в среде Windows (например AndyOS), но пока это для настольных операционных систем, уже скоро Microsoft планирует интегрировать в свою мобильную операционную систему Windows Phone поддержку Android-приложений

    Reply
  33. DitriX

    (31) ну по идее можно, я уже думал об этом, но тут возникает ряд сложностей, первая из них — 1С не умеет обрабатывать внешние события и вторая — всю морфологию надо прописать и т.д. 🙂

    Reply
  34. Amelk

    можно создать что-то вроде онтологической базы знаний (на основе продукционной модели) — это касается формализации набора голосовых команд

    Reply
  35. PrinzOfMunchen

    (33) ну для начала хотя бы научить её преобразовывать голос в текст. Можно попробовать подыскать сервисы, например гугловский, если он ещё жив. Ну а внешние события…Сделать кнопку «выслушать собеседника». Этого уже будет достаточно для разработки приложений, типа «1С: Собутыльник», или «1С: Личный психиатр»….)))

    Reply
  36. Amelk

    Голосовой поиск Google работает нормально, но как его прикрутить к своему приложению, ето уже вопрос….

    Reply
  37. PrinzOfMunchen

    (36) Amelk, тут больше вопрос в том, как заставить 1С записать звук в нужно для google формате. Остальное — не большая проблема.

    Reply
  38. DitriX

    (37) (36) мы подумали, и решили что возможно в следующем обновлении мы эту функцию запилим, но ясное дело — что используя ее мы должны иметь выход в инет и так как включен вечно микрофон — это будет жор батареи.

    В общем посмотрим.

    Reply
  39. pablo_escobar

    (30) LaNaite, покупайте Платформа, но мне кажеться проще добавить и БП купить

    Reply
  40. Amelk

    (37) PrinzOfMunchen,

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

    Reply
  41. DitriX

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

    Reply
  42. CyberCerber

    Спасибо, что держите руку на пульсе мобильной платформы!

    Уже написал небольшое приложение на платформе 8.3.6. Возник ряд ошибок, вопросов, замечаний.

    1. Не срабатывает событие ПриИзмененииПараметровЭкрана. Экран поворачиваю, оно не вызывается. У кого-нибудь работает? Еще не понял как вообще корректно получить объект ИнформацияЭкранаКлиента. Нашел только метод ПолучитьИнформациюЭкрановКлиента(), который возвращает фиксированный массив, первым элементом которого должен быть нужный экран. Как-то проще можно?

    2. В конфигураторе невозможно заниматься дизайном интерфейса. В конф-те все формы отображаются в обычном виде 8.2 и не имеют ничего общего с интерфейсом на моб. уст-ве. Отлаживаться приходится только каждый раз компилируя, устанавливая приложение. Где-нибудь есть предпросмотр такси?

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

    4. У кого-нибудь получалось делать что-то типа прогрессбара на моб приложении? Хотя бы просто отображать проценты? Выполняю длительное действие на клиенте, пробовал менять заголовок декорации, окна, обновлять реквизит на форме. Изменения вступают в силу только после окончания вычислений в цикле.

    5. У меня на форме выводится дин. список с тремя колонками регистра сведений объема около 150 записей. И при пролистывании списка наблюдаются тормоза. Это нормально? Телефон не слабый — «два ядра, два гига».

    6. Есть возможно менять стандартные цвета приложения: черный текст, желтый фон, зеленые кнопки?

    Reply
  43. DitriX

    (42)

    1. Только так, ибо экранов может быть несколько.

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

    3. Увы, все с точностью наоборот — теперь 1с все делает по dpi, т.е. не важен размер экрана и разрешение, все везде будет видно одинаково, ну только соотношение сторон роль играет еще.

    4. Запускайте инфу в фоновом задании.

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

    6. Пока нет, и даже оформление типовое почти нигде не работает.

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

    Reply
  44. CyberCerber

    (43) спасибо за ответы!

    1. А само событие ПриИзмененииПараметровЭкрана пробовали? Оно у вас срабатывает?

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

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

    Reply
  45. DitriX

    (43) увы, но боюсь, что не скоро.

    1. Если честно — я еще не тестил.

    4. Типо того, только не через константу, а через сообщения пользователю, если они это починили 🙂

    Reply
  46. druv

    У меня не сохраняются значения текстовых полей в табличной части справочника/документа. Это нормально? Есть ли способ побороть данную проблему?

    Reply
  47. zatoichi

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

    Reply
  48. FractonKireyev

    (8) TODD22,

    Присоединяюсь ко всем, кто считает цветовую гамму ужасной. В УФ под 8.2 стиль (цветовая гамма + прорисовка рамочек + шрифты + …) был намного лучше.

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

    Как «должно быть» меня не спрашивайте — моих дизайнерских способностей хватает только на оценку сделанного.

    Reply
  49. DitriX

    (46) такого не наблюдал, вроде все ок в этом плане.

    Проверьте ту же конфу на 8.3.5 — там все ок?

    Reply
  50. MherArsh

    Вообще мобильная платформа крутая штука, в принципе ели хватает энтузиазм то можно решить кучу вопросов. Мне нравится куда движется 1с !

    DitriX ответьте плз если в курсе

    1. 3.6 будет совместима с предыдущими версиями или нет

    Просто у нас есть рабочая конфигурация 3.5 которая не запустилась.

    2. Возможно ли чту у нас появится что то типа формы клавиатуры в 1с?

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

    какая то таблица, каждый рас при наборе текста форма деформируется

    потому что открывается встроенная клава, в этой версии мне очень понравилось

    решение для ввода цифр.

    Reply
  51. DitriX

    (50) 1. Ну в статье я так и говорил, что взял 8.3.5, даже не обновлял до 8.3.6 стационарную и запустил на 8.3.6 мобильной, и все заработало. Не без нюансов, но все же.

    Перерабатывать надо будет полюбому, хотя они и обратно совместимы с 8.3.5, но поменялся принцип, а это уже сложнее.

    2. Вполне возможно, но не в ближайшее время это 100% 🙂

    Reply
  52. MherArsh

    (51) конвертировал конечно, но все ровно не помогло.

    будем наедятся что 1С все скорректирует.

    И было бы круто если бы у нас была возможность написать родной код,

    например как «extern «C» потому что все таки очень часто нужны такие

    инструменты которые 1С дать просто не может и не должен!

    Спасибо за ответ!! 😉

    Reply
  53. isn

    Добрый день!

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

    Reply
  54. DitriX

    (53) читайте мои статьи, или вот можете пройти бесплатный курс http:// /мобильная-платформа/бесплатный-курс-по-мобильной-1с/

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

    Reply
  55. GreyJoJo
  56. isn

    (55) Огромное спасибо. Есть доступ к ИТС.

    Reply
  57. gudun_ku

    Пока нет нормальных ТСД на Android c лазерными сканерами(которые еще поддерживались бы мобильной 1С), проект все же ближе к коту Шрёдингера. А основные производители ТСД (Datalogic, Motorola), почему-то ориентируются на Windows Embedded. Или 1С нужно сделать порт мобильной платформы для Windows Embedded. Интерфейс радует, конечно. Но не следует забывать, что набирать документы, выбирая товары из справочника, как привыкли в 1С, как-то неправильно, при работе с мобильным устройством.

    Reply
  58. sergei_tekh

    Что-то я не понял, как ИдентификаторПодписчикаДоставляемыхУведомлений можно передать между базами. Это ведь не строка. Через XML не сериализуется, ЗначениеВСтрокуВнутр недоступно. Кто-нибудь этим уже занимался?

    Reply
  59. DitriX

    (57) http://www.acode,pro, смотрите мои обзоры такого оборудования, где не только 1д сканеры, но и 2д, и с отпечатками пальцев, и rfid, короче — добро пожаловать в 2015 🙂

    Reply
  60. DitriX

    (58) занимался, и буду рассказывать про это в обновлении на курсах 🙂

    А вообще — все успешно сериализуется, ну можете еще хранилищем передать

    Reply
  61. sergei_tekh

    (60) с идентификатором разобрался, сериализатором XDTO получаю XML, далее его передаю как строку по веб-сервису. Но никак не получается принять сообщение на моб.клиенте. С сервера всё уходит без ошибок, а как дальше отследить путь сообщения, не знаю. Вообще нужно как-то настраивать само устройство? Пытался читать Implementing GCM Client on Android, но мало что понял.

    Reply
  62. DitriX

    (61) ну в курсах, у меня ушел 1 час видео на объяснение этого всего, боюсь что тут не смогу столько рассказать 🙂

    Reply
  63. Taktic

    Подскажите, пожалуйста, а как лицензируются мобильные приложения?

    Если я размещаю свое приложение в Google Play сколько я должен платить 1С?

    Reply
  64. DitriX

    (63) этот вопрос решает в одностороннем порядке с фирмой 1С 🙂

    Reply
  65. tunesoft

    Добрый день.

    Спасибо за полезную информацию.

    Есть вопрос.

    В вашей статье http://infostart.ru/public/242857/ было указано что нужно скачать AndroidSDK.

    Подскажите, пожалуйста, какую версию «AndroidSDK» нужно использовать для мобильного приложения 8.3.6 ?

    Reply
  66. DitriX

    (65) если честно — не помню. Или 17 или 19. Установите конфигурацию для сборки мобильных решений и там все четко написано в справке.

    Reply
  67. Ale-Mar

    (38)

    Добрый день,

    Есть подвижки в сторону внедрения голоса в 1С?

    Reply
  68. DitriX

    (67) пока нет,увы.

    Reply
  69. vslimv

    Здравствуйте многоуважаемый DitriX). Всегда радуют ваши статьи.

    Возник вопрос по поводу печати. Как то сжато все описано.

    Что есть такое

    PCL3 и ZPL

    ? Я видимо гуглоинвалид,

    потому что, ничего найти не смог адекватного. Если можете ткните в ссыль

    что это за стандарт и кто его поддерживает. В тех характеристиках принтеров

    не нашел таких параметров.

    Reply
  70. DitriX

    (69)Добрый день. Спасибо за отзыв.

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

    PCL — это HP, ZPL — Zebra.

    Вот примем принтера http://www8.hp.com/ua/ru/products/printers/product-detail.html?oid=4231410#!tab=specs

    Однако, PCL бывает разных версий, учтите это.

    Reply
  71. vslimv

    (70) Если я правильно понял то 1с поддерживает большинство мобильных hp,zebta? Потому что я прошел по вашей ссылке и не нашел там, чтобы хоть где нибудь хоть маленьким шрифтом, было написано pcl3. Не думал что поиск принтера обернется таким геморроем.

    Еще раз спасибо, за ответ и за статью.

    Reply
  72. DitriX

    (71) не за что, как что то найдете интересное — пишите, что б другие тоже знали.

    Reply
  73. moongust

    Удалось ли кому-нибудь решить проблему с неактивным полем ввода штрих-кода в мобильном приложении 1С?

    Я написал заявку в тех.поддержку 1С, но ответа можно ждать вечно.

    Reply
  74. Seeker

    добрый день,

    Используем для работы мобильную платформу 8.3.5.109. ТСД ACode A420, единственный косяк порядок обхода элементов формы живет свой жизнью и плохо управляется.

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

    Reply
  75. DitriX

    (74) С переходами они разобрались в 8.3.7, если я правильно помню. Так таки был баг.

    В остальном — интерфейс стал на порядок лучше чем был 🙂 Тут можно долго спорить, но оставаясь на старой версии — вас ждут вечные поиски компромисов:)

    Reply
  76. Seeker

    а как в 8.3.7 переходить с одного поля на другое?

    такой код:

    ЭтаФорма.ТекущийЭлемент = Элементы.КодМарки;

    не работате 🙁

    Reply
  77. DitriX

    (76) А почему справку не читаете?

    Переход с поля на поля — это кнопка Далее. И ее починили, то о чем вы говорите — это установка активного поля, и её никогда не починят, так как работает она штатно, так в справке написано — активность элемента меняется, но вот курсор — нет.

    Так что можете и не ждать исправления этого бага, так как это фича 🙂

    Reply
  78. Seeker

    Нет ну подождите, мне не нужен последовательный переход из одного поля в другое

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

    я не понял про какую справку речь?

    Reply
  79. Seeker

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

    при попадании фокуса на надпись ни какими средствами он от туда не уходил, только тыкать пальцем в экран.

    надпись успешно заменена на поле ввода и …. тадам! все рабоатет!

    Reply
  80. pridecom

    А для WINDOWS кто-нибудь смог собрать приложение? Нет ни инструкций ни примеров….

    Reply
  81. DitriX

    (80) да, там есть конечно ньюансы, но все решабельно 🙂

    В новом курсе кстати рассматривается эта тема.

    Reply
  82. biformatus

    Есть задача, разработать приложение для iOS для внутреннего использования. Публиковать на сторе никто не будет. Реально ли как-то без регистрации разработчиком (и уплаты $99) запустить приложение на iPhone?

    Reply
  83. DitriX

    (82) реально, вполне. Однако — в статьях такого не расскаешь, слишком много нансов и особенностей, начиная от того, что вам нужен мак компьютер, и заканчивая компиляцией по сети.

    Так что если вам интересно — то сейчас вышел новый курс, где есть ответ на ваш вопрос http:// /1c-v8/1c-mobile-2016/

    Reply
  84. pablo_escobar

    (82) biformatus, качаете последний itools, если с помощью него можете заменить файл с настройками баз на своем устройстве, то можно. Apple, перекрыла (в прежнем понимании) «песочницу» начиная с 8.3. Оставив на усмотрение разработчика папку Documents. Если получится, то публикуете кон-цию мобильного приложения на веб-сервере и загружаете ее с айфона с помощью одного из приложений от 1С. вот здесь подробно обсуждали

    Reply
  85. VestaFoods_rnd

    добрый день! есть вопрос по теме… работаем на платформе 8.3.5.112 (конфа подливается отдельно, она не вкомпилирована в APK) и при установки приложения 8.3.8.58 (даже любого другого релиза выше 8.3.5) в списке баз пусто! устанавливаешь обратно 8.3.5.112 всё появляется! как решить быть проблему с переходом? заново добавить базу в список не подходит, планшет не 1!

    Reply
  86. DitriX

    (85) Frizik1111, похоже на баг. Надо смотреть файл v8bases.v8i до обновления, потом обновить, добавить новую базу, просто в список и сравнить.

    Видать где то формат подменили. Это первый вариант.

    Второй вариант — выгрузить всю базу в xml, потом загрузить. Сериализация вам в помощь 🙂

    Reply
  87. VestaFoods_rnd

    (86) Действительно, 1С поменяла пути

    новый путь начина с 3.6 — datacom.e1c.mobilefiles1C1cemibases.v8i

    старый путь включая 3.5- datacom.e1c.mobilefilesibases.v8i

    что можете посоветовать Коллеги? как перейти со старой платформы на новую с минимальными потерями с учётом того что устройств более 100шт.

    Reply
  88. DitriX

    Напишите обновление конфы, которое изменит содержимое этого файла и все.

    Reply
  89. Широкий

    Програмный вызов клавиатуры — кто нить нашел решение?

    Reply
  90. Nikosc

    Добрый день! Нужно, чтобы при открытии формы мой ТСД(на андройде) мог сразу считанный ШК вставлять в активное поле. Ну и желательно без лишних касаний сразу его обрабатывать. Интересует, как это реализовать, желательно без интентов, но на крайний случай, можно и с ними. Кто-нибудь смог решить текущий вопрос?

    Reply
  91. DitriX

    (90) 8.3.9 функция начатьредактированиеэлемента

    Reply
  92. Nikosc

    (91) благодарю!

    Reply
  93. AnL24

    Добрый день!

    Возник такой вопрос: можно ли настроить корректный свайп страниц, если на них размещены таблицы, дерева значений?

    Дело в том, что на страницах формы в режиме пролистывания размещены таблицы и пролистывание на следующую страницу не срабатывает при смахивании налево в области таблицы (происходит выделение строки таблицы).

    Тестировал на смартфоне. Контекстное меню как таблиц, так и полей отключены.

    Reply
  94. dj_serega

    Нужно свайпать по полям которые не используются. Типа шапки таблицы.

    Я приучил пользователей свайпать по точечкам страниц (которые снизу).

    Reply
  95. Serdgio

    (91) Дмитрий, не подскажете, ограничения ролей так и нельзя использовать в мобильном приложении?

    Reply
  96. demONx7

    (91)

    Описание:

    Если ТекущийЭлемент является полем ввода, выполняет переход в режим редактирования и одно из следующих действий:

    * открытие панели ввода,

    * отображение экранной клавиатуры,

    * отображение календаря,

    * отображение списка выбора,

    * автоподбор значения.

    * ???

    А как выбрать последний пункт? Чтобы никакие действия не предпринимались при активизации поля?

    Reply

Leave a Comment

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