Импортозамещение в ИТ, каким оно должно быть и какое оно есть




Принцип обмена данными из 1С с сайтом (на MySQL) и выдачи (публикации) этих данных по запросу.
PHP-Скрипт автоматической загрузки данных из файла данных в формате CSV в базу данных сайта работающего на WordPress.

В продолжение моей темы: 1С:Альфа-Авто Автосалон Автосервис: обмен с сайтом.
С помощью данного скрипта можно загружать в автоматическом режиме, по расписанию, данные сервисных книжек (ремонтов авто) из 1С:Альфа-Авто Автосалон Автосервис.
Также можно загружать данные в ручном режиме: для этого делается скрытая страница, где размещается специальная кнопка.
Комментарии размещенные внутри скрипта разъяснят логику и порядок действия.
Комментарии с "/////    echo" использовались для отладки.
Дополнительно создана таблица для журналирования результатов загрузки данных.
Скрипт включает в себя защиту от SQL инъекций (думаю безопасность соблюдена в полной мере).
В кратце:
1. Пишется скрипт, который запускает этот.
2. Создается регламентное задание в WordPress, по которому запускается скрипт из п.1. 
3. Этот скрипт осуществляет проверку на существование файла обмена в папке.
4. Если данные не новые, загрузка не производится.
5. Если данные новые, очищается таблица сервисных книжек.
6. Загружаются новые данные.

Собственно сам скрипт:

<?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='\

