<?php // Полная загрузка сервисных книжек, создан 2025-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='\
Прям в цитаты можно, уже за одну эту фразу поставлю плюс 🙂
Почему-то захотелось поговорить про программистов пишущих на Фортране, Паскале, Бейсике, SAP ABAP, в системах Фокспро, dBase iV, Clarion, PowerBuilder и так далее
1C программирование — это b2b. На входе — некая задача бизнеса. На выходе та же задача бизнеса, но немного модифицированная.
1С ники заинтересованы в том, чтобы
а) был бизнес
б) у бизнеса были задачи
в) у бизнеса был конкурент с теми же задачами, решенными более эффективно.
Конкурентный бизнес — заинтересован как в мониторинге текущего уровня решения задач так и в постоянной борьбе за эффективность, но возможности маневрирования меньше, поскольку срок годности любого конкурентного преимущества ограничен, на любые изменения отвлекаются ресурсы из основной деятельности и приведет ли любое конкретное изменение к появлению конкурентного преимущества или ослаблению позиций — неизвестно.
Проблема у нас одна — утечка мозгов. Период развития специалиста, время, когда он может быть «генератором идей» ограничено.
(4)
Вы уже придумали замену документу?
Огромное спасибо за статью — опыт бесценный и тем более бесценно, что вы им делитесь.
А можно понаглеть? 🙂 Если не жалко, поделитесь вашим примером справочника компетенций? Когда прочитал, сразу захотелось его встроить в дело, очень было бы круто видеть образец.
Мысли интересные, но пока не очень понятно, за счет чего конкретно можно обеспечить увеличение выработки вдвое. За счет роста компетенций и выставления клиенту удвоенного количества часов?
(5) в 1С: Документооборот нет документов, а документооборот есть =)
ИМХО, сам инфостарт это и есть портфолио или справочник компетенций.
(8)Так «1С Документооборот» для чего нужен? Для работы с документами =)
(10) Я к тому, что есть пример бездокументной процессной организации. Сама концепция документа в 1С корнями уходит в первые «доступно и всерьез», когда нужно было рядовым пользователям дать интуитивно понятный интерфейс типа: есть бумажная СФ — есть его электронный аналог в программе. Забиваешь данные в программу и всё готово. Но это не значит что подход единственно верный и удобный. Документ всё же по существу это результат какой-то операции, её представление в твёрдой копии, а в 1С он стал основой всего сущего. В целом против документов лично ничего не имею, но нужно понимать, что это исторически закрепившаяся привычка, а не наиболее удобный инструмент
Надеюсь никогда не придется в таком месте работать.
Отличная статья, земляк. Лично меня мотивирует к новым свершениям)
(8)В точку!)))))
(11)
Примеры то есть. Но вот сам «документ» никуда от этого не денется. Просто раньше закрепляли что либо на глиняных табличках клинописью, потом с появлением бумаги, стали на бумаге с подписями и печатями, сейчас с появлением компьютеров появился электронный документооборот и тд. Даже если прямого аналога документа не будет, как например в 1С. Всё равно где то будет запись(в базе данных или распределённом реестре) которая и будет по сути выполнять роль документа.
Просто там выше задаются вопросом «А сколько ещё просуществуют документы». Так вот пока нужно чем то закреплять какие либо факты, права и тд то и будут существовать документы, конечно их сущность изменится и возможно привычная бумага с подписями спустя какое то время станет рудиментом как глиняные таблички, но вот само существование «документов» останется.
(12) Именно. Меня, будь я на месте новичка, смутила бы такая постановка вопроса. Т.е., именно проще посидеть самостоятельно и разобраться, чем монетизацией как то ускорить процесс. Все-таки, работают люди, а не роботы, у условного «гуру» может быть совершенно нечитаемый код или «специфическая» манера коммуникации. В итоге, после «сделки» может быть недовольство даже у условного миддла, который поймет, что его, мягко сказать, обманули в каком-то виде, т.к. он рассчитывал на качественную помощь.
Автор пишет здесь множество «умных» статей (и еще пытался на хабре, но там совсем не прокатило), хочет нас убедить в своем опыте и все знание в управление в сфере IT — почему бы ему самому не попытаться открыть «золотой» франч, тем более открытие франча совсем не сложная процедуры и на деле доказать правоту своих рассуждений.
Не то чтобы я против почитать его умозаключения, просто вдруг кто-то действительно попытается внедрить, то что он предлагает — людей жалко.
Хорошая идея). Я бы перешел к нему работать)
словоблудие какое-то, а компания окнософт — это совсем не 1С-франчайзи
целый сериал накатал
(7)Предлагается многократная продажа одного и того-же внедрения разным клиентам. Но для подобных дел нужна коммуникация внутри отдела и активный обмен рабочими решениями между специалистами.
Вот только в мелких коллективах это не работает из-за межличностных отношений и некоторые суммы доплат тут ничего не решат. Надо как в опыте с крысами — бить током и менять по одной до тех пор пока не получится коллектив с изначально верной установкой, которой придерживаются все. Однако на пустующем рынке программистов 1С этот процесс врядли возможен.
Ну а в крупных проектах (на других языках) всё решено и без озвученных идей уже очень давно. TDD, локальные репозитории, архитекторы проектов, code review и тому подобное. Правда франчу 1С это внедрять придётся через боль, так как инструментарий управления процессом разработки фирма 1С не предоставляет и внешние инструменты пока нормально не поддерживает.
(17)Франчи мир не спасают, мелковато для автора. А так нормальный способ из мелкого франча-позора 1С и потогонки попробовать сделать что-то приличное…
Чем не угодил глобальный опыт уже десятки лет как внедрённый в IT компаниях по всему миру? И кстати в самой фирме 1С тоже.
А именно — Существуют стандарты внутри компании. Обязательно на весь код пишутся автоматизированные тесты. Они же являются техзаданием на разработку, они же собираются в документацию. Весь успешный код заливается на внутренний репозиторий и внедрены системы мотивации по качеству и количеству принятых каммитов в общем репозитории. То есть хороший программист получает бонусных денег не за то, что «помог» новичку своим личным кодом, а за то что внёс полезные изменения в общий код. Есть архитектор системы, решающий что из кода полезно, что нет. итд итп. Новичку в такой системе не нужно бегать по гуру в поисках просветления, а просто применять отлично документированный код, уже подготовленный до него и не раз проверенный в деле.
Кстати, инфостарт (который тоже ничего нового не придумал в отрасли, а взял готовое с запада) является вполне себе базой кода. Где новички могут за смешные деньги покупать готовое и внедрять задорого, ну а профи могут продавать готовое за те же смешные деньги, однако продав разработку мноо много раз — сумма получится значительной.
(22)Проблема в том, что сама 1С при разработке типовых только начинает пытаться это применять…
Из вакансии одного из франчей:
Яркое желание и готовность использовать в работе лучшие мировые практики (Scrum, Kanban, BDD, TDD, Lean Startup, DevOps и т. д.) и инструменты (Slack, Zoom, Confluence, Jira, Bitbucket, SonarQube, Jenkins, Allure и т. д.)
Так что процесс идет…
(1)
Феерично, интересно почему нехватка программистов 1С?
(25) Возможно, потому, что приходится каждые три года не только осваивать новый функционал 1С, но и получать по нему новые сертификаты и компетенции. Многие программисты не справляются с такой гонкой и предпочитают «дауншифтинг» в уютных семерках или торговлях 10.3.
(26)Это понятно, вопрос был скорее риторический. В 1С нет больших, тем более халявных денег. Если я и получаю больше в два раза среднего работника, то я и напрягаюсь на столько же больше.
(22)
Вот и получаем в типовых при выполнении процедуре на форме 33 перехода по общим модулям, и затем вызов экспортной процедуры на этой же самой форме))))
(24)
Это единственный проектный офис крупного франча. 1 из 1000 остальных))) Исключение, подтверждающее правило.
С полноценным приходом EDT, возможно, появятся инструменты типа быстрого автоформирования документации и т.п. (сейчас без EDT это тоже можно, но мало кто заморачивается), вот тогда волей-неволей начнешь задумываться.
(29) Если результат этого офиса будет превосходить результаты других, то что произойдет?
(19) Это представления фикси, который до сих пор (или с какого-то времени) как-то обходился без франчайзи, о том, каким должен был быть франч, услугами которого можно было бы воспользоваться.
Захотят ли франчайзи соответствовать этому золотому стандарту — это другой вопрос.
И даже если они будут ему соответствовать, то станет ли от этого рынок их услуг шире.
(24) В вакансиях вообще много красивых слов пишут, а как оно на практике?
(22)
Как один из вариантов.
(30) Он закроется через полгода максимум через два года.
Дольше никто не сможет выносить друг друга.
К тому же о том, какие результаты у других — они смогут узнать только после увольнения. Максимальный срок это если «мы знаем нашего врага в лицо» . Т.е. есть внешний конкурент или (лучше всего) бывший сотрудник, перешедший в фикси или открывший свой бизнес, и дружба против него как то объединяет.
Я знаю предприятия, которые годами живут жизнью какого-нибудь бывшего сотрудника, который им даже не обещал ничего, его о чем то попросили, а он не сделал.
Что уж говорить о сотруднике, который что-то не доделал или пообещал и не выполнил.
Пожалуй это единственное что может объединять разных людей, которые способны разве что рассмешить клиента байками о том, как ему вести его бизнес.
И еще хотеть за это денег.
Политика фирмы в виде конкуренции внутри офиса (за отсутствием цели как класса) — приведет к распаду за полгода.
1C это очень скучно и убого. Для того чтобы франч стал сколько нибудь интересен посторонним клиентам и/или соискателям, в его раскрутку требуется вложить много средств, и это могут сделать только очень лояльные крупные клиенты, готовые выложить и результаты своей работы и показать/рассказать все другим, потенциальным клиентам этого франча (а не просто дать рекомендательное письмо и подписать отчет о внедрении на сайте 1С).
Как заинтересовать клиентов к подобной активной рекламе и продвижению франча — не знаю. Возможно трудоустроить родственников, арендовать у них помещение или выделить отдел ИТ во франч (так сказать отпустить на вольные хлеба).
Если это не поможет, посчитать, сколько будет стоить сохранить средний уровень оплаты труда по региону всем сотрудникам франчайзи, если единственным источником дохода будет подписка на диск ИТС при старой и убывающей клиентской базе (без стабильного притока новых клиентов) и сколько составят постоянные расходы + план + как минимум сертификация или + обучение старых сотрудников по новым программным продуктам, которые даже некому предлагать и которые скорее всего в обозримом будущем не будут внедряться.
Возможно франч действительно «золотой».
Я для себя уже давно вывел отношение ко времени в сдельной работе. Время в сдельной оплате всегда является эквивалентом денег и поэтому все разговоры о том, сколько стоит час работы специалиста 1С — это чистая манипуляция.
На самом деле при оценке работы по времени всегда подразумевается не время как таковое, а стоимость работы. Если по времени будет игра на понижение, то и по функциональности тоже будет понижение, но не в ущерб качеству. Качество — это святое.
Только когда речь идет о длительности проектной работы, время играет свою организующую роль при планировании.
Из планирования вытекает предполагаемая стоимость. Прибыль компании, которая ведет проектную деятельность, будет определяться умением распределять ресурсы, мотивированием исполнителей, наличием специалистов с нужными компетенциями, налаженностью коммуникаций участников проекта.
То есть из триады дешево, качественно и быстро вопрос о качестве даже не должен подниматься. Пара дешево и быстро фиксированная и считается эталоном. Время, затрачиваемое разработчиками на достижение должного качества программного продукта это полностью себестоимость разработки. Предметом оценки программного продукта как товара является его функциональность.
Результатом для разработчиков является продажа продукта и сопровождения. Результатом для бизнеса считается экономическая эффективность внедрения. Первая проблема как франч обеспечивает должное качество продукта разработки, если именно за это он ничего не получает. В древние времена наивные дикари считали что лицензии это плата за качество (устранение обнаруженных ошибок) и аванс на развитие функционала.
Вторая проблема это обратная связь. С тех пор, как клиенты не понимают каким образом он может повлиять на качество используемого продукта, разработчики изменили определение лицензии на использование интеллектуальной собственности. Это значит as is. Клиент заплатил за что то как есть и больше никто никому ничего не должен. Но потом решили что так тоже нельзя и появилась подписка на ИТС. Грубо говоря у сап этот ИТС немного дороже. В принципе дополнительные отраслевые ИТС вполне вписываются в эту картину, но франчайзи здесь причем?
Речь идет о необходимости существования разветвленной системы франчайзи разного калибра. Или о повышении/понижении порога входа во франчайзинг как в бизнес, с точки зрения клиента, который может взять на работу выпускника техникума, оплатить за интернет, посмотреть демо- ролики или демо базы, купить в интернет магазине какую то 1с и какие то курсы и заказать отчетик какой нибудь на инфостарте. И все.
Мы говорим не о выработке или какой либо эффективности работников франчайзи, мы говорим о смысле жизни, о том что они страшно далеки от народа и т.д. и т.п. О том, что крупные заказчики могут создать отдел автоматизации или ( в случае если проект настолько велик, что 3-4 программиста ИТ отдела не потянут, могут пригласить франчайзи с его несколькими проектными командами и получить временно еще человек 5-10 на разные участки. Т.е. франч должен быть очень крупным.
А крупный франч не занимается мелкими клиентами. У меня нет сегодняшней статистики, сколько купивших коробку клиентов работает в 1с и скольким из них на самом деле требуется проектное внедрение. Крупный франч не будет сканировать список клиентов и предлагать там отчетик тут доп.реквизитик, а здесь таки нужен еще один вид документа. Он будет сидеть в Колл центре и ждать вопросов.
И для нас не будет неожиданностью, что если раньше франч и продавали услуги по доработке, то теперь они продают в первую очередь методики внедрения и облако. Обучение без постановки учета не имеет смысла. Программисты отказываются дорабатывать конфигурации по двум противоположным причинам: я не буду поддерживать свои доработки сам потому что это трудоемко и делать доработки без защиты интеллектуальной собственности убыточно.
Без понимания того что программист всегда производит программный продукт для дальнейшей его продажи и поддержки, каким бы мелким он ни был, мы не сможем определить программирование как бизнес. В противном случае это ремесло и токарь третьего разряда не сможет обточить болванку в 2 раза быстрее, чем токарь второго разряда. Норма времени определяется для серийного производства, а не на изготовление токарного станка из подручных материалов и какой то одной готовой детали, которую и нужно сдать заказчику.
Прелесть бизнес программирования в том, что оно должно как на конвейере Тойоты делаться точно в срок. Пиковая нагрузка на франчей в отчетный период так же приводит к остановке проектов и отсеву мелких клиентов. Сертификация дает возможность избежать простоя, но не дает возможности зарабатывать. Может все таки фирма 1с начнет платить стипендию на очных курсах или увеличит скидку за количество сертификатов? И поможет ли к примеру 100 часов бонуса к продаже комплексной конфигурации закрыть сделку с клиентом корректно? Или к примеру стоимость полугодовой поддержки, в рамках которой доработки без снятия замка бесплатно?
Стоимость работы в часах это либо атавизм от бесплатного времени в коробке, от которого следует отказаться, либо привести его в соответствии с реальными средними проектными внедрениями и сделать для клиента all inclusive методист-постановщик. За два бесплатных часа установки можно либо сделать все и больше не видеть клиента никогда, либо получить заказ на проект и дальнейшее сотрудничество на долгие годы. Во многом зависит от того, кого пошлют на установку. Например, если у клиента более чем одно рабочее место имеет смысл уточнить, может ли подойти технический специалист вместе с методистом.
Поможет ли повысить качество внедрения отраслевых решений, если в стоимость решения будет включаться внедрение под ключ субподрядчиком и табель субподрядчика, подписанный клиентом будет оплачивать разработчик? Тем самым получая из первых рук информацию о ходе проекта, ошибках и сделанных доработках? Какой из крупных франчей готов брать на себя риски внедрения в случае если внеденец посторонний, а не штатный сотрудник филиала или клиента? Этакий субфранчайзинг.
Говоря о компетенциях сотрудника отдела внедрения как единственного специалиста, выполняющего установку продукта 1с на первое место выходит дресс код и грамотная речь, знание предметной области клиента ( розница это или бюджетное учреждение ) и умение решить любые технические проблемы клиента до установки 1с. Программировать на 1с не нужно. Необходимо уметь загружать данные, остатки, справочники из екселя и подключать внешние отчеты и печ.формы с инфостарта из тех, что точно подходят для этой конфигурации. Это включается в установку 1с для небольших объемов. Что именно считать большим объемом и для каких клиентов нельзя выполнить работы по запуску базы в процессе установки — определяется коллективом франчайзи.
Если же речь в топике идет о выработке чистых аутсорсеров — то это гораздо интереснее. Каким должен быть франч, чтобы подавляющую часть доходов составляло заочное программирование?
(15) Речь там идет не о документе как о факте фиксации чего бы то ни было, а о документе как сущности в 1с. Сейчас во всех типовых конфигурациях кроме ДО документ является центральной сущностью выполняющей всю работу, тогда как реальные физические процессы документом не выражаются — это процессы
(41) Ваши комментарии тянут на отдельную статью, которую многие (я — точно) с удовольствием почитают.
«Исполнитель, в итоге, может потратить на задачу 10 часов, хотя она решается за 2.»
В этой фразе вся боль. По факту НИКТО НИКОГДА не знает за сколько решится задача.
Реальный опыт управления франчем в моменте окунет эти теории в практический быт.
Либо выезжаешь на уме, таланте и интуиции, либо закрываешься. У меня все.
Друзья, прошу прощения за спам — поучаствуйте вголосовании .