<?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='\
Ребята, однозначно плюс за ваш проект! Будет интересно посмотреть за его развитием.
P.S. может мне про свой статью написать?
Ура! Наконец то убийца Телеграмма;)
Ребята отличная идея, желаю вашему проекту успехов. Вещь на самом деле нужная и полезная
1. Гдя взяли свободное время на работе, начальник знает?)
2. У вас уже был лицензионный договор или только собираетесь его заключить?
Плюс поставил, но насчет «первого» я бы поспорил 🙂
Кажись и правда повлияли:) «Дуров объяснил сбои в работе Telegram ростом трафика»http://www.interfax.ru/world/592386 (2)
(2)
(4) Начальник как раз один из авторов идеи. Свободное время на проект — это одно из преимуществ нашей компании.
По поводу лицензии, то если речь о роскомнадзоре, то пока нет. Если 1С, то они вроде не против, если штука бесплатная.
А серверная часть у вас на чем?
Ей вы поделиться можете? =)
(8) ну понятно, что тоже пока на 1С. Но тут как раз с лицензиями трудности, поэтому скорее всего будем переделывать на java.
Один вопрос — зачем? Нужна интеграция с телеграмом — есть решения.
(10) так написал же — для исследования мобильной платформы, для погружения в мобильную разработку, …
А зачем компаниям-то свой мессенджер? За своими сотрудниками следить что ли?))) Для Франча это тема)))
(12)
Как вариант))) Но мы планируем туда воткнуть канбан, чтобы можно было легко и просто по задачам отчитываться и получать новые. В перспективе это может стать драйвером повышения производительности труда для удаленных сотрудников.
А корпоративность в чем выражается? Можно будет внутри организации развернуть? А связать с текущим решением на 1с можно?
(7) вроде? есть какие-то обновления?
Нужно иметь лицензии на мобильную платформу, внести первоначальный взнос, который включает в себя N бесплатных скачиваний, а потом каждые N еще какая то сумма
(7) А где качнуть то? если бесплатно…
Из мобильной платформы используется только поле для отображения хтмл?
PS: залейте картинки поменьше, а то разрешени мобилок поболее десктопов бывает
(16) из магазина приложений (в конце статьи ссылка).Вот лендинг в конструкторе сайтов сделали, так что можно и оттуда…
(17)
Нет, не только, но для чата — да, хтмл.
Картинки тут как-то сами умели уменьшатся, но видимо Инфостарт что-то «поправил» с тех пор (или они на ширину смотрят). Руки дойдут — поправлю )))
(15) Денис, спасибо что напомнили про лицензионность. Но правила не совсем такие. Если разработчик никак не монетизирует приложение, в 1С ничего платить не нужно. Если зарабатывает — роялти в 1с составляет 10% от оборота. Выплачиваются начиная с 60 001-го заработанного на приложении рубля. Тут есть про это:https://www.youtube.com/watch?v=CCKwCpSgFpw
(9) Какие трудности с лицензированием?
(21) Видимо на каждого мобильного пользователя нужно покупать серверную лицензию 1Ски))) Вот и дешевле сервак переписать под Java.
Однозначно плюс!
1. Хочется подробностей реализации серверной части.
2. Пришло все же понимание, что для решения таких задач — и сервер 1С и клиентские инструменты — не очень подходят (на текущем этапе развития мобильной платформы 1с) или все гладко у вас вышло?
А действительно с js проблем нет? Для одного проекта реализовывал похожим образом общение по документам — на 8.3.9.74 по крайней мере у меня было море проблем, к сожалению детали даже и не вспомню уже. В итоге весь интерактив пришлось на 1с делать, а html только для отображения.
(22) Зачем? Для бэкофисной части? Так делайте автономное.
(25) ну по всей видимости для того, чтобы мессенджер работал, разные клиенты должны быть подключены к единой серверной части, у которой они периодически должны спрашивать, а нет ли там чего нового для них. Как сделать это автономно (это вообще как(? Где хранить список юзеров мессенджера? Ну и т.д. и т.п….
Это, кстати, ответ и по строению серверной части — БД с кучей веб-сервисов, отвечающая на запросы клиентов…
(11) в мобильную разработку под 1С или вообще — то есть рассматривали ли другие фреймворки (PhoneGap и т.п.)?
(13)
Для этого есть уже существующие работающие решения типа редмайна, битрикса и тп.
А Pasha D в переписке на картинке — это вы специально сделали… чтобы Дурову обидно было?)))
Статья хорошая, однозначно плюс. Очень хочется увидеть реализацию с канбан, для нас это актуально.
Как будет происходить лицензирование клиентов? также как платформы?
Есть же уже сервер взаимодействия. Почему его не использовали?
Ребята, Вам плюс! спасибо за статью)
Исходники бы посмотреть…
(32) Сервер взаимодействия не может же с мобильным приложением общаться, поправьте меня если это не так. Во вторых требования по версии платформы.
Скачал… а оно работает вообще? Как тут общаться? А главное с кем? Как добавлять друзей? По номеру телефона не получается(((
тоже есть желание написать софтину для персонала чтобы отправлять им события СКУДа, расчетные листки из ЗУПа все руки не дойдут
(20) в видео написано в слайде, если есть монетизацияпосле 51 продажи
Есть задача обмена сообщениями двух клиентов мобильных как минимум по локальной сети.
Это реализовано на 1С или скрипты/компоненты?
установили на два телефона (nexus5,meizu m6). На втором устройстве со второго раза получилось зарегаться. Пуш уведомления не приходят. Сообщение приходят с задержкой 3-5 мин.
Upd: со второй попытки пуши заработали, сообщение пришли быстрее.
(38) Вы правы, на слайде слегка однобоко. Если монетизация, скажем, через рекламу, или подписку, там не целесообразно к кол-ву продаж привязываться. Для таких случаев — к сумме.
(40)
У меня также чем больше сообщений, тем они ходят быстрее.
Еще просьба сделать одну Общую группу, например Feedback, чтобы все новички туда автоматом попадали и с друг другом общались. Надо же провести нагрузочное тестирование;)
(41) вы уже заключили договор? Или где про это написано?
(27)
Не выражайтесь в приличном обществе! 🙂
1) PhoneGap — это редкостная хрень. Попробуйте сделать на нем что-нибудь существенное и вы поймете о чем я — сплошные ограничения и тормоза. Если не осилили Java/Kotlin или Objective-C/Swift, то лучше делайте сайтик с адаптивной версткой на HTML5 (который потом легко встраивается ).
2) Не занимаюсь гибридами, но видел отзывы в интернете, что Google и Apple не любят такие приложения и могут отказывать в публикациях на своих площадках.
(43) Не поняла Вам вопрос. Я из 1С и занимаюсь именно продвижением и монетизацией мобильных. Заключаю такие договоры с разработчикам.
(45) а вы та девушка которая на видео?)
Я тоже реализовывал корпоративный чат на пушах, полет нормальный.
Дизайн дернули от вотсапа, веберы сверстали макет и скрипты, мы поместили его на поле HTML документа.
Именно тогда оценил как здорово иметь возможность вызвать с сервера клиент.
(44), phonegap пробовал довольно давно, а вот на 1с подобным не занимался — поэтому и решил уточнить. Спасибо за инфо.
(46) Да
(10) Телеграм не вечен…
(47) общение клиентов как реализовано? Чисто на 1С?
(42) Сделали группу Feedback и решили в следующем релизе бета-версии добавить блок управление задачами и внутреннюю систему мотивации за выполнение этих задач. Всем кто принимает активное участие в тестировании корп мессенджера начислим по 100 баллов (баллы — наше все!);)
Граждане, дайте ссылку или напишите мануальчик на Инфостарте уже как с пушами работать. Вам уйма народу будет признательна.
Цены бы приложению не было, размести вы исходники хотя бы для имеющих подписку на ИТС.
Очень хочется просто красивый работающий пример ( с JS)
Как долго живет клиентская часть и соединение с сервером, на adroid 7.0 и выше?
Отказался от использования ВК в МП именно по этой причине, андроид 7.0 очень быстро отправляет приложение в глубокий сон с разрывом соединения.
Результат теста на последних Самсунгах между двумя пользователями:
1. передача сообщений — 1-2 сек (не очень… Телеграм быстрее).
2. запуск приложения — до 10 сек (очень медленно, хотя вес приложения 10 метров)
3. активация приложения — 2 сек (приемлемо)
4. при разрыве соединения куча не совсем адекватных системных сообщений (видимо платформенные фичи не совсем понятные простому юзеру).
(47)Тоже на 1С?
Первая неприятность: при регистрации строка ввода логина не настроено так, что при ее выделении курсор попал на начало строки.
Второе: если телефон заблокировать, то начинается дикий спам об отсутствии связи, уведомлений хоть и нет, но спустя минут 10 достал телефон и появилось на нем 30+ сообщений о проблеме с сетью
Но в целом достойно
Исходников приложения нет, (типично для 1С), статья не информативная. HTML + JS… нафига тогда нужна мобильная платформа? не ну понятно что она кривая, но не лучше уже сделать клиента на Android?
(59) так статья о самой программке, как попытке разобраться, что можно, а что нельзя реализовать на базе мобильной платформы. Исходники беты пока не выкладываем, т.к. будем еще много чего там делать. Скачать можно в магазине приложений — в конце есть ссылки, также в комментариях есть ссылка на лендинг.
По поводу того, что диалоги пришлось реализовать на базе HTML, то это скорее претензия не к 1С — у них просто нет соответствующих объектов, а к хотелкам пользователей. Ну нереально ни в чем другом нормально реализовать список сообщений с ролевым выделением (юзер — другой юзер).
Произошло обновление релиза, в котором добавились задачи с контролем выполнения.
Крайне интересная разработка!
Есть интерес к *.cf файлу к реализации, к apk пока интереса нет. В любом случае молодцы.
(2) поддерживаю)))
Выложи конфигурацию. Больше интереса будет. К чему смотреть на apk?
(65) сейчас речи о выкладывании не идёт — статья является описанием эксперимента по созданию мессенджера на мобильной платформе. Вряд ли конфигурация серверной части будет когда-либо доступна.
(66) серверная часть не представляет особого интереса. И так можно понять что там. А вот мобильное приложении могло бы помочь в изучении темы.
Можно apk?
(68) он был на гуглплэй. Если нет, то мне его сейчас уже не взять нигде…