<?php // Полная загрузка сервисных книжек, создан 2025-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='\
Маркетинг правит миром, понимаю. Но может сделаете пост о технологической части сервиса? На хабре тоже ничего толкового не нашел.
Основной барьер у пользователе для перехода в облако — вопрос безопасности. Как вы работаете с данным возражением с вашими потенциальными клиентами?
Что-то минусов не описали почти. А как же быстродействие, зависимость от интернет каналов и т.п.? Ещё я прочитал про ваших клиентов и из каких они регионов, но хотелось бы узнать подробнее о том, что это за клиенты и какой у них бизнес, сколько товара на складах, каково количество и какие виды операций они проводят по своим складам, каково среднее время на транзакцию и т.п. показатели (понятно, что интересуют как усредненные, так и экстремальные показатели и т.п.).
(2) gradi, согласен… а то наверное попадаются клиенты с вопросом «сколько стоит ЧужойСклад» ?
Я бы плюсанул за такой способ рекламы, но уж что-то противное слово «долларь» часто встречается.
«И главное, знаю, отлично я, как оно произносится, но что-то весьма неприличное на язык ко мне просится ..» В.Высоцкий !
(1) panvartan,
http://pgconf.ru/paper/25 или на Хабре: http://habrahabr.ru/company/moysklad/blog/230991/
Иногда рассказываем про технические подробности на конференциях, например
(2) gradi,
Действительно, один из самых популярных вопросов. Моя позиция — мы постепенно все передаем на аутсорс. Хранение денег аутсорсим банкам. Хранение данных — облачным провайдерам. Это исторически закономерный процесс и мы от него никуда не денемся. )
(3) Идальго,
С быстродействием проблем не замечали. Понятно, что пока мы не сможем автоматизировать какой-нибудь Ашан. Но розничные точки до нескольких сотен продаж в день работают вполне комфортно. Интернет — да, может быть проблемой, но скорости мобильного интернета вполне хватает, кроме того розничная точка может временно работать в офлайне (специально сделали такую возможность).
Из реальных проблем я бы на первое место поставил возможности кастомизации. Можно менять шаблоны и добавлять поля, но по сравнению с платформой 1С, где вы можете изменить вообще все, это сильно ограничено.
(7) В итоге — никто ни за что не отвечает. Пользователю предлагается единственный вариант — AS IS
(9) CheBurator,
Конечно, в конечном итоге каждый пользователь должен выбрать сам, чем он будет пользоваться — облаком или коробкой. Но по общей статистике хорошо видно, что в целом сейчас идет быстрое перетекание в облако.
Т.е. вы понимаете о чём так сладко «поёт» автор? Нет. А смысл таков, да вы будете иметь доступ к своим данным с любого места, где есть интернет. Но, все ваши действия уже будут контролируемы. Где, сколько, кому и какой остаток у вас, сколько у вас денег, где вы находились в такой-то момент. И вы становитесь уязвимы для мошенников. А поскольку о чистоплотности власть имущих говорить не приходится, то вы сами отдаёте себя в их руки.
Статья на рекламу скорее всего похожа. Для привлечения новых клиентов как выразились в начале статьи из
(11) mootriskoff, дык можно же приделать шифрование, или вообще не пользоваться сервисом автора, но сделать своё облако и никаких властьимущих туда не пускать )))
Инвестор 1С… ааа… Мы все умрем.
Есть предположение, что ты зря свалил эту информацию.
Если коротко, то ваш проект был провальным. Пока 1С не зашла. А сейчас зашли, чтобы оценить и прибить вас при необходимости.
Мы посмотрим. Зачем только это 1С я не понял.
это как с автомобилем на прокат!
удобно, заманчиво финансово (на первый взгляд)
но…
свой автомобиль — это свой автомобиль!
ну и конечно же безопасность. я тут скачал некую «домашнюю» бухгалтерию,
все отлично, но данные хранятся в облаках!
как то боязно! понятно, что я никому не нужен, но как то не уютно свои доходы и расходы кому-либо показывать.
вот не хочу и все тут! это как царапина на автомобиле, ездить не мешает, но внимание обращаешь.
кстати, а можно купить «Мой склад» с исходниками?
у себя разместить на балконе и курить! тогда еще можно!
:)))
А почему так много инвестиций? Я не сталкивался с разработкой Web-приложений, сложно понять трудозатраты на реализацию проекта. Я сужу как 1С-ник. На разработку такого функционала, как у Вас, в 1с стоило бы раз в 100 наверное меньше… 200 тыс. долларов первая инвестиция, значит были еще и другие инвестиции? Сколько всего денег было потрачено? И сколько составляла разработка? Куда потратили такие деньги? Или большинство денег съедает именно реклама — привлечение клиентов?
(18) chingiz001, инвестиций было вложено намного больше $200 тыс. Потрачены они в основном на разработку продукта — поверьте, это очень дорогое удовольствие)
В основном на разработку? Функционал более чем скромный (в сравнении с 1с). Разработка имеется ввиду программирование, или всякие фокус-группы, изучение спроса? Можете хотя бы в процентном соотношении сказать, сколько стоит какая часть разработки? Сколько программирование, сколько дизайн, маркетинг, продвижение и другие затраты? В процентном отношении это не является коммерческой тайной? И могли бы вы вкратце дать рекомендации по расчету запуска Веб-сервиса? Краткий степ-бай-степ, или ссылку на методику, которую сами проверяли, или с которой Вы, как практик, согласны?