<?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.1 не будет реализована?
КА 1.1 снята с поддержки
(2) За 1 кв. 2019 декларацию по НДС они сделают. До апреля обновления ещё выпускаются.
(3) Классно. спасибо)
На 1.1.102.1 не работает
(3) 116й релиз так и не выйдет? То есть из типовой КА 1й квартал уже не сдать?
(6) там сделали это в 1.1.115.1 . В 115 релизе и есть новая декларация по НДС.
(7) Добрый день! Скажите, пожалуйста, где она там находится теперь?
(7) Саму печатную форму привели в порядок, а вот выгружаемый файл так и без НДС 20 %. Речь про книгу продаж.
(9) Просьба, не вводить людей в заблуждение, либо излагать свои проблемы более грамотно. Декларация, разделы 8 и 9 формируются верно, выгрузка в файл для отправки в налоговую тоже формируются верно. Не путайте книгу продаж (как отдельный отчет) с приложением 9 декларации.
(10) Подтверждаю, в Декларации разделы 8 и 9 формируются и выгружаются верно.
Отдельно Книга продаж формируется правильно, выгружается неправильно, без сумм НДС.
(11) У Вас в файле нет поля «СумНДСВсКПр20»??? мой тестовый пример:https://yadi.sk/i/VlzS2lAWrMfqmA
(12)
Добрый день. Подскажите я так понял выгрузка соответствует новой версии ?
(13) соответствует
(12)По аналогии с Книгой продаж за предыдущие периоды нет поля «СумНДСРубКоп20»
Извините за оффтоп, на БП 2.0.66.77 формат 5.05 (а налоговая ждет 5.06), хотя судя по списку еще в 2.0.66.74 д.б. сделать 5.06…
(16)…виноват сам… зашел в справочник отчетов, нажал «обновить», после этого создал еще одну декларацию и она уже сформировалась по форме 5.06
Здравствуйте.
Пожалуйста, сообщите о возможности использовании данной обработки (или аналогичной) для сдачи декларации по НДС за 2 КВ. 2019 г. из КА 1.1.115.1
(18) Да. возможно
Необходимо только приобрести обработку (без всяких доработок) ?
(20) 🙂 ISkaaorl вы меня пытаете как заказчик исполнителя. Скачали — если работает поблагодарите, если не работает — напишите об этом в комментарии. это не магазин!! это сообщество профессионалов! Все обработки скачиваются на свой страх и риск. Не обязаны являться законченным и массовым решением, а призваны помочь коллегам в более быстром решении тех или иных проблем. Обработка не приобретается. она бесплатная. Это не магазин. Цель размещения — это обмен обработками посредством SM (я отдал свои.. скачал другие) и помощь коллегам (техническим специалистам!!).
а второй квартал будет?
bsturtle, здравствуйте.
Вы меня недопоняли (или я действительно чего-то не понимаю): у меня нет доступа к Вашей разработке, т.к. я не профессиональный разработчик и 5 SM для ее скачивания у меня нет. Я обыкновенный пользователь и готов приобрести минимальный месячный абонемент на 10 SM (за 4500р.) для доступа, в частности, к Вашей обработке (так я делал несколько лет назад).
Но перед оплатой я хотел бы понять можно ли с ее помощью решить актуальную для нас проблему — сдача декларации по НДС за 2 кв.2019 г. из КА 1.1 (в которой у нас по-прежнему ведется оформление документов прихода/расхода материалов/продукции и иных сопутствующих документов).
В принципе, как меня убеждают иные специалисты, декларация за 2 кв. не отличается от декларации за 1 кв. и, следовательно, может сдаваться, как и за 1 кв. (что у нас было благополучно проделано из последнего релиза КА 1.1.115.1).
Но хотелось бы узнать мнение профессионального разработчика по данной теме на данный момент (а заодно подстраховаться на случай чего-то непредвиденного).
В принципе я готов выступить в роли заказчика, если потребуются некоторые доработки Вашей обработки под декларацию за 2 кв.2019 (в рамках адекватного бюджета).
P.S. Кстати, а Вам известны ли примеры удачного использования Вашей обработки для сдачи декларации по НДС за 1 кв.2019 ?
(23) Доброго дня! Не придумывайте велосипед: 1) Декларации за 1 и 2 кв. 2019 одинаковые 2) в вашей КА форма декларации актуальная и Вы ей пользовались.
Займитесь отчетом.
П.С, Прикреплю скрины свежей Бухгалтерии 3.0 и КА 1.1
eugene_e1, здравствуйте.
Благодарю за подробный и своевременный комментарий.
Отчетом по НДС за 2 кв. 2019 вплотную занимаемся в КА 1.1 (надеемся сдать в начале следующей недели).
(26) P.S. Самая свежая версия отчета тут, рекомендую использовать ее. Столкнулись с ошибками на этапе проверки декларации перед отправкой, тут они были исправлены:
eugene_e1, здравствуйте.
Благодарю Вас за доп.информацию.
Отчет мы успешно сдали (действительно воспользовались указанной Вами внешней декларацией).