<?php // Полная загрузка сервисных книжек, создан 2025-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)Какая версия программы?
Управление нашей фирмой, редакция 1.6 (1.6.14.86)
(5) Проверю. Может метод переименовали
(6)а как скоро?
Григорий здравствуйте !
выдает ошибку, может чего упустил ?
(8) В последних версиях изменились некоторые типовые функции.
Выложил другую обработку.
(7) если еще актуально….
В последних версиях изменились некоторые типовые функции.
Выложил другую обработку.
Здравствуйте!
Версия1С:УНФ 8. Полиграфия 2 (1.6.14.89)
Обработка не работает.
По существующим штрихкодам появляется большое количкство дублей, а для новых позиций штрихкоды не генерируются.
(11) Добрый день.
У вас отраслевое решение. Видимо часть функций из Типовой УНФ отсутствуют или изменены.
Боюсь я вам тут ничем не помогу. Можно было бы сделать обработку специально для этой конфигурации — но у меня нет дистрибутива этой программы.
Подскажите, возможно ли тогда осуществить возврат средств. В описании программы не было указано, что она не работает с отраслевыми решениями.
(13) В личку написал
(13) Наверное возможно. На этот вопрос пусть отвечают Модераторы. Я готов вернуть потраченное
Управление нашей фирмой, редакция 1.6 (1.6.14.96), скачал обработку для редакции 14.86. Не корректно работает с характеристиками. При заполнении номенклатуры многократно дублирует товар по количеству характеристик, имеющиеся штрихкоды указывает вообще не от своих характеристик. Создавать новые ШК даже не рискнул.
(16) Посмотрю на днях, отпишусь
Сколько дней должно пройти, чтобы я уже стал волноваться?
(18) Поправлено
Спасибо! А вы можете сделать обработку, которая будет создавать штрихкоды не только EAN-13, при перемещении товаров между поставщиками-покупателями-оптовиками широко используется баркод Code-128, но 1с его упорно игнорирует и я не смог найти на просторах интернета Обработки по созданию (генерации) штрихкодов «не EAN-13»? Было бы не жалко купить такую обработку. Подобные вопросы встречаются, а ответов нет.
(20) Хорошая идея.
Пока ничего не могу сказать. Если время появиться — попробую сделать.
Я извиняюсь, надо было написать сразу, НО, теперь обработка перестала видеть штрихкоды товара без характеристик и упорно заполняет таблицу таким товаром при условии отбора, что вывести надо товар без штрихкода.
(22) Поправлено. Действительно был косяк
Привет, подскажи у нас УНФ 1.6.16.204 будет ли работать твоя обработка, если нет то какую другую нужно использовать ?
(24) Надо проверять. Пока не могу сказать. По идее не должно. Из всей линейки релизов УНФ версии 1.6 только 1 раз пришлось видоизменять обработку, потому что изменили структуру регистра. Но это бывает крайне редко. Можешь скачать проверить. Если будет ошибка — бесплатно исправлю и вышлю на почту.
она будет работать в 1С Fresh ?
(26) Да, изначально она под фрэш и разрабатывалась.
Ее нужно подключать, затем она проходит аудит у специалистов фрэша.
После этого она станет доступна.