<?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='\
Минус за оформление
А что не так?
Оформил..
Модератор, минус можно убрать?
Оч.актуальненько!!! 🙂 Пасиб.
Если понравилось можно и плюс поставить 😉
Супер! 5+!!!
хороший отчет, правда последующей корректировки в екселе не избежать
Лучше корректировать, чем выбирать все руками. Наверно..
Спасибо!
Удобно, но руками придётся править, но уже лучше, чем вручную всё вносить.
Спасибо!
Этот отчет очень нужная вещь, потому что на предприятии форма налогооблажения может поменяться, и из-за этого переходить из Бухгалтерии на конфигурации 7,7 не очень удобно. Вообще ее нужно внести в стандартную конфигурацию.
Понравилась обработка, и хотя для нашей специфичной конфы она не подошла, но дорабатывать ее было, код очень понятно написан. Вот только комп сгорел, а вместе с ним и все мои исправления, качать заново буду(
Это типовой отчет из УСН немного переделанный.
Хорошая обработка, очень помогла, хоть и пришлось немного править в Excel. Но это всё же лучше, чем вручную выбирать и заносить в таблицу. Спасибо!!!
а вот я к сожалению не могу ваш отчетик скачать, хотя очень хочется его опробовать.
ВОТ ЭТО ГЕНИАЛЬНО И ПРОСТО, СПАСИБО!!!
книгу конечно пока не проверяла, но по крайней мере суммы заполняются, и в приближении правильно.
Одно дело проверить что правильно заполнено или нет, а вот совсем другое самой руками всю эту книгу в экселе делать.
СССССПППППППАААААААССССИИИИИИИИБББОООООО!!!!!!!!!!!!!!!!!!!!
Последнее напишу, а бывают такие обработки для управлении торговлей 8.10 ???
Спасибо! Обработку отправлять или уже скачали?
anasteischa, у меня нет клиентов работающих на торговле 8.10
Спасибо, отличный сайт, обработка очень помогла!!!
Пару месяцев попробывал, вроде все работало. А сейчас (после дальнейшего заполнения) вылетает с ошибкой:
СодержОперации = «Представлен авансовый отчет: «+ТекДок.Сотрудник+
{D:BASE_1C1SBDBEXTFORMSКНИГАУЧЕТАДОХОДОВИРАСХОДОВ.ERT(384)}: Поле агрегатного объекта не обнаружено
(Договор)
—
Не подскажите, что нужно подправить?
Посмотри договор в авансовом по сотру
Спасибки, пригодиться, а то ни как не получается переход из Бухгалтерии 7.7 в УСН 7.7 , я думаю поможет просто книга учета доход и расходов
как не странно, но понравилось. Бухи все время нас удивляют))
Не формирует, выходит сообщение
Описание = «Произведен зачет комиссионного вознаграждения от «»»+Опер.Кредит.Субконто(3).Владелец+
{C:DOCUMENTS AND SETTINGSИРИНАРАБОЧИЙ СТОЛKNIGAUCHETADOKHODOVIRASKHODOV.ERT(532)}: Значение не представляет агрегатный объект (Владелец)
отправил исправленный на irinka-m2005@yandex.ru
Спасибо! Это здорово! Нам очень помогло. Лучше проверять и кое-что довнести, чем самому с самого начала ручками. Спасибо!!! !
Спасибо. На следующий год планируем переходить на упрощенку, а так не хочется уходить с Бухии 7.7.
Я давно Вашу обработку заметила, но она для меня была не актуальна.
А теперь ну прямо в точку.
спасибо большое очень понравился отчет то что нужно конечно переносить руками очень долго а так доработать всегда можно главное идея
Успехов вам!
Хочу попробоватьскачать Вашу обработку
К моему сожалению, не могу скачать эту обработку, не хватает денег. А очень хочется.
Приветствую! автор, скажите пож., по поводу 4 раздела — будете делать ?
Не желая ничуть принизить значение обработки автора, хочу все же заметить, что у фирмы Камин есть комплекты отчетов для каждого режима упрощенки (6 и 15), которые тоже позволяют формировать книгу доходов и расходов по типовой бухии 7.7 (даже учитываются частичные оплаты и списания по материаламтоварам), а так же декларацию по УСН (есть демкаhttp://www.kaminsoft.ru/products/kamin/account/simpl15.html) .
waol, будет время и желание, сделаю. Alister, про Камин знаю, но не пользовался. Мое может и коряво формирует, зато бесплатно 😉
(37) я же сказал, что дал ссылку не для того, чтобы как-то принизить Вашу работу, просто у меня есть несколько клиентов, которые уже не один год пользуются Камином (тогда он стоил «копейки») , оставаясь при этом на типовой бухии 7.7, а не упрощенке 7.7 (о таком решении многие и не догадываются).
Этот отчет очень нужная вещь,вот я к сожалению не могу отчетик скачать, хотя очень нужен.Спасибо.
kurvik, куда отправить?
Valera_ch55, + огромный! Целый день сегодня потеряла, даже УСН поставила. И вот нашла наконец-то :)). Буду качать и пробовать.
Почему-то взаимозачет в книгу не входит. И проходит возврат подотчета 🙁
Заполняются обороты по сч. 50, 51. Печатную форму можно сохранить в формате xls и отредактировать. Также по приведенной выше ссылке можете использовать отчет от фирмы КАМИН.
(43) спасибо и на том! В Камине почему-то наоборот один взаимозачет проходит :)со стандартными настройками. Скооперируем.
Спасибо…
Добрый день.
очень нужная обработка!!. НО! этот отчет работает криво…
входят суммы, которые не должны включаться (подотчет, займы), а если их много…?? замучаешься вручную выбирать… и эксель автоматом потом не подсчитает итоговую сумму в сохраненной форме, т.е. придется вручную пересчитывать… не вижу смысла — что так, что по-другому — все равно работать вручную))
вывод: буду искать другую обработку.. жалко потраченного((
(46) Если допускается внесение изменений в конфигурацию бухгалтерии, то можно использовать вот эту разработку:http://infostart.ru/public/14393/
Если модификация типовой недопустима (или ее некому сделать), то лучше Камина пока ничего не встречал.
(46) смотрите (36) там всё настраивается и автоматом суммирует