23 Comments

  1. informa1555
    Если есть потребность, но нет подходящего продукта, продукт разрабатывается на деньги заказчика

    Я не думаю что разработку какого нибудь ворда с экселем Заказчик будет заказывать под себя — он купит от MS. Тоже самое — любые другие продукты не требующие кастомизации.

    Reply
  2. Спец по Зарплате 1С

    Интересная статья.

    Reply
  3. human_new

    Про стимулирование спроса- согласен, а вот про предложение — трехкратное увеличение затрат — это ужас с точки зрения акционеров и вообще бухгалтерии.

    Reply
  4. yukon

    (3) human_new,

    Если я правильно понял, то речь идет не у трехкратном увеличении затрат, а о принятии налоговых расходов в размере трехкратных фактически понесенных расходов. Ничего страшного для бухгалтерии и собственников нет.

    Но, это автоматически поставит вопрос о том, что должен быть или перечень IT-поставщиков, или придется подтверждать IT-характер понесенных расходов, или другой способ бюрократического государственного контроля.

    Reply
  5. dabu-dabu

    В целом все верно, но автор забыл, что мы живем в России. А здесь подход прямо противоположный предложенному по причине того, что страна живет чиновниками, а не реальной экономикой вмести с людьми, что в ней заняты.

    В результате любая идея реализуемая на гос. уровне, чиновничьим аппаратом должна приносить им же выгоду иначе они ей заниматься не будут. Выгоды от подъема какой-то из отраслей им не будет, т.к. они по серьезному не зависят от людей в ней занятых. Повышение налогов от подъема отрасли тоже мало интересно, т.к. это будет условно через 5-10 лет, а в нашей стране инвестиции должны возвращаться за 1-2, максимум 3 года, только тогда в них вкладываются.

    В итоге подход может быть только один — это условно целевое выделение средств таким образом, чтобы одним из бенефициаров был сам выделяющий.

    ЗЫ. не надо считать, что ты понимаешь больше чем люди тобой управляющие, просто интересы и цели зачастую разные

    Reply
  6. q_i
    Возможность учета всех затрат на автоматизацию предприятия в тройном размере, что дает уменьшение налогооблагаемой базы.

    Подозреваю, что в результате мы получим лишь взрывной рост проектов автоматизации (фейковых, «на бумаге»), вся цель которых — именно уменьшение налогооблагаемой базы.

    Reply
  7. sedata

    To youcon(4) yukon, Да — речь шла принятии к расходам 3-х кратной сумым расходов на ИТ. Подтверждать характер сделки не самое страшное — в конце концов можно и копию догвора показать и свидетельство о регистрации прав на программный продукт. И так, штат бухгалтеров, есть абсолютно в любой компании находящейся на общей системе налогообложения из за ее сложности и задминистрированности.

    Reply
  8. sedata

    (5) dabu-dabu, Что в башке(или каким местом они там думают) чиновников все понятно. Шкурные интересы и временщительство(после меня хоть потом) очевидны. Правда я не думаю что правительство поголовно такое, если и нормальные люди.

    Про бенефициаров — видимо имели в виду конкертных физических людей а не гос. ппарат в целом, поскольку бенефиты для аппараты доовлно очевидны — денег не тратим на подобные меры, соотвесткенно их можно потратить на что-то другое.

    Буду продолжать считать что понимаю, в своей отрасли разумеется, болше чем любой самый образованныйи и опытный чинуша. А назвать их людьми которые мной управляют, язык не поворачивается,. Обирают — да, паразитирую да, проявляют при этом немалую изобретательность. Парадокс в том, что вся эта гвардия живет на наших налогах, но ощущает и ведет себя не как избранники которые выполняют порученные им функции на деньги избирателей, а как сборщики подати с изначальнйо внутренней позицией что им все должны. Т.е. все с ног голову. Это как еслибы трутни в улье решали бы что и как пчелам делать и сколько им и когда есть.

    Reply
  9. sedata

    (6) q_i,

    Вполне можем получить, хотя….. это и сейчас можно так сделать, только без 3=х кратного размера… ну что такого в липовом контракте прописали не 1 млн. а 3-и. какие проблемы

    Поэтому, полагаю такое налоговое послабление будут действенным и будет касаться реальных сделок т.к. потраченные таким образом на ИТ деньги. в чемодане уже не вернуться а вот опутное сниженеи налоговойц нагрузки будет в масть, поскольку снизит реально понесенные компание затраты на ИТ.

    Reply
  10. dabu-dabu

    (8) Что значит «нормальные»? Я нигде не говорил, что люди (в том числе чиновники) плохие. Шкурные интересы это всегда основа. Кушать хочется всем и это правильно. Есть конечно идеалисты, просто сверхувлеченные люди, но ни дай бог такие появятся среди крупных политиков, могут очень страшных дел наваратить. Просто исполнительная власть должна быть остро заинтересована в результатах, которые принесут пользу в целом всему обществу; а также должны боятся совершить то что принесет вред этому обществу. У нас к сожалению это абсолютно не так.

    По поводу конкретных физических людей: никогда не стоит забывать, что любые сообщества (системы) состоят из людей, но каждый в отдельности человек не сильно влияет на систему, которую в нее входит.

    Про бенефиты для гос. аппарата: они как раз и состоят из того, что каждый в отдельности чиновник может быть прямым бенефициаром «по распилу бюджета», если это не расходится с интересами вышестоящего аппаратчика. Так построена вся система нашего гос. управления. Это собственно и является коррупцией. Единственно, «наверху» следят, чтобы распределение денег хоть как-то шло и по остальному населению. Но это требование исходит из того, чтобы народ не взбунтовался окончательно. И это распределение, надо сказать, работало относительно неплохо до сих пор. Для этого достаточно взглянуть сколько дорогущих машин ездит по дорогам. Но, конечно, есть очень даже депрессивные регионы. Поэтому и пишу «относительно неплохо».

    Далее. Может вы и понимаете в своей отрасли больше, но примеры стимулирования предложили вполне себе стандартные, подходящие далеко не только для IT. Подобные применяются в условном Китае очень даже широко.

    А то что вы считает, что они не управляют, тут очень большое заблуждение. Они управляют страной в которой мы живем, растим семей и работаем, а зачастую и создаем рабочие места. В том то и проблема что управляют они, а мы из этого процесса в значительной степени вычеркнуты

    Reply
  11. Golikov

    А о чем разговор то? В компаниях такого уровня и так в большинстве своем стоит отечественный продукт от 1с.

    Reply
  12. Golikov

    (9) Создается ИП. с ИП заключается договор на фиктивную автоматизацию и через ИП выводятся деньги. Хорошая экономия налогов.

    Reply
  13. Aleksandtmt

    Прежде чем говорить о том как проводить импортозамещение области IT, я думаю, следует определиться с пониманием самой сути импортозамещения в IT. Когда и в какой части возникает необходимость импортозамещения. Тут два направления.

    Во-первых текущие проблемы.

    Импортозамещение нужно тогда и в той части, где нам могут что-то не дать (не продать, не поставить и т.п.) или мы сами отказываемся по политическим соображениям. И тут очевидно, что это в большей части связано с оборудованием и прочим материально техническим обеспечением. Что же касается общего ПО – то тут проблема в вопросе о лицензировании, а у нас с этим ситуация известная. Специализированное ПО, которое актуально только для нас – мы более или менее успешно разрабатываем сами. Таким образом, очевидно, что в первой части (железо) это проблемы не столько из области IT, а в целом проблемы нашей промышленности, приборостроения, производства комплектующих и т.п. . Фактически, сегодня нам надо вновь создавать промышленную базу, которую (пусть даже в чем то отстающую от импортных аналогов) мы полностью разрушили. И без прямого участия государства тут, на мой взгляд, ни как не обойтись и нужны не только крупные инвестиции , но и организация работ по восстановлению , а правильнее сказать по созданию производственной базы.

    А в части ПО все понятно: будет спрос – будет ПО. Нужно ли тут кого то и как то стимулировать ? Я думаю, что нет никакой необходимости, потому что спрос все отрегулирует.

    Во-вторых перспективные задачи, которые должны позволить нам забыть о проблемах импортозамещения, и более того переложить эту проблему на другие страны.

    Для решения этой проблемы опять же нужны прежде всего организационные меры, в частности необходимо выработать свои стандарты на оборудование и программные средства, которые используются в государственных предприятиях и предприятиях ВПК.

    В первую очередь надо определить национальную ОС (пусть даже это будет переписанная нашими программистами ОС по аналогии с существующими). А остальное рынок отрегулирует. Допускаю, что выбор технических и программных средств будет и не самым удачным, но в тоже время не все считают Windows или что то другое образцом для подражания. Предприниматель и бытовые пользователи сами определятся по ситуации.

    Одним словом для решения проблемы импортозамещения в области IT нужны прежде всего волевые организационные меры. Финансирование тоже нужно, но это вторично т.к. надо определиться к чему мы идем. А если говорить об эффективности использования средств (разворовывания), то тут опять же важны организационные меры. Будет опасно и не выгодно разворовывать – не будем этого делать !

    Reply
  14. panvartan

    Если включить мозг на десять секунд, то очевидно, что импортозамещение в условиях ограничения импорта (конкуренции) невозможно. Произойдет лишь переориентация потребления на товары более низкого качества и снижение качества жизни. Будем лечить грипп арбидолом вместо тамифлю и помирать помаленьку. Для создания продуктов мирового уровня нельзя собрать студентов и типа ученых в новосибирске и создать лекарство от гриппа, так можно создать только плацебо от гриппа. Для создания всего, что сложнее мраморного телефона старика хоттабыча необходима международная кооперация и конкуренция. Попытки огораживания своего мира всегда приводят к построению зоопарка. Там возникают продукты, пользующиеся спросом только внутри зоопарка — 1с, например. В этом можно копошиться десятилетиями, но человеко-жизни уходят.

    Reply
  15. AndreLed

    (6) q_i, согласен. Например знакомый многим портрет: «эффективный менеджер крупной госкомпании». Он открывает ИТ-компанию и начинает «автоматизировать» (даже если не на бумаге — допустим предложенная система обрастет противовесами в виде налоговиков с ИТ специализацией): например электронная очередь в столовую, свой мессенджер для общения с соседним отделом, систему учета переложеннных бумажек. Главное все делается быстро, а цену можно заломить большую, добавив слово «инновационное». При этом менеджер станет еще эффективнее, ведь его инновации уменьшвет налогооблагаемую базу — все счастливы.

    Reply
  16. XOCTEP

    Описанная система может и правильная и эффективная, но вряд ли наше государство когда-то дойдет до такого.

    К тому же, как выживать малым франчайзи? Представим себе, что среднему или крупного бизнесу требуется разработать свое ПП на базе 1С. Стоимость проекта — 15 млн. Либо они заключат договор со «своей» фирмой, либо с крупным франчем. Следовательно все довольны, кроме малых фирм, которым просто некуда деваться и очень сложно занять целевую нишу.

    Reply
  17. Perfolenta

    (14) panvartan, бред… 1с выиграла конкуренцию, не наводите поклеп… я еще помню как в бухгалтериях были конкуренты всякие… 1с ни кто не навязывал, и бухгалтеры и программисты оценили ее достоинства сами…

    Reply
  18. panvartan

    (17) Peleng, вы видите, но не наблюдаете. 1С решает придуманную в зоопарке задачу — бухгалтерский учет. Задачи такого масштаба нет больше нигде в мире, она отвлекает каждого десятого и не самого глупого работника в рф.

    Reply
  19. Drak0n

    Вы действительно немного далеки от основ налогообложения.

    В нашем законодательстве очень много нюансов…Например НДС.

    Большинство франчайзи, фрилансеров и прочих контор по автоматизации и созданию ПО к которым должен ринутся средний и крупный бизнес заказывать продукцию — работают на УСНО или вообще являются ИП. Как следствие вычет по НДС по таким контрактам бизнес принять не сможет ни в каком объеме — поставщики работают без НДС. Бизнес видя это будет искать поставщиков на ОСНО (средние и большие компании) что оставит малый бизнес в сфере IT без средств к существованию.

    Это всего лишь один пример. Нестыковок у Вас предостаточно.

    PS. Кстати, сейчас уже существует ряд привилегий (вычетов) и пр. для заказчиков инновационных продуктов, но комплект документов которые нужно собрать, да и сама процедура их получения настолько сложны что мало кто заморачивается.

    Reply
  20. sedata

    (18) panvartan,

    +1 Полностью соглашусь, наши свинорылые в телевизоре, постоянно трындят о недостаточной эффективности экономики и недостаточной производительности труда. Однако, при все этом, в сфере налогового и бухгалетского учета нагородили такого, что даже малые предпрития на УСН (упрощенной системе налогобложения) вынуждены держать или привлекать бухгалтера. А уж про средние предприятия на общей системе налогообложения, и говорить не приходится, штат бухгалтеров и расчетчиков ЗП может исчисляется дестяками сотрудников. Все таки на западе, бухгалтер больше учитывает финансовые потоки и меньше отчитывается, т.е. бльше выполняет функции фин. директора, считает прибыль, контролирует затраты если владельцу недосуг, малые предприяти воообще без бухгалтеров обходятся, сами предприниматели считают прибыль и рассчитывают налоги.

    Перерегулирована налоговая системы, куда не плюнь все обязаннотсь налогоплатильщика, подтвердить и доказать что не козел — обязан сам налогплатильщик, проверить контрагента — тоже обязанность налоплатильщика, что бы билеты в затраты запихать — целая тряхомундия, посадочный талон не потеряй, коммандировочное удостоврение покажи, приказ по предпритяию сделай, авансом коммандировочные расходы перечислить — тоже пробелма и т.п. Т.е. с одной стороны — куча обязанностей которые налогоплательщик должен делать за ту-же налоговую или пенсионный, с другой — орава налоговиков которые толкьо и делают что во все подвергают сомнению, вычетов не дают, требуют кучу подтверждающих документов, рожают кучу дополнительной отчетности, генерят огромное кол-во изменений в уже устоявшиеся процессы …

    Reply
  21. sedata

    (19) Drak0n,

    Действительно, большинство ИТ компаний — на УСН, и вычет по НДС покупателям их услуг не грозит. Но, именно по этому я говорил про кратность учета понесеных на ИТ затрат, что бы уменьшить прибыль.

    Если учитывать , что стоимость услуг ИТ компаний на ОСНО будет выше чем стоимоть улсуг компаний на УНС, хотя бы из за того-же НДС. То, при таком подходе, ИТшники на ОСНО и ИТ шники на УСН будут более или менее в равныху слоувиях т.к. у первые хоть и смогут предоставить вычет по НДС, но стоимость услуг УСНщиков будет ниже.

    Reply
  22. Savolinka

    Такой подход приведет к тому, что крупные и средние компании просто выделят свои ИТ-отделы в отдельные организации для уменьшения налогооблагаемой базы, и оставят их на самообеспечение, и ничего не изменится. А также напридумают кучу схем, чтобы через созданные организации проводить еще какие-нибудь услуги.

    Reply
  23. sedata

    (22) Savolinka,

    Серьезный аргумент — но опять же таки можно ввести критерии — наличие свидетельства о регистрации программного продукта на базе которго осущ. внедренеи, наличие догворов с другми потребителмя данных услуг за определенный период времени. Может быть можно придумать что-то попроще и попрозрачней, что бы без лишней бумажной волокиты. Например реестр компания поставщик а должна входить в некий реестр, сосбтвенно такой уже есть- реестр ИТ компаний, которые применяют нониженную ставку ЕСН.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *