<?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='\
Мне кажется чайников этим видео не спасти 🙂
На самом деле, думаю, что это информация будет полезна не только чайникам, но об этом тссс…))
заинтриговал )))
Очень полезное видео,спасибо за идею записывать видео для юзверей!
Спасибо за положительный отзыв! ))
http://infostart.ru/public/70811/files/
Также хочу обратить внимание, что в данной публикации 3 файла для скачивания, судя по тому, что скачиваний главного файла больше, чем остальных — их не замечают. Остальные файлы можно скачать отсюда:
youtube.com а качать и запускать ехе стремно и лень
про ютуб — хорошая мысль ))
(7) Да, сделай пожалуйста через онлайн просмотр.
(0) И ты примерно дай пожалуйста список тем видео. А то
мне ни о чем не говорит.
Скачал пока только 1-ый файл. Нормально, только на 20 мин информации маловато (слишком затянуто). Но все равно + за попытку.
То, что для чайников 3 файла, я заметила 🙂 , но скачала только 1, т.к. на попытке скачать второй файл, вышло сообщение: превышен лимит скачиваний 🙁
А о чем хоть видео?
+ за идею и за труд.
Вот только поддерживаю (6), правельно подметил екзешник стремно запускать, продублируйте копию на ютуб или в другом формате.
Список разбираемых тем в уроках:
Урок 1.
1. Работа с формами списка: изменение ширины колонок, видимости колонок, местоположения колонок, высоты строк.
2. Сортировка в таблицах
3. Поиск.
Урок 2.
1. Отбор в таблицах (журналах, справочниках): быстрый отбор, отбор по нескольким критериям, применение различных вариантов типа сравнения.
2. История отбора.
3. Способы выбора в поля.
4. Настройка правил позиционирования курсора при открытии формы таблицы.
5. Настройка правил установки иерархического просмотра при открытии формы справочника.
Урок 3.
1. Работа с отчетами: группировки строк и колонок, отборы, дополнительные поля, расшифровки, сортировка и т.д.
Молодец, то что надо !
Спасибо !
Давай ЕЩЕ !
плюсую идею и присоединяюсь к просьбам об альтернативном формате.
кстати, вирусов в файлике не находит
http://www.virustotal.com/ru/analisis/0a28076f764d85da6ba36f21a405ccbfdb4cc83568c8 5b5825bbb4f4ebf3cbf6-1274855206
но все равно, видеоформат был бы удобнее для организации, например, сетевой трансляции через VLC
Уговорили – сделаю уроки в видео формате. ))
А слабо сделать интерфейс конфигурации таким — чтобы такие уроки не публиковать 🙂 ?
20) Очень правильная позиция, так и делаю, но только у самых любимых – дорогих клиентов, с которыми работаю постоянно и давно. Но все-таки это требует существенных усилий, как творческих, так и профессиональных.
А с помощью чего ты пишешь эти файлы, хотелось бы то же для своих пользователей создавать такие файлы, что бы было по меньше вопросов.
пишу этой прогой:
http://www.uvsoftium.ru/UVScreenCamera.php
Конечно, плюс. Это помощь чайников к спасению. Реально их спасет только практика.
В свое время делал презентацию в картинках для пользователей, как обращаться с 1С 8. Теперь дам им видео урок. Спасибо!!!
Спасибо. Конечно +.
большое спасибо, очень актуально для освоения. +
Пока не смотрел (: но скорее всего возникнет такое пожелание — добавить субтитры. На 90% офисных компов нет колонок.
ОПРЕДЕЛЕННО нужны субтитры!
(28), (29) У UVScreenCamera есть возможность редактирования ролика со вставкой субтитров и т.д. Дерзай 😉
(28), (29), (30) Я подумаю, но вряд ли – нет времени, да, и мне кажется — это не стоит того… Хотя, конечно, приятно, что есть положительные отзывы и плюсы ))
(31) Кстати, забыл поставить плюс — ставлю.
http://infostart.ru/public/59436/forum/topic/28936/
Для чайников очень полезно. А субтитры, действительно, не лишние будут: в 95% случаев колонки как раз только у прога и стоят. Юзверь с колонками — это только, если свои принесет.
Вот смотри:
Уважаемый автор, а нельзя ли добавить след. функции/методы:
……………………………….
3. реализовать-то наконец работу с биппером beep(частота,длительность).
Как думаешь, зачем? 😉 Как раз по причине, что звуковуха сейчас везде стоит, а вот команда Сигнал() уходит в никуда из-за отсутствия колонок
(32)(36) опять ИС глючит…дальше первой страницы не пускает…
(30)(34) А скомпилированные ролики править можно?
(31)(35) определенно стоит оно того! иначе мало чем отличается от Эффективной работы с 1с 8.0
(33) Через Файл-Импорт, кажись, можно. Попробовал — вроде получается, но дальше не колупал. А лучше попроси автора выслать (загрузить) сами проекты (*.upr)
Че-то не скачивается ничего-то…((((
да, файлы скачиваются битыми, как исправить не знаю…
(36) да, это ошибка портала, работаем над этим, до 8мб должно быть нормально.
Понятно, сейчас попробую перекомпилировать файлы в меньший размер.
Все проблемы решены — файлы скачиваются.
Вин2к сервер:
http://rghost.ru/3306611/image.png
Спасибо..
Спасибо, для начинающих пригодится, хотя сам уже пошёл дальше…
Во, то, что искал, пригодится, я думаю, надо добавить ссылку в избранное…..
ничего так.
скачалось нормально,полезно,в 8-ке многоскрытых возможностей
А чудесная акция будет иметь продолжение? Например на другой управляемый интерфейс? 🙂
(46) Vond, Обязательно, как только появиться хотя бы один клиент активно использующий какую-либо конфигурацию на управляемых формах. ))
Большое спасибо за видео… Просмотрела все 3. Кое чего не знала,а это сейчас как раз вовремя-переходим с 7-ки на 8,2-кое какие хитрости взяла на заметку.
(48) salli80, пожалуйста! ))
а есть чтото подобное с задачами посложнее (изменить печатную форму, например…)?
Почему же раньше не находилось… Полезные туторы. Хотя с этого года уже перешли на УТ11. Сейчас вот есть задача поменять внешнюю печатную форму, плотно не разбирался, но сходу не получилось найти как поменять, чтобы ничего не сломать «)
Спасибо,планируется продолжение?
Жаль всео 3 урока..Книг у нас по8-ке УПП нет ,работать очень трудно.Но и на этом спасибо))
Есть огромный видеокурс, охватывающий все подсистемы УПП. Лучше сделать вряд ли возможно:
http://www.nasf.ru/uppall-base
У меня есть чудный курс обучения по 8.2 только весит 6 гигов(((, он по программированию с самого начала если кому интересно могу выложить на какой нить файлообменник
Если это стыренный курс Гилева, то здесь не надо ничего выкладывать, кроме ссылок на их официальный сайт…