<?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='\
Первый коммент 🙂
Спасибо автору, получил клиента на 3.0, у которого нет даже завалящего материального отчета, а мой в УФ не работает конечно, вот эта статья помогла пока выкрутиться.
НЕ представляю что делать — конфы все нетиповые у клиентов. Визгу будет. Сижу уже сейчас в поте лица и готовлю 3.0.
Лишь бы не появилась какой -нибудь 3.1
спасибо, теперь не так страшно. Клиенты все равно будут в шоке.
А что делать с доп. печатными формами? То же самое, что и с обработками? Но как их тогда подключать?
Ни у кого не вылезала следующая ошибка:
{ОбщийМодуль.ОбменСообщениямиВнутренний.Модуль(424)}: Ошибка при вызове метода контекста (ПолучитьОбъект)
ЭтаКонечнаяТочка = ЭтотУзел().ПолучитьОбъект();
?
(5) WildFire, была такая ошибка, добавлял попытку/исключение. Не помню причину, но ЭтотУзел() возвращал Неопределено.
//2013-07-16 НАЧАЛО
Попытка
//2013-07-16 КОНЕЦ
Если ПустаяСтрока(КодЭтогоУзла()) Тогда
ЭтаКонечнаяТочка = ЭтотУзел().ПолучитьОбъект();
ЭтаКонечнаяТочка.Код = Строка(Новый УникальныйИдентификатор());
ЭтаКонечнаяТочка.Записать();
КонецЕсли;
//2013-07-16 НАЧАЛО
Исключение
КонецПопытки;
//2013-07-16 КОНЕЦ
Я кстати сделал то же самое, только еще добавил «Сообщить» в исключения, чтобы посмотреть, что там за фигня такая вылезает. Так вот, в строке сообщений не было ничего, даже самой панели сообщений не вылезло! 8-О то ли эта строка в УФ выглядит как-то иначе, то ли я чего-то не понимаю.
(2) krenefff, Скоро появится,, токо для платформы 8.3, а не 8.2))) Но пока последнее не стоит на него кидаться))) Иначе все бетаТестерами будем)
(8) Bukaska, Хотелось бы по-подробнее узнать про 3.1, где можно найти такую информация? А то может пока что не стоит сильно доработанные 2.0 на 3.0 переводить?
(9) Lejlka, Дело в том, что если переводить на бух3.1, то и платформу ставить 8.3
Так что всё равно пока что на 2.0 или 3.0 придётся сидеть.. мы так всех будем переводить на треху.. у кого платформы 8.2 стоят)))
(9) Lejlka, бух 3.1? 😀 это не та ли что дурманила мозги прогерам лет так 14 назад?http://1c.ru/news/info.jsp?id=528
где вообще такая инфа появилась про новую бух 3.1?
Добрый День! Не нашел информации по этому пункту в интернете. Ткните носом плиз.
5. Дополнительные отчеты/обработки.
Необходимо переделать для работы в управляемом приложении (примеры на инфостарте).
(9) Lejlka, Думаю можно ещё подождать.. Тем более что 2.0 оставили поддержку.
зачем двойная нагрузка клиенту, сначала с 2.0 на 3.0, А ПОТОМ С 3.0 НА 3.1.. По сути и 3.0 недолго проживет.. в середине года 3.1 должна выйти.. она пока что ещё наверняка бетка.. доступная токо для партнеров.
ЗУП 3.х я уже видала.. бух 3.1 — пока что нет, но знаю что будет)))
(13) Bukaska, скорее уж 4.0, чем 3.1 =)
Из-за чего может возникать такой глюк см фото?
(15) webresurs, возможно из-за разрешения экрана…
(15) webresurs, размер текста и элементов в системе увеличен. В windows 7 эта настройка делается тут:
(17) по умолчанию 100%
(13) Bukaska, подскажите где подтвердить инфу о том, что поддержку 2.0 оставили?
(19) asg1975,http://1c.ru/news/info.jsp?id=17400
(12) danil157,http://infostart.ru/public/76427/ всё делается по аналогии.
сори, дубль
Даже страшно думать, как будем переходить на БП3. Много доработанных внешних форм, которые необходимо переделывать для УФ, некоторые изменения типового функционала…
Подскажите, пожалуйста, у Вас в статье написано, как я понял, что при переходе с версии 2 на 3 , если БП 3 запускать в режиме Толстого клиента, то все обработки и отчеты из БП 2 сохранятся, кроме внешних. А если все внешние отчеты и обработки поместить непосредственно через Конфигуратор в ветвь метаданных, то из БП 3 через меню можно будет их открыть? Спасибо
Спасибо огромное, очень подробно описаны многие проблемы. Интересно было-бы узнать подводные камни при настройке обмена УТ10,3 — БП30. Правила конвертации и регистрации существуют, но наверняка необходимы определенные настройки.
Спасибо за информацию, переход на БП 3.0 перенесли на следующий год (2015) что дает время переписать все нужные отчеты и обработки.
В нашей организации РИБ и куча внешних обработок, поэтому переход мне снится в кошмарах. Пробовала на тестовой, итог -все обработки переделывать…..
И ни у кого не возникло ошибки «Неразрешимые ссылки» при обновлении?
(28) elian, Ну дай бог одно предупреждение.. и усё
(27) WEBBY, Конечно есть разница.. обычное приложение или управляемое приложение.. по любому переделывать)))
(25) bahcha8, Самая главная проблема это, если уже был настроен обмен с БП 2.0, обеспечить синхронизацию справочников и документов при обмене. Для обмена с 3.0 в УТ 10.3 и БП 3.0 используется другой регистр соответствия объектов при обмене, и он будет пустым 🙁
Кстати, с 01.01.15 1С прекращает поддержку «1С:Бухгалтерии» версии 2.0.
http://www.1service.ru/news/perehod-buhgalterija-2_0-3_0.php
Помогаем решить вопрос перевода с 2.0 на 3.0 с любой степенью доработки имеющейся у Вас конфигурации —
(32) 1Service2,
— устарело…
(33) Alex_E, ещё не поздно —http://www.1c.ru/news/info.jsp?id=17400
(35) 1Service2, Не понял? Что не поздно?