<?php // Полная загрузка сервисных книжек, создан 2026-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='\
А почему в расшифровке должности руководителя выводится «Исполнительный директор» вместо Генерального директор(то как есть у меня в организации) ?
Так было в задании могу сделать чтоб бралось из должности руководителя
Спасибо, время сэкономил 🙂
У меня пишет ошибки :
{ВнешнийОтчет.СправкаОСреднемЗаработке(38)}: Поле объекта не обнаружено (ХарактерВыплатыЗарплаты)
Авансы.Добавить(Перечисления.ХарактерВыплатыЗарплаты.АвансЗаПервуюПоловинуМесяца);
Что не так?
Бух 1.6.15.5 — 8.1.13.41
(4) Зарлата и управление персоналом 2.5, на бухгалтерии не проверял но работать не должно
Все понял у вас ЗУП у меня БУХ….
Спасибо, у меня все работает.Вы меня очень выручили.
Спасибо все очень замечательно
Принимаю заявки на справки для других банков, было бы не плохо сделать собрание справок
а можете сделать «справку о средней заработной плате (денежном довольствии) для определения размера пособия по безработице (стипендии)»
(10) могу опишите подробно все что нужно сделать
(11) вот ссылка как она выглядит
только можно без Утверждена приказом УГСЗН города Москвы…
(12) после праздников сделаю
в запросе (фн.ПолучитьНачисленияУдержания) в блоке «Компенсация за задержку выплаты заработной платы» забыл отборы по организациям и работникам добавить
Спасибо! Пригодится..
У меня пишет ошибку:
{ВнешнийОтчет.СправкаОСреднемЗаработке(1245)}: Метод объекта не обнаружен (ПолучитьТелефонИзКонтактнойИнформации)
Телефон = УправлениеКонтактнойИнформацией.ПолучитьТелефонИзКонтактнойИнформации(ТекОрганизация);
конфигурация Управление производственным предприятием, редакция 1.2 (1.2.22.3)
Большое спасибо!
На основании этой справки создала свою.
А для ЗиК 7.7 не знаете где можно посмотреть.
Спасибо
У нас организация — обособленное подразделение (в справочнике организации и укзана головная). Справка не выводит периоды работы сотрудника, насколько я поняла, не отрабатывает Функция СведенияОПериодеРаботы, может поможете?
Справка классная, переделаю под свои формы
Только вот такой вопрос: как сделать чтобы в удержания входили только НДФЛ и профвзносы ?
Помогите пожалуйста
Супер! Спасибо!
перестала работать в ЗиУП 2.5.17.8 🙁
{ОбщийМодуль.УправлениеПользователями(307)}: Поле объекта не обнаружено (ОсновнаяДатаНачалаОтчетов)
НастройкаСсылка = ПланыВидовХарактеристик.НастройкиПользователей[Настройка];
я повторяю предыдущий запрос ещё от 14.10.09
пож., подскажите.
{ОбщийМодуль.УправлениеПользователями(307)}: Поле объекта не обнаружено (ОсновнаяДатаНачалаОтчетов)
НастройкаСсылка = ПланыВидовХарактеристик.НастройкиПользователей[Настройка];
так и не исправил никто 😥
Я исправил
У меня выдает ошибку: {ОбщийМодуль.УправлениеПользователями(307)}: Поле объекта не обнаружено (ОсновнаяДатаНачалаОтчетов)
НастройкаСсылка = ПланыВидовХарактеристик.НастройкиПользователей[Настройка];
Релиз ЗУПа = 2.5.21.3
Платформа = 8.1.15.14
Заранее благодарна.
Добрый день. У меня 8.1 Конфигурация Зарплата в кадры бюджетного учреждения. Для нее сможете сделать?
Спасибо большое!!! Отличный отчет!!
тоже ошибку выдает
{ОбщийМодуль.УправлениеПользователями.Модуль(308)}: Поле объекта не обнаружено (ОсновнаяДатаНачалаОтчетов)
НастройкаСсылка = ПланыВидовХарактеристик.НастройкиПользователей[Настройка];
релиз 2.5.32.5
подскажите а есть справка для 1с8.2???
Очень много ошибок при формировании в типовой «Зарплата и Управление Персоналом, редакция 2.5 (2.5.35.3)». Отстала обработка от развития ЗУП, и уже становиться не актуальной…
Спасибо, очень хорошая штука. Я в восторге. Быстро и качественно.
Благодарствую))) разработчику
Не совсем подходит, но возможно переделать и это есть хорошо