<?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.1 ст.169 НК РФ по содержанию.
Дело не только в наличии лишних, не используемых показателей.
Но и в неадекватности остальных.
Например, в счете-фактуре на аванс не должно быть показателя
«Стоимость товаров (работ, услуг), имущественных прав, всего с учетом налога».
Вместо стоимости товаров должна быть указана сумма поступившего аванса (предоплаты). Что не одно и то же.
Видимо, столь простая мысль дается не всем 🙂
на моё скромное имхо, это называется «искать себе (организации) на жопу приключений»… причем, без какой-либо на то необходимости.
убеждать налоговую в том, что у них формы отчетности корявые? ну, ну… успехов вам в этом нелегком деле 😉
Никто из налоговых работников тявкать против Налогового Кодекса просто
не осмелится.
Так что и ты, пожалуйста, не озвучивай пустые и абсурдные по содержанию
предположения.
уж не знаю, чем вы по жизни занимаетесь, что так «оторваны от земли»… приведу всего один пример, недельной давности:
бухгалтер пошел в налоговую, попросил выписку из егрюл. юридический и фактический адреса не совпадают. её послали по известному адресу. и в ответ на просьбу сослаться на нк, или еще какой закон — её послали по тому же адресу повторно.
в общем, никто им не указ, увы… и «тявкать», как вы выражаетесь, они будут. и доказать им ничего не получится.
в общем, возвращаясь к моему первому вопросу — лично я не вижу ни малейшего смысла менять форму с-ф. ничего не выиграв, геморроя нажить можно запросто.
НК не регулирует формат счет-фактуры, однако перечисляет 14 ее реквизитов, из которых только два имеют право отсутствовать. Эта разработка — засада.
Вопреки ложному заявлению Арчибальда, предлагаемая печатная форма содержит все необходимые реквизиты.
Напомню, что состав реквизитов различен для авансовых счетов-фактур и обычных.
В соответствии спунктом 5.1 ст.169 НК РФ,
В счете-фактуре, выставляемом при получении оплаты, частичной оплаты в счет предстоящих поставок товаров (выполнения работ, оказания услуг), передачи имущественных прав, должны быть указаны:
1) порядковый номер и дата выписки счета-фактуры;
2) наименование, адрес и идентификационные номера налогоплательщика и покупателя;
3) номер платежно-расчетного документа;
4) наименование поставляемых товаров (описание работ, услуг), имущественных прав;
5) сумма оплаты, частичной оплаты в счет предстоящих поставок товаров (выполнения работ, оказания услуг), передачи имущественных прав;
6) налоговая ставка;
7) сумма налога, предъявляемая покупателю товаров (работ, услуг), имущественных прав, определяемая исходя из применяемых налоговых ставок.
Далее, в пункте 6 указано, что счет-фактура подписывается руководителем и главным бухгалтером организации либо иными лицами, уполномоченными на то приказом (иным распорядительным документом) по организации или доверенностью от имени организации. При выставлении счета-фактуры индивидуальным предпринимателем счет-фактура подписывается индивидуальным предпринимателем с указанием реквизитов свидетельства о государственной регистрации этого индивидуального предпринимателя.
Таким образом, к семи реквизитам добавляется еще два- подписи руководителя и главного бухгалтера.
Реквизиты свидетельства ИП опускаем, посольку конфигурация БУ для них не предназначена.
Все девять реквизитов в предлагаемой печатной форме имеются.
Мифические 14 реквизитов- не при делах.
Напомню, что правительственная форма при операции получения аванса
не подходит по содержанию, поскольку содержит показатели стоимости товаров
вместо суммы полученной предоплаты.
Формально уже на этом основании покупатель рискует получить отказ
в вычете налога.
Господа критиканы, оставьте ваши бездоказательные замечания!
>> Формально уже на этом основании покупатель рискует получить отказ в вычете налога.
неубедительно. ни одна налоговая не будет вязаться к типовой форме, даже если там что-то чему-то и не соответствует (по вашему мнению)
а вот обратную ситуацию — очень легко могу себе представить…
остается в третий раз повторить вопрос: нафига козе боян? 😉
Когда вы будете ее (СФ) выписывать, ни один налоговый инспектор не вякнет, что вы неправильно оформляете СФ. И перечисленный НДС возьмут 🙂
Потом вас возьмут за яйца ваши контрагенты. Но это уж потом…
А какая мне нАфиг разница, что там на форме? Лишь бы было у всех одинаково…
…это подстава чистой воды — это не критика…
…нужно предварительно договариться с налоговой, мы до сих пор ставим печати на счета-фактуры только потому, что у клиентов не принимают счета-фактуры без печатей, а тут такое…
Звездочет, судя по всему вы очень далеки от бухгалтерии и не знаете каким образом работает налоговая. На мой взгляд данной обработкой вы вводите в заблуждение и тех бухгалтеров которые начинают еще только работать у которых нет достаточного опыта. Да и пока еще нет никаких писем минфина по поводу сч.ф. на аванс, поэтому на данный момент ничего нельзя утверждать, а налоговая инспекция плевать хотела на налоговый кодекс (в практике по работе с налоговой постоянно с этим сталкиваюсь).
(8) Спасибо, конечно, за полную цитату п. 5.1. У меня на диске точно такой же текст.
Наверное, я слишком кратко изложил свою позицию. Однако посты 9 и 10 эту позицию вполне разъясняют. Одну (свою) налоговую инспекцию забодать можно. Покупательские — никогда.