<?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='\
А комментарий такой… Пусть начальство готовится к увеличению шатата программистов. Все признаки на лицо.
Если посчитать как по нумерологии:
УТ 10 достаточно 1 + 0 = 1 программиста
УТ 11 минимум 1 + 1 = 2 программиста
Если посчитать по двоичной системе:
УТ 10 — 2 программиста
УТ 11 — 5 программистов
Если основываться на опыте, работы точно прибавится.
И не дай бог отступать от типового функционала очень далеко, из-за постоянных обновлений постоянно будет что-то ломаться и придется все это хозяйство поддерживать. Хотя, объем работ еще зависит от квалификации программистов.
Хорошо когда есть такой выбор: «а посмотрим, что там в новой, попробуем, может откажемся».
Другое дело, когда снимают конфигурацию с поддержки, например, комплексную, и тут уже выбора то особо нет, все не хотят, а надо.
С торговлей как-то проще, многие все еще на семерочной сидят и в ус не дуют, сейчас 1С придумала обмен через Enterprise data, так и вовсе один раз сделал обмен, и это очень надолго.
Боюсь огорчить не очень надолго. Форматы EnterpriseData клепают постоянно, и гарантируют поддержку в течение трех лет. Вот перечень:
Номер версии Дата выпуска
1.0 EnterpriseData_1_0_4.zip 21.11.2014
1.1 EnterpriseData_1_1_4.zip 21.11.2014
1.2 EnterpriseData_1_2_3.zip 15.04.2016
1.3 EnterpriseData_1_3_8.zip 21.02.2017
1.4 EnterpriseData_1_4_4.zip 21.02.2017
1.5 EnterpriseData_1_5_2.zip 30.06.2017
Форматы 1.0 и 1.1 уже не поддерживаются.
Я читал не каждое слово, но уловил, что вы с 10.3 хотите перейти из-за того, что там всего 16Гб оперативки (т.е. мало). Хм, дак ут11 этого на один зубок. Короче так себе повод. Про устарелось тоже спорно, ведь если подумать, то вам самим нужно оценить целесообразность использования новейшей и инновационной ут11, которая раза в два минимум дороже в поддержке, сложнее, массивнее. Вот вы просите вам посоветовать — я советую конечно переходить на ут11, это интересно и весело всегда, а ещё пишите о результатах.
(0) переходите на УНФ, не надо УТ 11.
я тоже так
С точки зрения специалиста, конечно нужно внедрять УТ11, это строчка в резюме, новый опыт, выход из зоны комфорта, новые статьи на ИС
С точки зрения бизнеса. Держаться за работающую и легко дорабатываемую УТ10
(4) Про оперативку это самовнушение Алексея… он ищет хоть какие-то плюсы от внедрения УТ11 в данной конкретной конторе: тонкий клиент, экономия ОЗУ из-за отсутствия терминальных сессий на сервере
(5) Алексею не приходится в данном случае выбирать, как и Карлену… в этом вопросе повлиять на ход повествования не Вы Рустем, ни я не в силах 🙂
(7) Про выход из зоны комфорта точно подмечено 🙂 Картинка к статье как раз красочно иллюстрирует это 🙂
Прикольная причина, кстати. Неочевидная. Феодализмом попахивает… ;))
(1)
11 в двоичной системе = 3 в десятичной. Где тут 5?
А вообще, УТ 11 — это другое, не такое, как УТ 10 — клиент-серверное, глубокое, продуманное, непростое и т.д, и т.п. решение))) Пилил его, переработанное и дополненное до неузнаваемости, ядерное нутро три года без продыху отвлекаясь на 2-ю бухню. Было очень интересно.
А кто и зачем удаляет комменты?
(10) Именно так. Вы точно прочли «каждое слово» 😉
(12) Да да я тоже заметил… для полноты картины могу сказать что genayo писал «про трэш и угар» и о том что его нужно больше на инфостарте.
(11) Точно, поторопился. Правильно 3. Но уже не смогу изменить комментарий. 30 минут прошло. Может модераторы подправят?
получится почти как в анекдоте: … вот тогда и поймешь, что такое автоматизация, но будет поздно!
Автор предложил покритиковать, критикую. Разумеется, через призму собственных фильтров — вполне возможно, они ошибочные.
1. В комментах не стоит объяснять поведение героев. Вы, грубо говоря, стояли рядом и записывали. Не лишайте читателей удовольствия делать свои выводы и умозаключения.
2. Не совсем понял, как у вас отформатированы абзацы. То есть межстрочный интервал, то нет. Желательно в одном стиле сделать.
3. Тире не стоит заменять дефисами;
4. Следите за повторением слов в предложении. Например:
«Его босс Карлен и сам этого не хотел, однако разговоры об этом были и раньше»
Обычно так получается, когда написал половину предложения, отвлекся, вернулся и дописал.
5. Определитесь со стилем текста от автора. Например, есть такой кусочек:
«Прикол в том, что заводил…»
Выглядит чужеродно, потому что не соответствует стилю, который был выше. Стиль текста от автора может быть разным, но важно его не нарушать.
Еще кусочки: «Ежу же понятно,», «ставят в пример другим дистрибам«.
6. «безусловно, надо… она же, как». Троеточие в данном случае, вроде бы, означает конец предложения. Значит, следующее должно начинаться с большой буквы.
7. Постоянно создается впечатление, что повествование ведет черт знает кто. То ли это мысли Алексея, то ли мысли автора, то ли есть еще какой-то персонаж, еще не представившийся.
В середине текста написано «Ну ведь и похвалить то можно Алексея, все же первый раз в жизни на линухе Астерикс подымал». Вроде, сам Алексей так думать не может.
Я бы как-то отделил мысли Алексея от мыслей автора. Это несложно, но текст станет понятнее.
8. В тексте от автора, на мой взгляд, надо меньше вплетать фразеологизмов автора, вроде «здрасьте приехали». Они выглядят так, будто автор, стоявший рядом и записывающий историю, пытается внести в текст себя, свои речевые привычки и т.д. Короче, пропиариться за счет истории, которую ему поручили просто записать.
А так история интересная. Структуру упорядочить, и можно продолжать.
(5)
Обоснуйте, пожалуйста…
Мне правда хотелось бы это понимать 🙂
Мне правда хотелось бы это понимать 🙂
Если бы обосновать можно было в трех предложениях, то ни у кого не было бы вопросов, и УТ 11 не было бы на свете по этим причинам. Как раз наоборот, есть УТ 11 и УНФ. А поэтому придется решать на месте исходя из сложившихся обстоятельств.
Обе предназначены для разных типов бизнеса. УТ 10.3 больше похожа на УНФ, чем на УТ 11. Поэтому переходить с УТ 10.3 стоит на УНФ, чем на УТ 11.
Мы собираемся переходить с сильно переписанной под себя УТ 10.3 на «УТ и ВСК». И уже много чего там переписали. (не я)
Мне еще предстоит «раскуривать» всё это счастье. Кто-нибудь может поделиться опытом. В общих чертах.
Очень сложно читается текст, еле осилил.
Плюсы у УТ 11 есть, это конечно же «тонкий клиент», больше возможностей работы с торговым оборудованием, возможность вносить изменения не снимая с поддержки (расширения) и т.д. Плюсы однозначно есть и они не малые. НО есть и минусы. Особенно нужно учитывать переход с 10 версии. На памяти нет ни одного клиента с типовой ут10.3, доработок всегда у всех очень много, и вот стоимость такого перехода «Карлену» возможно обойдется очень дорого, к переходу же скорее всего нужно будет добавить и обновление парка компьютеров, так как 11 требовательнее к железу в разы. Так что «хорошее выйдет», но не сразу))
У нас руководство хочет обнулить базу, начать так сказать с чистого листа.
И есть два варианта, поставить последнюю УТ10.3 и перенести все доработки и работать в привычной среде.
Или перейти на УТ 11.4.
Сейчас изучаем УТ 11.4 и решаем, а надо ли оно нам.
(21) ну это смотря чем торговать. Есть такие товары, что только в новых конфигурациях учет вести можно. Во-первых, взять ту же маркировку — ГИСМ не за горами, пара месяцев осталась до сигарет, полгода до обуви, а там и другое заставят через систему маркировки вести. У нас вот ВЕТИС работает, в 10.3 этого нет, а УТ 11.4 умеет из коробки. Во-вторых, мы бы , например, не смогли бы жить без связки Партнер-Контрагент, без механизма соглашений с клиентами, без гибкой системы скидок и серийного учета, без синхронизации с БП 3.0. Чуть было не внедрили ячеистую систему склада, но пока отказались.
(22) Ну нас это все сильно не пугает, работаем с Меркурием и просто сами написали интеграцию. С БП 3 аналогично, просто написаны свои правила обмена.
Тут вопрос, а на сколько сильно нужна нам эта УТ 11, дописывать её все равно придется, а вот есть ли там, что то такое принципиально новое, без чего мы жить не можем и просто до этого не понимали всей прелести новой конфигурации 🙂
(4) 16 Гб оперативки на терминальном сервере, если я правильно понял посыл автора. Или вы думаете, что у них терминальный сервер и сервер 1С на одном сервере крутятся? Может ещё и sql в этой куче со всеми барахтается, и попутно все с правами админа?
(24) А я не знаю что тут думать. Можт на одном серваке всё, а может и разнесено по разным. Бывает всякое. Мне честно говоря без разницы =) Советуя, я хотел предварительно напомнить, что УТ11 жрёт больше ресурсов чем УТ10.3 )))