<?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) не познавательно — прежде всего направлено на то что не надо «бояться «ВК»
(3) Не компонент маловато. Описания почти нет:)
(4) ну ведь я же специально ссылки дал да и по сайту очень много разработок
большое описание мне кажется делать не стоит тот кто заинтересуется почитает на сайте определится где можно использовать и будет использовать
Хм…. и это все? Я думаю даже пройдясь по сайту и набрав в поиске dushelov, надергав первых абзацев, можно сбацать гораздо более объемную и содержательную статью, уж молчу про более развернутое рассмотрение вопроса.
А что касается предмета обсуждения: COM — штатный механизм расширения функционала эски, поэтому вопрос не в том «использовать ли ВК или нет?», а вот том «нужен ли мне функционал выходящий за рамки платформы?» и «стоит ли использовать вот ЭТУ конкретную ВК?».
Негативное отношение к ВК обычно либо от незнания, либо от наличия негативного опыта, когда использование стороннего компонента превращается в сплошной геморрой, а исходников нету или исправить не можешь. Хотя безусловно, если можно получить РАВНОЦЕННЫЙ функционал средствами платформы, то ВК излишни. Фанатизм тут внедрен.
(3) прочитав статью я перестал бояться ВК, да чего там ВК, я сейчас уже ваще никого не боюсь 🙂
+5 пожелания учту
(8) улыбнуло 🙂
(3) Если «не бояться ВК» направлено на программистов — то уровень откровенно низкий (иде краткий ввод в COM и компонентные технологии вообще (шо было бы крайне интересно)? иде про передачу типов через COM? иде про тонкости реализации именно ВК под 1С?), а если для пользователей… хм.. тут еще не было статьи «Какими внешними компонентами пользуются бухгалтеры».
(10) увы опыт есть только в использовании, но не создании ВК, но статью действитьльно стоит расширить
ВК — зло! Особенно написанные под Net Framework )))
ЗЫ: Но для семерки зло неизбежное, ибо без них никак…
ЗЗЫ: На статью не тянет (простите).
(12) Чем это Вас обидел фреймворк?
P.S. mini_root.HolyWarMode = true; 🙂
Прочитав статью — начал бояться автора. Статьи как таковой нет, выводов — нет, обоснованных рекомендаций нет, кучи интересных ВКшек — нет, незачот, короче.
(14) эх я тут статью дополняю, а тут уже минус 🙂
ЗЫ «Не надо меня бояться»…
(15) Тогда повесь «Under construction» на видное место
(16) поправил
(15) дорабатывайте, выкладывайте — тогда минус может превратиться в плюс…
(0) Да, нескольких ссылочек мало.
http://infostart.ru/profile/3975/
Тем более, таких общих.
И можно было бы дать прямые ссылки на разработчиков.
В частности , Vasil aka Душелов —
Кстати, а почему Vasil? 🙂
И очень не помешали бы ссылки на примеры использования этих ВК.
Вот я, например, не испугался и сделал одну такую…
(6) > Негативное отношение к ВК обычно либо от незнания
Вот это верно почти на все 100%…
Правда,у использования ВК есть и обратная сторона.
Например, кто-то настолько привык к фичам Формекса или 1С++, что уже и не представляет себе как это без них 🙂
А клиент/работодатель по каким-то только ему понятным принчинам категорически против. Такое, наверно, тоже бывает.
P.S. С негативной оценкой ЧЕ категорически согласен.
Нормальный обзор
(21) спасибо, наполняю информацией
— очень хорошая вещь упущена:
* 1spy.dll
* vk_sleep_1C.dll
* admin1c.dll
* fakir.dll
следует, видимо, также отметить что ряд возможностей ВК «дублируются» в других ВК и основной задачей явля
Уже лучше. 😉
Стоит все таки еще добавить небольшую вводную про ввообще технологию COM+ и внешних компонент для 1С, ну и ActiveX 😉
Плюс за пропаганду ВК.
И не надо так подробно расписывать функционал (в частности FormEx), все равно что-то выжное упустишь. Лучше ссылки на первоисточники.
Плюс авансом развивай! часть два — три и тд…
(0) + к 24
Пример использования CityMap —http://infostart.ru/projects/4285/
http://infostart.ru/projects/2752/
Пример использования ICQ:
Конфигурация для 8.1, которая хранит и использует ВК:http://infostart.ru/projects/2863/
(23) (27) будет добавлено, спасибо за информацию
(0) ROM-Mail.dll, автор ROM.http://rom1c.narod.ru/rom_mail.html
http://infostart.ru/projects/1712/
Примеров использования и на сайте компоненты куча, но вот и еще один:
теперь гораздо лучше, плюсую
ВК — Зло !
Обзор не пропагандирует , а раскрывает это Зло.
Спасибо автору.
информация обновлена
Плюсую автору за проделанную работу и в надежде на продолжении или дополнении статьи
а вот такая подборочка ВК (там их штук 50 или больше) —http://www.erp-volga.com/hare/add-in/
(34) хорошая подборка, хорошие описания жаль сайт не развивается
(34) одной сслыкой, убил всю пользу статьи
(0)
vk_TerminalSleep
fakir
это поделки ромикса, а не ромы..
(34) Такие подборки приносят больше вреда, чем пользы.
Посмотри на даты ссылок.
За это время многие компоненты умерли за ненадобностью, а продолжающие жить изменились с тех пор до неузнаваемости.
(38) Не стоит воспринимать плюс на 38-м комменте как подхалимство, просто реально прав человек…
(37) поправлю, это ник меня смутил romix
у Душелова, пусть он на меня не обижается, много ВК, но абсолютно бесполезных в использовании или имеющих ограниченный круг использования. Сразу видно, что человек неплохо разбирается в данной теме, я б ему подсказал пару интересных коммерческих идей, где его таланты можно использовать 🙂
(41) Большинство моих разработок — это накопления опыта и изучение технологий. Кому интересно — могут использовать в своих целях.
(38) я же не привел эту ссылку как панацея — каждый в самом конкретном случае решает,что и как ему внедрять, а вдруг кому-то пригодиться и то, что там есть — Вы же не можете утверждать , что все, что опубликовано на http://www.erp-volga.com/hare/add-in/ — на данный момент нерабочее или вредное. А пост (34) больше был написан для автора статьи — если он уж взялся за полезное общественное дело обозрять имеющиеся ВК.
(37) поправил, немного добавил
(0) Вот теперь плюсик! 🙂
Кстати, еще бы над оформлением поработать… Например, логотипчики ВК (там, где они есть)
(0) > Функциональная часть у многих ВК похожа, поэтому следует слишком увлекаться их использованием
Кажется, тут надо подправить 😉
(46) мне кажется вообще убрать, разработчик сам определится
Хороший обзор. Но, как мне кажется, смешивать ВК для 1С и ActiveX не стОит.
Хороших АХов ой как много, а чтобы они работали в 7.7 нужна 1С++ и всё.
1sqlitehttp://infostart.ru/projects/2127/ от Саши Орефкова
(48) выделю отдельно, если текст статьи будет получаться большой тогда сделаю несколько статей, а то мне показалось не совсем удобно читать много текста
(49) добавлю, спасибо!
(0) Роман aka romix
неправильная ссылка дана
+51http://infostart.ru/profile/3105/
(49) добавлено
(51)(52) поправлено
ссылки, примеры работы с ActiveX перенесены во 2 часть статьи
Еще добавь Hogik
http://infostart.ru/profile/2905/
http://infostart.ru/projects/811/
http://infostart.ru/projects/1359/
http://infostart.ru/projects/1725/
Автор:
DBEng32. Клиент/серверное использование DBFной версии 1С:Предприятие 7.7
Kernel3x — решение проблемы 1 гигабайта для DBFной версии 1С:Предприятие 7.7
А по 8-ке German
http://infostart.ru/profile/4379/
http://infostart.ru/projects/782/
http://main.1c-ei.ru/
http://groups.google.ru/group/enterprise-integrator
Enterprise Integrator
to MrDen
Что бы не засорять комменты, я некоторые мелкие замечания буду писать в личку.
Кстати, сегодня в 13:13:02 уже отправил одно 🙂
Проверяйте почаще, а еще лучше Джаббер подключите — очень оперативно получается.
(54) добавлено, (56) учтено, спасибо за поддежку
Ссылка с текстом «OLAP Анализ счёта» ведет на совсем другую разработку
Пожалуйста, не надо коверкать мою фамилию.
Если не знаешь точно, лучше вообще ничего не писать.
(59) Steban, приношу свои извинения, ни в коем случае не хотел обидеть,
информацию брал из закладки «О программе…» 1C++
(58) спасибо поправлено
>информацию брал из закладки «О программе…» 1C++
офигеть!
и правда.
разберусь
(60) вот тут написано правильно:http://www.1cpp.ru/docum/icpp/html/1cpp.html#id11
в «О программе» 1с++ исправил. в завтрашнем ночнике будет
(62) увидел спасибо поправлю
Название статьи:
Стоит ли использовать Внешние компоненты для 1С?
Прочитав все комменты, не увидел обсуждение вопроса безопасности.
Кроме того, что внешняя компонента может делать все, что угодно в пределах локального компа и сети (конечно, то, что разрешено пользователю), ВК также легко могут работать с и-нетом.
Пример, последний драйвер устройств ввода Атола (scaner1c.dll). Кто использует торг. оборудование с этими драйверами, попробуйте настроить фаервол и посмотреть, что происходит в момент подключения ВК (в то самое время когда 1С-ка «подвисает» на несколько секунд).
Вы увидетие, что идет отправка байтиков на конкретный адрес. При чем для системы это 1С-ка лезет в и-нет.
Конечно, мы доверяем доброму атолу и понимаем, что это идет проверка легальности dll-ки. А доверяем ли мы «Зеленому зайцу», выкинувшему в нет ВК, якобы ускоряющую работу 1С, или реализовавшую аську через 1С? 😉
Если на вашем фаерволе открыт доступ в и-нет для 1С, то любая ВК может выгрузитьзагрузить что угодно. А для 1С часто открывают доступ, т.к. нужны обновление отчетности, кладр, аська, маил, выгрузка инфы на сайт и многое другое.
_______________________
Ну и еще уже не раз говоренное: 1С и так порой ведет себя не предсказуемо, не смотря на её «обкатанность». Переносишь работавшие несколько лет платформу и конфиги на аналогичный сервер, и че-нить да глюканет, пока с бубном не попляшешь. Что лукавить, большинство легально купленных ключей лежат в столах, а 1С робит на пропаченных exe-шниках (имеется ввиду 7.7).
Добавьте к этому не известно как и не известно кем написанные dll.
_______________________
Так что можно ли и стоил ли пользоваться тампакс, решает каждый сам для себя на свой страх и риск.
Это не значит, что я против. Ведь то, что без них порою ни как — факт.
Но у всего есть плюсы и минусы.
И осторожных берегут и бог и они сами себя.
Я например в важных для меня сетях не использую ВК, полученные из и-нета в чистом виде. Использую только те, котрые сам разработал или скачал, изучил и сам скомпилировал исходники.
(64) конечно можно углубиться и в тему безопасности, и попробовать IDA декомпилировать ВК, сетевым монитором проанализировать пакеты при работе и тд. и тп. РИСК всегда есть
Файрвол удобная вещь, увы не многие им пользуются.
Будет ли программист использовать «сторонние» ВК или не будет и разработает сам, решать ему.
К сожалению помимо «непонятных» ВК существует множество вредоносных программ.
Прикольно…)))
Прикольно не то, что один чел под разными именами входин на форум и сам себя хвалит.
И не то, что в форуме «программистов» (а 1с-ники в большинстве считают себя ИТ-шниками, а даже больше того — программистами) не одного логического довода.
Прикольно то, что юзеры знают основы алгоритма сжатия леера и быстрой сортировки, знают как подсчитать эфективость экселевского алгоритма подбора значения (по количеству итераций).
А программеры на местном форуме не то, что алгоритмы сортировки или сжатия, не умеют фаерволами пользоваться.
Ida — не модное слово для понтов, а необходимый инструмент.
Извините, случаяно забрел на форум в не трезвом виде.
Но ребзя, вы называете себя Программистами. Программист это как бог из ничего, грянув словом, что-то создает.
И обсуждая «стоит ли пользоваться»…, пля, чую в свои 35 я упустил что-то. Вы, как говорили в мое время, лохи.
Вместо сериалов и онлайн игр, учиться бля, учится и еще раз учиться…
еще раз сори, за эмоции.
(66) Квалификация у программистов и пользователей бывает разная.
Главное чтобы они знали и делаи то, что входит в их служебные обязанности 🙂
Админы, забаньте меня, чёб я пьяный на форум не ходил и всякую хрень не писал )))
(68) не самое ужасное, что в жизни бывает 🙂
(68) До сих пор что ли пьяный? У тебя запой 💡
Для меня 7.7 умерла уже как три года назад! Вместе со своими компонентами.
Конечно есть люди и на ДОС 3.0 до сих пор работают.
(71) для меня 8-ка еще не родилась. потому как работает то что надо, а перенести уже имеющийся функционал в 8-ку или реализовать его 8-ными типовыми возможностями — почему-то очень долго или очень дорого. В п…у!
Спасибо за обзор.
Еще одна компонента для коллекции:
ROM-Chart, Внешняя компонента деловой графики,
http://rom.kiev.ua/main-projects/rom-chart-menu
И еще одна компонента, написал ее Валера Васильев. Я же поучаствовал только в разработке концепции, помогал советами, тестировал и попросил добавить несколько методов.
http://support.at.ua/
Итак, компонента для интеграции 1С и Астериск — VVSAst.dll
Сайт поддержки внешней компоненты —
(73)(74) учтено
Покупает скажем человек Ладу «Калина» а ощущение неполноценности(то ли человка, то ли автомобиля) его не покдает. И он начинает её «обвешивать»-тюнинговать. (спойлеры, «пластмасски», тонировки, ксенон, сидения, лампочки, висюльки). Только вот в чем беда. Как была это Лада Калина, так и осталась. (Лада калина — читай 1С, ВК — читай тюнинг).
ООО «Дарумсан» — делает деньги. И почти сразу переложила расходы на покупателей.
ВК — лишний раз подтверждают некоторую неполноценность 1С (хотя нет предела совершенству).
100процентная загрузка ядра при блокировки — что трудно 1с ядро поправить.
«Дарумсану» это не важно.
1С 7.7 вообще не поддерживает Unicode — «Дарумсан» наплевать как вы будте выкручиваться и убивать раскладку клавиатуры ctfmon.
(я не прошу никаких украшательств. Ядро кривое, и ООО»Дарумсан» не интересно это)
(66) Ты подменяешь понятие Одинэсник понятием Программист. Это не одно и тоже и поэтому некорректно.
Я не программист, я одинэсник. В части программирования это более узкое понятие (поэтому я не знаю основы алгоритма сжатия леера и быстрой сортировки), но более широкое в части совмещения других профессий.
Спасибо, познавательная статья.
Совсем недавно стала пользоваться ВК ,но они намного облегчили мою работу.Поэтому как пользователь я «за»
Посмотрим, как это применимо к платформе 8.2
Если бы ТС к публикации приложил дистрибутивы всех ВК, тогда ему б цены не было!
Такую бы статью и для 8.2 не плохо бы почитать.
ничошный обзорчик)) в свое время тоже калялкал свою «ВК» на дельфи) изврат конечно, а что делать)а про 8,2 правильно отмечено. было бы интересно глянуть надстройки на актульной платформе. автору спасибо, надеюсь обзор для 8.2 не загорами
Большое спасибо! Очень интересно и позновательно!
с удовольствием прочту что-нибудь еще на эту тематику! ))
интересная статья
Присоединяюсь к респекту разработчиков ВК. Но только к этому.
ВК очень нужная вещь, так как с помощью функционала внешних компонент стираются ограничения языка 1С!!!
Мне как новичку статья очень понравилась. Спасибо. Хотелосьб увидеть такую про 1 с 8.2.
На мой взгляд, безопасность ВК — важная тема, может быть кто то накропает развернутую статью на эту тему?
А скажите есть ли аналог RWidjets (Динамические панели, меню программы) для 8.x? Или желающие сделать его, я уже обратился к автору с предложением профинансировать, однако пока полное молчание
(82) BalVlad,
Да, точно… для 77 написано столько всего всякого прикольного, а для 8, по идее, должно быть ещё больше, и, хотелось бы, чтобы все разработки систематизировали в одну кучу и каждую описали