<?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='\
Идея хорошая, но денех не дам ни копейки!
🙂
+1 тем более, что и так всё прозрачно…
(2) Более чем ;))
(1,2) Так продаю я не программистам, а пользователям! 🙂
А программисты могут сами дописать недостающий модуль (код весь открыт — даже кое-где комментарии остались…)
(4) Действительно, блин ну все такие умные, надо вставить свои пять копеек, вам прозрачно, другим нет.
to Ёпрст и vip
Сделайте сами и выложите бесплатно. Честное слово, плюсик вам поставлю!
🙂
Народу пофиг до «горячих клавиш» им чуждо кнопкой мыши нажать…
помнить в голове Ctrl+Alt+E и т.д. емкостно) и так ошибок много делают, а под горяченькое вообще затупят)
(5) Там 90% кода есть, самое основное — в доп. глобальном модуле, вся структура хранения/открытия написана… кинуть форму, написать код заполнения ТЗ — не составит никакого труда..
(6) Нафига ? Автор мот, разбогатеет, уедет на пмж в ГОА и забудет 1с навсегда… зачем ему мешать? ..
🙂
(8) не допустим утечку мозгов! 🙂
(6) 1. Уже много лет не представляю работы без FormEx и 1С++
2. Все давно сделано и работает в моих проектах.
3. В плюсиках не нуждаюсь.
4. (7) абсолютно прав. Приживаются 2-3 хоткея, не больше.
(10) а можно как-то где-то увидеть Ваши проекты?
(11) А как ты себе это представляешь?
Заказчики заплатили (и платят) мне деньги, работают со своими уникальными алгоритмами ведения бизнеса, а я взял и вывалил все г-ну Altair777?
И заработал плюсик.
(12) или минус, смотря что Вы там наваяли и вывалили
(12) Ну хотя бы пример уникального алгоритма, а то уже не раз слышу что ты пишешь всё сам с нуля, делаешь что-то уникальное, но ниразу не видел. Любопытно однако.
(14) Уникальное стоит денег, на то оно и уникальное.
А плюсы и минусы мои дети не едят.
Горячие клавиши для пользователя????????!!!! Да они F9 запомнить не могут 😉
(16) за почти 3 года пребывания на ИнфоСтарте…
ни одной статьи!
ни одной разработки!
и даже ни одной шутки юмора! 🙂
(15) Прав.
Я тоже когда-то верил в чудеса. Бил линейкой по рукам, если трогали мышь.
Клавиши запоминают только при очень интенсивной работе.
(17) Ну, с твоим искрометным юмором не сравнится никто.
(19) кстати, Игорь (biv75), я не рассказывал что моя конфигурация работает в одном очень крупном банке, они мне регулярно бабло отстегивают, но это тайна…. тсссс… никому не говори… а конфигурация такая крутая!!!
(19) Ты от темы не отвлекайся, по существу вопроса ответь, как можно ознакомиться с твоими работами и поучиться на них.
(20) Это типа образчик твоих великолепных шуток?
(20) Даааа… ну надо же… я и не знал, всё теперь после того как ты мне рассказал…. почет и уважуха тебе Альтаир.
(21) Я именно в теме.
В учениках не нуждаюсь.
И в рекламе тоже.
(24) вот сегодня одной «дамочке» написал
Вас, vip, это тоже касается
> что бы ссылаться на то, что Вы девушка — предоставте неоспоримые доказатальства этого.
> Не можете или не хотите — не ссылайтесь.
(24) Да мне фиалетово в чем ты нуждаешься, а в чем нет, ты покажи что ты не только болтать умеешь, а ещё и что-то реальное можешь делать, а то одни слова, а ник vip, вроде как с притензиями на серьёзность.
(20) и (23) Петросян и Дубовицкая.
Зал рыдает от смеха.
(27) да, клоун, над тобой
Опаньки…
вот это да — попала ни в чем не повинная обработка «под паровоз»
Люди, давайте что-ли по теме выскажемся, а перепиской надо в личке заниматься.
ЗЫ По теме ваших препирательств: поддерживаю Altair777 и biv75.
(29) так по теме и есть, хочу чтобы товарисчь за базар ответил, и всем показал кокой он умный, вот Ёпрсту верю, вижу, знаю.
(30) Мне не надо показывать, какой я умный.
Я просто умный.
И серьзный. Без прИтензий на серьёзность.
(30) ну Ёпрсту и я верю: «сталкивался» с ним тут и на мисте — и в предметной подкован и человек хороший…
(31) Вот оно как оказывается «Я просто умный»
«Мы, великиё люди, манией величия не страдаем»
Брэк! biv75 мне веришь? Там чё-нить мое на инфострате видно?
(34) я вижу :))
http://infostart.ru/profile/1329/projects/
(35) Вопрос в основном был «веришь — не веришь?» 😉
(34) лично я тебе верю… но vip’у — нет…
И почему я, собственно говоря, должен верить?
Если бы он сказал, что он просто хороший парень, я бы не оспаривал.
А так…Еще один г. от 1С? 🙂
(34) Конечно верю, не вопрос ))
(36) Он просто хороший парень 🙂
+39 И знатный программист 🙂
(38)Так вот: мы с ним частенько кодами обмениваемся. Окончательный приговор vip-у мой такой — ОЧЕНЬ УМНЫЙ 😉
(40) сейчас форум почитаю, может он людям помогал? хорошими советами 🙂
хм… за 3 года 102 сообщения…
(42) ааа!!! это сговор! 🙂
Вот и хорошо, что все выяснили…
Но давайте сменим тему и начнем комментировать обработку.
(44) Про обработку: молодец, правда я уже давно такое сделал, но только для себя любимого, юзвери даже и не в курсе (еще обезьянам гранату давать!))))
А плюс поставлю — молодец
(40) Висилий, поверю тебе на слово, вот ты как-то об этом знаешь что он знатный программист, а остальные как-то не особо в курсе. А когда человек который ничерта не выложил, начинает говорить что он такой проф, что даже не готов со мной засранцем, поделиться, ввиду того что он делает нечто этакое… что при попадании в широкие массы перевернёт все мировозрение на постановку учета…. это как-то настораживает.
(46) Когда делается «для себя» не факт, что подойдет всем.
(45) у меня только «продвинутые» юзвери пользуются обработками такого плана…
ЗЫ я тут еще «таскменеджер для 1С» пишу (по типу Альт-Таб) — скоро выложу.
боюсь, как бы не создали прецендент…
скоро количество «гениев» превысит количество нормальных людей
по сабжу: имхо, вещь полезная
а как решена проблема «глобальных» хоткеев из других приложений?
(48) ну, раз он плюсанул, разовью мысль
А не надо что бы всем, только таким же умным, как и он.
Или таких больше нет?
(48) Самое не правильное, когда принаписании разработки она пишется так что работает только в той компании для которой её пишут, я не умный, поэтому пишу решения так чтобы они легко тиражировались и подстраивались под любое предприятие данной отрасли. Видел таких умных программистов, без участия которых потом программа хрен работает, потому что она на столько «грамотно» написана под конкретное предприятие.
Abadonna и Душелов — спасибо ;))
(46) Я не занимаюсь попаданием в широкие массы. И не собираюсь этим заниматься.
И никогда не говорил, что я «такой проф, что даже не готов со мной засранцем…» и далее по тексту.
(52) вот так бы сразу и сказал —
«Я работаю начальником ВЦ, а когда меня Василий или Аркадий просят помочь, я вызываю прогера, даю ему задание и он все делает.
А потом я обмениваюсь кусками кода. Хотя они мне нафик не нужны, потому что я в этом все равно ничего не понимаю.»
(0) По поводу разработки. Плюсик за пропаганду FormEx.
По поводу широких масс и прочего.
Помощь — О программе… — FormEx — Мои благодарности — Верхняя строчка
Как думаешь, справлюсь я с хоткеями? 😉
(49) никак — видать ограничение платформы. Альт-Таб первой ловит сама винда, F1 — сама платформа…
все что смог сделать — создал список самых популярных хоткеев и вывод предупреждения «выбранный хоткей может использоваться системой…»
(54) ничего не значит
если бы это было написано в «В компоненте использован код и наработки:»
> Благодарность: Ерохину Андрею aka vip за неоценимую помощь в тестировании.
я вот тоже тестил чужие разработки, но не уверен, что смог бы их написать
(56) Свой код я использую в своей компоненте и охотно делюсь с программистами. Но не с флудерами и клоунами.
На, если хочешь.
http://www.forum.mista.ru/topic.php?id=352834 пост 10.
Много еще могу накидать. Только зачем?
(58) А как твоя компонента называется?
А кроме благодарностей ты за тестирование и идеи ты что-то создал?
Ты думаешь что я не программист? Забавно 🙂
А я как раз думаю, что клоун это ты.
(59) Моя ВК называется semen.dll. Семен это мой кот.
Не распространяется и не продается.
Идея — это значит готовый рабочий код.
На еще цитату из als DialMail
Синтаксис
СистемноеМеню
Назначение
Идея и реализация принадлежит Андрею Ерохину.
Позволяет управлять видимостью ситемного меню 1С. При присвоении реквизиту 0 меню скрывается, при 1 — появляется.
Доступен по чтению и записи.
Повторишь, программист? Или ты адынэсник?
Скаламбурю, сам бог велел: Noyev ковчег получился, места мало, зверья много, все грызутся :)))))))
(60) Ясно.
Все настолько секретно, что его как бы и нет. А, может, и правда нет?
Я не разбираюсь в уничижительных терминах.
Объясни, чем «адынэсник» отличается от инженера-программиста?
(61) Точно. :)))
Ща Альтаир применит свой последний коронный довод — наставит минусов на каждый мой пост и удалится.
Зверье медленно успокоится и сыто порыкивая, разойдется по углам.
(63) Дурачок ты просто. Я так сделал только 1 раз и то не на все.
(62) Никаких секретов нет. Просто широким массам это абсолютно не нужно.
> Объясни, чем «адынэсник» отличается от инженера-программиста?
Я не инженер-программист, я инженер-механик.
(63) И ответь за свои слова. Где и когда я так делал?
(66) Если ты не оазбираешься то зачем сам вопросы задаешь?
(60) > Повторишь, программист? Или ты адынэсник?
(66) Ну так бы сразу и сказал, что ты инжинер-механик, а я с тебя пример разработки трясу, глупость какая.
(65) см. свой же (64)
Дурачок у тебя в штанах. Я тебя не оскорблял.
(68) Игорь ты не прав.
Это великий человек, он мало того, что пишет великие разработки, но и заботиться о широких массах.
Нигде не показывает их, что бы эти самые широкие массы не сошли с ума от знакомтва с ними.
(68) И Abadonna инженер-механик. И АЛьФ.
Тенденция, однако…
(68) Между прочим, АЛьФ и я тоже инженеры-механики :)))
А Ероха гонит, технология машиностроения, куды вам до нас, конструкторов, бе-бе-бе :))))))))))))
(68) Да и я инжинер радиоэлектроники, но я могу показать что я умею как программист, а ты стесняешься.
(70) Я не забочусь о широких массах.
Я забочусь о своих работодателях.
(70) Вот этот факт ещё больше разжгает мой интерес, я алчу этот шедевр (или хотя бы часть шедевра) увидеть и оценить
to vip
Я повотряю свой вопрос! Где и когда я и так делал?
> Ща Альтаир применит свой последний коронный довод — наставит минусов на каждый мой пост и удалится.
Я обвиняю тебя, что ты ты оклеветал меня публично
(73) А что конкретно тебя интересует?
Перенумератор нарисовать?
Или есть вопрос, который давно мучает, а решения нет?
Спроси. Если смогу, отвечу.
(76) Я вроде понятно ответил в (12)
Зато Ноева разработка все время в топике :)))
Ты им всем спасибо скажи 😉
(78) а теперь ответь за свои слова
Я обвиняю тебя в клевете
(75) Я ПОВОТРЯЮ свой ответ см. свой же (64)
Обвинитель, мля.
(81)
(63) Ща Альтаир применит свой последний коронный довод — наставит минусов на каждый мой пост и удалится.
(64) Я так сделал только 1 раз и то не на все
Я ПОВТОРЯЮ СВОЙ вопрос
если я минусанул 5 сообщений (не все ее в ветке, а только те, которые этого заслуживали) от некой не уравновешенной особы, это тебя дает основания утверждать, что это мой КОРОННЫЙ номер?
(82) Сам задаешь вопросы, сам же отвечаешь…
Типичная известная черта инженера-программиста 1С.
А насчет оскорблений…
Если ты считаешь слова «клоун», «дурачок» и т.п., уважительными по отношению к взрослому человеку, имеющему внуков, то у нас несколько разные понятия о порядочности.
(83) > Если ты считаешь слова «клоун», «дурачок» и т.п., уважительными по отношению к взрослому человеку, имеющему внуков
Ну нет у меня внуков, так тебе поэтому можно говорить обо мне как о клоуне?
см (58)
(85) Ты меня утомил.
Да, ты типичный адынэсник. С типичной чертой — тупой. Очень.
(85+) Тема клоунов впервые прзвучала в (28).
Вы еще подеритесь, горячие финские парни :))))))))
(88) Тема юмора впервые прозвучала в (27)
(87) Ладно. Разберем пост (82)
> Я так сделал только 1 раз и то не на все
Так сделал или нет?
> если я минусанул 5 сообщений (не все ее в ветке, а только те, которые этого заслуживали) от некой не уравновешенной особы
Так минусанул или нет? (и попутно продолжаешь оскорблять даму)
> утверждать, что это мой КОРОННЫЙ номер?
А что, определено количество минусов, после которого наступает коронность?
Мне показалось достаточно коронно.
(91)
Для особо умных повторяю это было 1 раз, и минусовал я не ВСЕ сообщения, как ты написал, а некотоые неправильные
Коронность номера зависит не от минусов. Посмотри в словаре. Если у тебя нет словаря — В словаре Ожегова:Коронный (3) — Лучше всего удающийся.
А одноразовая акция, причем не та, которую ты описал, не может быть КОРОННЫМ номером.
Или тебе лучше знать? Как там у вас на манеже считают? 😉
Да… Доплыл Ной до горы Арарат и подумал: «А на х@я?» :)))
Ну перенесите поле боя, блин
(97) Это ты про какую Наташу? Ссылку дай.
(100) На.
http://infostart.ru/sites/698/index.php?p=2&id=698%2F#comm
(102) И в чем издевательство?
В этом?
25. Altair777 07.04.2009 13:53:18
(0) Вы рубрику не перепутали?
Один абзац, даже самый последний, можно было как-то попроще написать.
(105) Нет. Пост (22)
Хотя ты и не мог понять причины появления этой ветки, т.к. симптоматика у вас схожая.
(109) И что такого в посте (22)?
И Артур тоже издевался? Он тоже болен?
А ты единственный здоровый?
22. Altair777 07.04.2009 00:51:39
(16-20) какая содержательная беседа 🙂
23. artbear 07.04.2009 12:41:55
(16-20) Что это?? 🙁
Что курим-то или все-таки пьем?