<?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='\
А хочется как раз мешать х32 и х64 разрядные пакеты!
Потому как разница в стоимости сервера 1С — 2 раза
И libc6:i386 разве не 32-х ?
(1) покупаете х32 сервер 1С?…
теперь я знаю кто нам клиентов поставляет )))
(1)
Мешайте, на свое усмотрение, никто не против.
(2)
Здесь говорится об установке, а не приобретении сервера.
(1) мешать смысла нет
если купили 64 то смсл от 32?
Еще раз
Есть сэд строго на linux и древней 8.3
Есть бухи, которых охота тоже на сервер
Лицензия програмная
Как поставить?)
(4) я не про статью, а про ретроградство нашего кэпа
(6)
Где тут ретроградство?) Вы пытались дать мне новые знания?)
(1)
libc6:i386 рекомендуется для драйверов, они используют 32 разрядные библиотеки
(5) согласен с 5, актуальный вопрос про активацию программных лицензий на Linux. Как с этим быть?
Дочитал до chmod 777 и вспомнил, что я на инфостарте)
(2)Клиентов поставляют вам не, кто не умеет деньги считать.
32-х сервера вполне тянут до 50 пользователей, а потом их можно на том же железе и на той же базе постгри апгрейдить до 64-х причем просто доплатив разницу
Вот и вопрос — зачем 50 т.р. вкладывать неизвестно куда
Но ваших клиентов это не волнует, они упиваются ощущением своей крутизны.
Как и вы
(10)
Бывает и такое)
(9)
Что-то люди тут пишут про программные лицензии 🙂https://forum.infostart.ru/forum86/topic213997/
Ставится только тонкий клиент, я прав?
конфигуратор открыть на Бубунту пока не судьба?
(14)
Обязательно к установке: Основные компоненты (common — пакет), (server — пакет) (client — пакет).
Толстый и тонкий клиент здесь присутствуют.
(14) уже давно подвезли толстый клиент. С добрым утром
(7) я вообще не вам, а капитану написал ))) или вы и капитан — ники одного человека? )))
(11) в каких то очень-очень узких случаях, когда в системе «3 пользователя», код оптимизирован, а еще лучше самописка с нагрузочным, функциональными и прочими тестированиями, мало данных то возникает «исключение» из правила — х32 может не спровоцировать ошибку нехватки памяти серверу 1С, но оно лишь только подчеркивает актуальность только х64 сервера 1С
мы очень часто сталкиваемся с ситуациями, когда возникает сообщение сервера о нехватке памяти серверу 1С
конечно можно рассказывать что у внедрнецев руки не оттуда растут, фирма 1С вам еще фору даст со своим «вы методологически неверно применяете»
а можно мозг не ипать, сразу купить нормальный дистрибутив — сейчас так СКД жутко закачивает таблицы с субд в оперативную память сервера 1С, что создается ощущение что разработчики впринципе забили на этот аспект
и да, я знаю что там в настройках кластера 1С есть режим экономии памяти, но он в ущерб производительности
моё личное мнение что экономить на разрядности это не экономия, а отложенная мина до момента разрастания данных выше некого порога и можно лишь планировать х32 как «покупку в рассрочку», т.е. проапгрейдиться до х64 чуть позже, когда данные распухнут
(14) как минимум с 8.3.10 конфигуратор точно открывается в линухах, сам периодически пользуюсь
Штрих-коды при такой установке печатаются нативной компонентой?
(18)
Не все у нас газпромы, а сервер нужен всем ,потому как больше 5 пользователей уже не тянет типовая УТ
Поэтому спокойно можно купить 32-х и на оставшиеся деньги под них комп
Вы же вхожи в отдел продаж Рарусов, поинтересуйтесь у них сколько они продают 32-х
Это уже будет предметный разговор
А так опять бла бла бла получается
(10) chmod +x вполне бы хватило
Ну если быть до конца точным, то создание 2х папок и распаковку файлов тоже желательно делать из консоли тогда уж
Показать полностью
(13)
Пишут что лицензию до буковки ввлжить нужно со всеми даннымм, о чем 1с раз 5 сказала при первой активации
Данные эти 1с если что дает
Вопрос не про активацию, что слишком просто, а как две версии 1с сервера крутить, при том если еще разный libcu
(21) для упоротых: продолжайте покупать х32, благодаря Вам у меня всегда будет работа
(25)
Молодой человек, что Вы так прицепились к x32, здесь никто не сказал что купил x32. Вы радуйтесь что у Вас всегда будет работа! ).
(26) старый человек, я и радуюсь
Коллеги а на Linux сервер 1С 32 сейчас работает без ключика?
(28) так и 64 работает. Зачем вообще 32? Даже в телефонах уже 8 ГиБ ОЗУ — норма.
А кто-нибудь делал авторизацию пользователей 1С из MS AD для сервера на linux? Можете полезной ссылкой поделиться? А то что-то не взлетает 🙁
(30)