Открытая просьба разработчикам подсистем




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

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

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

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

98 Comments

  1. Ish_2

    Вопиющему — наше сострадание.

    Reply
  2. iov

    (1) да уже просто вопль от постоянства недоделок… Я нисколько не сомневаюсь в профессионализме программистов выпускающих продукт но оформление продукта и остальное просто на уровне каменного века. На тебе палку камень делай топор.

    Reply
  3. Ish_2

    «Я нисколько не сомневаюсь в профессионализме программистов …»

    Зря.

    «Остальное» — как раз важнейший атрибут профессионализма.

    От себя добавлю , что документирование программного продукта чрезвычайно муторное и нелюбимое всеми (и мной в том числе ) дело.

    Reply
  4. mov68

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

    Reply
  5. iov

    (3) ну не профессионализм сказывается просто- я не продаю продукты без нормальной поддержки и без обновлений (хотя бы исправление ошибок).

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

    Reply
  6. Rusk51

    Какая-то ерунда. Что вы такое купили,что требует сразу корректировки, а тем более исправления ошибок?

    Reply
  7. cool.vlad4

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

    Reply
  8. iov

    (6) «Без названий» но продукты не первый день на рынке.

    (7) То есть предлагаете не придерживаясь стандартов и писать кто во что горазд? И тут не обижают программистов — это в другую ветку. ТУт просьба от того кто поверил рекламе продукта и предложил клиенту купить или потерпеть пока напишу.

    Reply
  9. cool.vlad4

    (8) Да, нет, конечно, стандарты нужны — другое дело, кто их соблюдает. Вопрос. Могу понять, можно кучу времени потратить на откровенную ерунду.

    Reply
  10. iov

    (9) Вот я людям писал что «их» готовы были купить . но как дело до поддержки и исправления ошибок — глухой лес непонимания — итог продан продукт хуже но с поддержкой хоть какой-то

    Reply
  11. cool.vlad4

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

    Reply
  12. iov

    (11) НА самом деле не важно где продается — подсистема — тот же плагин а там есть правила использования — занятия имен и тд…

    А в 1Сы просто полная анархия.

    Reply
  13. iceflash

    Элементарно же

    Reply
  14. 1Cworking

    Мне, кажется, все это решается на уровне покупателя и продавца (разработчика).

    Если Вас не устраивает разработка по каким-то требованиям: плохая документация, нет дальнейшего сопровождения и т.д — не покупай, или сбивай цену.

    Если заказываешь новую разработку, укажи каким требованиям она должна соответствовать.

    Смешно требовать документацию и сопровождение для бесплатных разработок.

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

    Reply
  15. ILM

    Культура важна во всём, в общении, в письме, в работе.

    Зная о том, что могут придти за тобой другие, последующие разработчики, очень хочется, чтобы о тебе вспоминали добрыми словами! Чтобы учились на твоём коде, чтобы сложные моменты были хорошо откомментированны и понятны. Тогда понимаешь, что работаешь не напрасно и можешь поправу гордиться результатами своего труда.

    Reply
  16. iov

    (14) тут речь про платные.

    (15) Именно я стараюсь писать комментарии и всегда префиксы функций и переменных.

    Reply
  17. Арчибальд

    Хорошо бы, чтобы все было хорошо…

    Reply
  18. Арчибальд

    А теперь чуть более развернуто.

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

    Брукс (можно почитать здесь http://infostart.ru/public/72612/ ) оценивает стоимость программы, которая работает у автора, в 10% от стоимости программы, которая работает у пользователя. Т.е. речь идет о том, как поделить эти 90% между внедренцем и разработчиком.

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

    Вот выставил я на продажу конфигурацию по смешной цене $500. Функциональный аналог успешно продается по цене 272400 руб. Как мне поделить разницу в четверть миллиона с внедренцем?

    Рекбус. Кроксворд. © А.Райкин

    Reply
  19. iov

    (18) За внедрение (не своего) не беру денег только за сопровождение дальнейшее..

    Как написал выше процентов не прошу Покупатель сам решает что ему нужно и покупает.

    Мой интерес дальнейшее поддержание системы в рабочем состоянии и собственные дописки.

    ПРОШУ ВСЕХ ДАЛЕЕ ОБРАТИТЬ ВНИМАНИЕ ЗА НЕ СВОИ ПРОДУКТЫ НИ ДЕНЕГ НИ ПРОЦЕНТОВ НЕ БЕРУ!!!

    ПРОГРАММИСТОВ НЕ РУГАЮ!!!

    С АВТОРАМИ ОБЩАЮСЬ ПОСЛЕ ПОКУПКИ ОТ СТОРОНЫ ЗАКАЗЧИКА!!!

    ТОВАР ТОЛЬКО ПОКАЗЫВАЮ (РЕКЛАМА ТОЛЬКО ТЕМ С КЕМ ДОГОВОРЕННОСТЬ ЕСТЬ)!!!

    После того как товар установлен и что-то не работает как нужно я говорю что (если клиент готов оплатить решаю проблему с авторами) и клиент САМ звонит автору подсистемы или обработки!!!

    ПОВТОРЯЮ ДЕНЕГ НЕ ИМЕЮ С ВАШИХ ПРОДУКТОВ (кроме тех с кем договоренность о распространении и сопровождении).

    Reply
  20. Ish_2
    За внедрение (не своего) не беру денег

    Свежая струя ?

    Reply
  21. Арчибальд

    (19)

    ЗА НЕ СВОИ ПРОДУКТЫ НИ ДЕНЕГ НИ ПРОЦЕНТОВ НЕ БЕРУ

    Ну и зря. Мог бы и брать. Цивилизованно, конечно. Франчи вон берут же…

    Reply
  22. iov

    (18) Ув АРЧИБАЛЬД Вопрос как к разработчику где можно посмотреть список того что предлагаете? возможно что-то заинтересует клиентов.

    Я фикси + несколько компаний на поддержке + аудит IT в компаниях. Я не продаю разработки с накруткой или как иначе потому что клиенты САМИ связываются и платят Вам.

    Reply
  23. Арчибальд

    (22) В профиле, где же еще 😉

    Reply
  24. Ish_2

    (18)

    Вот выставил я на продажу конфигурацию по смешной цене $500. Функциональный аналог успешно продается по цене 272400 руб. Как мне поделить разницу в четверть миллиона с внедренцем?

    На курсы продавцов ! Срочно !

    Reply
  25. iov

    (21) Я повторюсь что перепродажа подразумевает поддержку чужого продукта. у меня есть уже несколько договоренностей с людьми и из-за этого и возникло это обращение к остальным…

    Большую часть времени приходится исправлять продукты а не доделывать под нужды клиента.

    Reply
  26. Арчибальд

    (23) Не лежит душа к торговле. Вот пропить выручку по-купечески — это да 😀

    Reply
  27. iov

    (24) Либо у меня скрипты либо сайт штормит .. ну да ладно позже посмотрю.

    (25) Я тоже не торговец но потому и платят деньги что не пытаюсь клиентам подороже продать… Все честно и открыто . Делаю все чтобы работало долго и без неожиданностей.

    Вообще первые 3 часа консультация и выявленные проблемы — даром… Из 10 -8 обращаются вновь… из 8 1-2 уже постоянные… Вот на эти и живу…

    Reply
  28. iov

    OFF http://www.tirspb.ru ПИТЕРЦЫ И НЕ ТОЛЬКО В ПРАЗНИКИ ОБЩИЙ СЛЕТ ЕСЛИ ДО 3-4 НАБЕРЕТСЯ БОЛЕЕ 6 ЧЕЛОВЕК 100% ИДУЩИХ В ТИР/РЕСТОРАН МОЖНО КОРПОРАТИВНЫЕ ЦЕНЫ ВЫБИТЬ…

    В ресторан можно алкоголь свой (у них очень удачно кончилась лицензия). Алкоголь можно взять качественный дешевле у надежного человека (все кто на инфостарт пати ездил оценили коньяки и остальное) Так что велкам.

    Reply
  29. iov

    (25) Открылся таки профиль… И могу вам сказать что точно наблюдаю у троих клиентов ваши продукты… Отзывы положительные… Так что открытое письмо не про ВАМ 😀 .

    Reply
  30. Арчибальд

    (29) А мне ничего не отстегнули 😥

    Можно в личку, хоть за что не отстегнули-то?

    Reply
  31. iov

    (30) Я пардон даже не в курсе платные ли они… Так как опять оговорюсь что просто показываю (на сайтах) что есть по вопросу интересующему клиента — дальше сами (не находят — я пишу им что хотят). Но я обязательно посмотрю что именно используется…

    Reply
  32. Yashazz

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

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

    Сочувствую автору. Просто надо быть чуть более пессимистом и не ожидать, что подсистема легко и непринуждённо встроится в конфу.

    Reply
  33. iov

    (32) Доктор хаус с меня был написан… А вообще подарков не жду… НО стандартизация спасет мир… Даешь клеймо — ID каждому и койко-место- в инкубаторе. 😀

    Reply
  34. cool.vlad4

    ОФФ видимо мир не хочет, чтобы его спасали, вроде как энтропия же растет…какой-то там закон термодинамики(3 кажется)…

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

    Reply
  35. iov

    (34) Энтропия имеет стандартное поведение и укладывается в стандартные законы… ISO какоетотам 😀 Даже при полном пипце всему свету есть инструкции (хдето)…

    Reply
  36. cool.vlad4

    (35) Я настолько к сожалению не осведомлен…Интересно бы эти инструкции посмотреть…Насчет стандартных законов — это же все упрощение, модели — поэтому скорее наоборот это мы укладываем энтропию (и прочее) в стандартные законы.

    ЗЫ Так, что остается пожелать всем самого наилучшего в новом году! Поменьше программистских недочетов, поменьше возни с неприятными вещами!

    Reply
  37. iov

    Предлагаю отменить 2012 во избежание возможных проблем 💡 Заранее пофиксить возможный баг (и стоит добавить уведомление разработчику что инструкцию стоит выдавать сразу после рождения а не писать самостоятельно при завершении работы системы)

    Reply
  38. RayCon

    (0) Поддерживаю «крик души» автора. Для некоммерческой разработки ещё простительно производство «на коленке»: слепил, результат получил — можно и бесплатно раздать. А для коммерческого продукта такой подход ни в какие ворота не лезет. Давно говорю, что на Инфостарте надо создать а ля бизнес-инкубатор, где программисты бы учились не только делать клиенториентированные продукты, но и грамотно выводить их на рынок.

    Reply
  39. anig99

    (39) выбить под этого деньги из бюджета и радостно их поделить…

    Reply
  40. iov

    (38) Да и продавать тут удобнее если что. Специализированный магазин разработок 1С.

    Reply
  41. RayCon

    (39) Видимо, опечатка в номере поста, и он был адресован мне. Поэтому замечу, что не могу признать шутку уместной. Затронутая автором тема очень и очень актуальна! Например, у меня почти все проекты — командные, и даже просто для того, чтобы внутри команды можно было выстроить координацию, такой очевидный пустяк, как комментирование кода, становится жизненной необходимостью: членам команды (состав которой, кстати, может меняться в процессе проекта) надо знать, что делает процедура, кто её писал и когда. Но практика показывает, что культура производства 1С-ников близка к нулю. Особенно это прослеживается в непрозрачных именах тех же самых процедур. Справедливости ради отмечу, что небольшая часть программистов (прошедшая школу франчайзи или пришедшая в 1С из других языков), ещё как-то следует регламентам, но подавляющее большинство считает уважительное отношение к коллегам чем-то излишним, вроде пустой траты времени. То же самое касается и документирования: мануалы либо не пишутся, либо пишутся так, что конечный пользователь не может по ним работать. Про орфографию, пунктуацию и семантику русского языка я вообще молчу. 🙁

    (40) Раз уж зашёл об этом разговор, то, как говорится, инициатива наказуема: ты готов вступить в группу Экспертиза публикаций и принять посильное участие в работе портала в качестве эксперта?

    Reply
  42. iov

    (41) Я и так это делаю. Все разработки хоть как-то касающиеся конфигураций и бизнес процессов которые используются — проверяю и отписываюсь. Помогаю до оформить публикацию или указываю на ошибки. А эксперт… Тут я наверно не настолько опытен. Не мне решать это точно. Но спасибо за предложение.

    Reply
  43. artbear

    Поставлю минус все-таки!

    О чем статья-то? какой-то безадресный вопль, да еще БА-А-А-А-А-ЛЬШИМИ буквами 🙁

    Где конкретные примеры? почему их нет?

    Reply
  44. iov

    (43) Примеры чего? примеры отсутствия справок? Или примеры отсутствия префиксов? Или примеры грамотно оформленных продуктов?

    У меня нет целей кого-то похвалить а кого-то обидеть. Я призываю к грамотному оформлению.

    А вот вопрос к вам как модератору за что конкретно минус? Вы против того что я призываю к ПРАВИЛЬНОМУ оформлению?

    ЗА то что не тыкаю лицом разработчиков в гомнокод? Или большие буковки?

    Вопль адресный — разработчикам КОММЕРЧЕСКИХ ПРОДУКТОВ — это красной нитью по всему сообщению.

    Большими потому что маленькие разработчики игнорируют.

    Примеров НЕ БУДЕТ банально потому что это запрещена публикация без разрешения авторов даже части их кода.

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

    и главное «Открытая просьба разработчикам подсистем» Это тема — она указывает целевую группу и то что это ПРОСЬБА.

    Я ответил на ваши вопросы?

    С наступившим Вас.

    Reply
  45. artbear

    (44) Где конкретные примеры конкретных продуктов?

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

    А ты знаешь, что писать бА-А-А-льшими буквами не очень корректно по отношению к читателям? 🙂

    Где «это запрещена публикация без разрешения авторов даже части их кода» — на ИС? не верю

    Я не хочу смотреть в магазине у франей, у частных продавцов, я хочу из твоей статьи что-то понять.

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

    Мне не нравится наличие такого количество плюсов на общей, совершенно неконкретной статье 🙁 Своим минусом я пытаюсь их немного скомпенсировать и привлечь внимание 🙂

    Без конкретики не будет дела, к сожалению.

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

    ЗЗЫ ничего, что я на ты? «я говорю на ты, потому мы все товарищи» (с) «Большая перемена»

    Reply
  46. cool.vlad4

    В какой-то степени с (45) можно согласится. А то получается какое-то популистское высказывание — почему собственно и плюсов так много. Так любой может состряпать статью как его бухгалтера замучили (уже было даже) или программисты умничают постоянно…потому плюс не ставил(но и минус тоже)…

    Reply
  47. cool.vlad4

    (47) Речь же не о том, что кто-то не согласен с тем, чтобы была документация и «правильный», «красивый» код. Я думаю, что все согласны со здравым смыслом. Но этого явно мало. Когда мы говорим про

    при простейшей стандартизации коммерческих продуктов.

    — где она стандартизация? То, что предлагает 1С носит рекомендательный характер, они никого заставлять не могут. Я же уже в каком-то посте озвучивал мысль — 1. Разработать эти самые стандарты (естессно они должны быть очень хорошо продуманы и носить местами весьма общий характер) 2. Применять 1. для коммерческих разработок и в случае соответствия стандартов — выдавать им соответствующий статус. Кстати что-то подобное на ИС уже существует. Так, что надеюсь все мы движемся в правильном направлении.

    Reply
  48. iov

    (48) Именно это и стало решающим фактором для вступлению в группу проверки таких разработок.

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

    Пожелания можно присылать лично или прямо в это обсуждение. И вот ссылочка на пост с пожеланиями поможет «отцу русской демократии» 😀 . Все желающие смогут принять участие.

    Reply
  49. artbear

    (47) Почти ничего не понял 🙁 набор каких-то фраз 🙁 Поэтому и еще один минус к (47)

    Чем ты испортишь продажи, если покажешь ошибку на публичном форуме??

    форум и комменты к разработкам для этого и сделаны!

    и т.д. и т.п.

    (49) ну хоть что-то более полезное 🙂

    Reply
  50. iov

    (50) Да сколько угодно минусов :). «Не понял» и «слишком много плюсов» я лично аргументами не считаю.

    Ну да ладно спишем на после новогодние праздники …

    (ну хоть что-то более полезное ) — вот и принимай участие. Демотивирование темы — не на пользу никому.

    Пиши свои мысли по этому поводу только «конкретные» раз уж сам решил мотивировать только «Полезное».

    А тема уже принесла плоды. Собирается некоторая группа готовая приложить свои усилия и опыт для начала формирования стандартизации коммерческих разработок.

    Так что польза тут понятие очень не «взвешиваемое» но надеюсь что все получится.

    Reply
  51. artbear

    (51) 1. Так я тебе и написал конкретные мысли и вопросы в ответ на твои общие 🙁

    2. И все-таки не я должен писать что-то конкретное, а ты, как автор темы.

    Если ты этого не понимаешь, тогда больше вопросов не имею.

    Еще раз повторю вопрос:

    Чем ты испортишь продажи, если покажешь ошибки на публичном форуме??

    форум и комменты к разработкам для этого и сделаны!

    Каким законодательством запрещено показывать ошибки в коде и/или исходники программы?

    Reply
  52. iov

    http://ru.wikipedia.org

    К объектам авторского права также относятся:

    программы для ЭВМ (в том числе операционные системы), которые могут быть выражены на любом языке и в любой форме, включая исходный текст и объектный код

    ;

    Негативная информация по товарам снижает его продажи (И не ведения комментариев и префиксов — НЕ ОШИБКИ). Это просто отношение автора к процессу и его опыт в использовании чужих подсистем.

    И оба этих пункта не имеют отношения к обращению так как цели не «покарать» а попросить.

    Повторяю как автор этого обращения Я НЕ НАМЕРЕН УКАЗЫВАТЬ Я — ПРОШУ.

    Получается минус поставлен за просьбу которую большинство поддержало. Или твое мнение что просить «быть внимательнее к оформлению товаров» должно выглядеть изначально как свод правил?

    А конкретные мысли это — Предложение вводить префиксы из трех букв и трех цифр (и описание почему именно так). Вот это КОНКРЕТНОЕ предложение.

    Предложение помощи в разработке правил — КОНКРЕТНОЕ предложение.

    Они сделаны теми кто прочел и согласен. Те кто не согласен кстати тоже писали но в личку и там я убедил их что есть смысл.

    А выражения типа популизм и остальное типа плюсов много. как только тема потеряет актуальность можно и удалить.

    И как сказал один из завсегдатаев ресурса — «пусть завидуют жалко что ли?»

    Так что извините «несогласные» обратитесь к «установившим» плюсов пусть снимают.

    Демотивацию темы считаю просто попыткой самоутверждения или проявлением скуки или «плохим самочувствием». И на это КАЖДЫЙ ИМЕЕТ ПРАВО.

    И прошу в личку если что не так. А тут прошу конкретные «предложения».

    Reply
  53. Ish_2

    (52) Ты слишком строг. Выявить ошибку, показать последствия, предложить свой вариант — требует совсем другого разговора.

    И другого уровня.

    Любая палка об двух концах — и приводя такие примеры автор сам рискует нарваться на «встречный в лоб».

    А на «крик души общего плана» автор вполне имеет право. Так безопасней , да и тема — Лайф.

    Reply
  54. iov

    (54) Да в том и дело цели другие… А выявить — предсказать — вариант для бесплатного завсегда пожалста (но в личку пишу). Дабы не травмировать тонкую душу программиста.

    Но тут видимо другие «предположения» типа собирания плюсов. Плюсы коллекционировать тоже не моё. Но это только предположение ибо душа программиста полна тараканов пришедших из головы :D.

    Reply
  55. Rustig

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

    …когда выходит очередное обновление от 1С (или других вендоров) — также приходится тратить время на интеграцию своих доработок и этих обновлений — кажется это наша работа 🙂

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

    всем привет 🙂

    Reply
  56. Flashback1979SE

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

    Reply
  57. iov

    (56) Конкретика будет чуть позже но не то что сделано неправильно а то что правильно. Есть желание ввести необязательную сертификацию продуктов по категориям типа INFO (по аналогии с ISO) для того чтобы до покупки товара внедренцу было понятно с чем предстоит работать. Но пока пардон ЯНВАРЬ будь он неладен свертки-сверки-выгрузки и остальное… Пока только основные макетные наброски есть… Нужен спец по стандартизации как консультант по нескольким вопросам…

    Reply
  58. iov

    (56) Да и публиковать никто не разрешил (так как публиковать ошибки предполагалось)…

    Reply
  59. iov

    Что есть стандартизация это —http://ru.wikipedia.org/wiki/стандартизация

    Reply
  60. Лёвыч

    открытая открытость такая открытая…

    http://screencast.com/t/rknkQm5wz

    Reply
  61. iov

    (62) Извини уважаемый видимо что-то пропустил но все на максимальный доступ настраивал.

    Reply
  62. romansun

    Люди, не знакомые с понятием промышленная разработка практически необучаемы никакими воззваниями, статьями и пр. Хотя, конечно, они со всем будут согласны, поскольку отнюдь неглупы. Они просто неопытны.

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

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

    К чему я всё это пишу в ночи? 🙂 К тому, что если хотя бы несколько человек изменятся самостоятельно — то это будет очень очень хорошо ))

    Reply
  63. Владимир Зайцев

    Единственное решение, которое приемлимо и опробованно жизнью, написать самому все модули….Да , будут уступать функционально, но зато буду знать каждый знак кода 😀 💡

    Reply
  64. Ish_2

    Какое превосходное соседство (63) и (64).

    Reply
  65. iov

    (65) Причем смотри ка без дальнейшего развития.. Возможно же сосуществование 🙂

    Reply
  66. Ish_2

    (66) Понял . Первая фаза понимания мирного сосуществования..

    Вот Вам вторая фаза.

    Мирное сосуществование хорошо не само по себе , а тогда когда оно что-то родит.

    Если оно ничего не родит , то зачем оно ? Тогда — давайте воевать.

    С третьей фазой — пока подождем. Рано.

    Reply
  67. cool.clo

    (67) а третья — почему рано? Или это и есть 3-я фаза — умение ждать и терпение?

    ЗЫ 😀 Давайте api на 1С напишем, …вообще как все развивается была программа для ведения учета, а сейчас уже вон — средство коллективной разработки. Радует, что и в нашей стране есть программные гиганты.

    Reply
  68. Ish_2

    (68) Ну , вот.

    Последнее время меня опережают — не дают поумничать.

    Reply
  69. Владимир Зайцев

    Z смотрю, за столом собрались люди скептико Философы, стАдийного развития 1С по Нуралиевски, посему предлогаю всем опустить носики в свои компы и вернуться к нашему любимому коду…. 😀

    Reply
  70. Владимир Зайцев

    В догонку исправляя свою самопись,Вы очень быстро овладеете инструментами блокировки пользователей, за коментированием большого объёма написанного, усвоите основы Групповых политик Майкрософта и много ещё чего , не связанного напрямую с программированием.

    Reply
  71. cool.clo

    (71)

    Вы очень быстро овладеете

    «Вы» — это кто? Знание GP, конечно, хорошо, и основы кто-то там познает (наверное этот пресловутый «Вы» 😀 ), но как-то с контекстом не вяжется — али ирония такая тонкая, что её не видно и/или её нет.

    Reply
  72. cool.clo

    каждое слово лишь набор байтов, если в слове ошибка проверьте свой отладчик.

    Reply
  73. iov

    Философствующие анархисты-демократы-программисты 😀

    ВЫ опытом делитесь по тому как просто и эффективно приучить писать -грамотно.. линейкой там по рукам или переписывать по 100 раз

    // я буду комментировать свой код

    // я буду комментировать свой код

    😀

    Reply
  74. romansun
    iov пишет:

    ВЫ опытом делитесь по тому как просто и эффективно приучить писать -грамотно.. линейкой там по рукам или переписывать по 100 раз

    удалённо — никак наверное

    непосредственно — ну таки да, линейка помогает )))

    Мой опыт был такой — напишешь чо-нить, отдаешь начальнику:

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

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

    — дальше смотрит код в целом, наименования переменных, понятность кода и на явные недочёты типа вытаскивания констант внутри цикла и пр.

    — потом запускает замер производительности и смотрит туда, явных перекосов, всплесков по нагрузке быть не должно. Все случаи, когда одна позиция занимает 60-70-80-90%, разбираются отдельно и подробно. Часто это явный признак каких-то неоптимальных циклов, неоднократное вычисление сложных значений и прочая лажа…

    — запросы. Запросы — это отдельная песня 🙂

    — в конце смотрится интерфейс. Соответствует ли он стандартам, всё ли нормально растягивается, всё ли ровно, понятно. Ну с интерфейсом часто бывает так, что одни могут рисовать понятные и правильные интерфейсы, а другие — не могут. Зато запросы пишут лучше…

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

    Reply
  75. iov

    (75) Схема — отличная. Но слава богу не писать надо учить а просто комментировать и указывать свое где.

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

    Reply
  76. romansun

    (76)

    да, сертификация может помочь, думаю 🙂

    Reply
  77. iov

    (77) Причем никто никого не заставляет…

    И как говорил кто-то если хоть один человек станет лучше — работа сделана не зря.

    И пару предложений по стандартам будет?

    Reply
  78. romansun

    (78)

    по стандартам? ну вроде по стандартам же есть методические материалы. У той же 1С есть. Да и у любой крупной конторы какие-то внутренние документы должны быть.

    Или можно взять, к примеру, вот это http://dev.1c-bitrix.ru/docs/php_recommendation.php и переписать на 1С.

    Очень правильно там написано про табуляцию (Для форматирования отступов в коде нужно использовать табуляцию. Использование пробелов запрещено).

    Про пробелы (После запятой должен быть пробел. После точки с запятой, если она не последняя в строке (например в инструкции for), должен быть пробел. Перед запятой или точкой с запятой пробелы не ставятся. Все операторы должны быть отделены пробелом от операндов с обеих сторон. Замена пробела символом табуляции не допускается.)

    И прочее — практически весь текст замечательно перекладывается для 1С.

    Еще слышал такое мнение (от программистов, но не 1С 🙂 ), что код должен быть читаемым типа как книга. Т.е. человек просто сидит и читает алгоритм, практически по обычным правилам русского языка (в оригинале человек говорил про английский — там проще, склонений нет )))

    Reply
  79. cool.clo

    (79) Какие-то очень странные книги тот человек должно быть читал — читает, читает, потом перелистывает вперед, потом назад, потом в зависимости от условий, потом в цикле, затем открывает книгу и читает там абзац и из другой книги… 😀 Насчет правил — это, конечно, хорошо, но это настолько легко нарушить, а главное мотивации у многих нет, чтобы эти правила соблюдать. Если бы синтаксический контроль и форматирование было бы в 1С пожестче как в средах интегрированной разработки, но они не могут этого сделать по многим соображениям.

    Reply
  80. iov

    (79) Очень хорошо только менее глобально — все только для подсистем.

    (пока для подсистем). Красивое написание кода- это как стиль либо есть либо нет- либо Зверев.

    Reply
  81. romansun

    (80)

    ну по поводу книги, имеется ввиду чтобы глаз не спотыкался о конструкции типа «Для Каждого Строч Из ТЗ_ОбВыведИзЭксплНаДата Цикл».

    Код должен читаться просто как жестко регламентированная стандартизированная инструкция или документация, что-то типа «Для Каждого СтрокаТаблицы Из ТаблицаВыведенныхИзЭксплуатацииОбъектов Цикл».

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

    В принципе, типовые 1С-ные конфы вполне подходят под эту идею. Минус только в том, что очень длинные строки получаются, например «МассивУзловДляОбменаССайтомТоварами.Количество()» или «СоответствиеУзловИДатДляОбменаУправлениеТорговлейРозничнаяТ­орговля» 🙂

    Reply
  82. romansun

    [вот смотрю щас в УТ — программисты 1С тоже люди и тоже пишут простые такие и понятные всем комменты )))

    // находим пользователя ИБ

    ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоИмени(ИмяПользователяИБ);

    ]

    Reply
  83. woozee

    Делать вам нефиг)

    Делать вам не фиг качать отседова что то и внедрять на своей конторе)))

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

    Я же отсюда что скачал — ниразу не нашел того что можно было бы внедрить. По коду очень редко что полезного бывает…

    По статьям… Статьи эти тоже кому нужны? Я им не верю)) Я лучше открою книжку от 1С и почитаю оттуда, чем копировать мнение того, который не понятно какие мысли у него о том о чем он пишет, правильные ли они и т.д.

    Цель — а давайте программировать правильно! Интересно как это? После этой статьи начинающие программисты сядут за книжки и будут читать и больше никогда не выложат неправильную обработку. Так что ли? 🙂 Такого не будет никогда)) Убирайте лимит, пусть качают что хотят.

    Сейчас вот еще и баксы виртуальные внедрили… нафига?:) Что бы вообще сюда не заходить?:)

    Хотите научить пользователей правильно кодировать? Хотите что бы они выпускали документацию? Такого нибудет никогда) Забудьте)

    Reply
  84. iov

    (84)

    Делать вам нефиг) — И все что делаем превратится в пыль со временем.

    Делать вам не фиг качать отседова что то и внедрять на своей конторе))) Странно слышать это от человека который сам выкладывает сюда. Да и откуда качать?

    Неопытный программист который хочет скачать кучу отчетов с инфостарта натыкается на лимит. Поэтому начинает выкладывать свои творения, что бы перевалить на безлимит. Это спасибо руководству инфостарта. Я имею ввиду платные решения Хотя «подсистема разработчика» пример именно грамотного подхода к формированию подсистемы причем бесплатно.

    Я же отсюда что скачал — ниразу не нашел того что можно было бы внедрить. По коду очень редко что полезного бывает… Если не секрет где есть лучше?

    По статьям… Статьи эти тоже кому нужны? Я им не верю)) Я лучше открою книжку от 1С и почитаю оттуда, чем копировать мнение того, который не понятно какие мысли у него о том о чем он пишет, правильные ли они и т.д.

    Тоже относится и к книгам по 1с устаревающим уже при выпуске из типографии. В книжке 1С к сожалению многие ответы отсутствуют как класс. А статьи судя по рейтингам- полезны таки.

    Цель — а давайте программировать правильно! Интересно как это? Есть много ответов КАК — гугл и книги — там ответы.

    После этой статьи начинающие программисты сядут за книжки и будут читать и больше никогда не выложат неправильную обработку. Так что ли? 🙂 Такого не будет никогда)) Если хоть 1 автор так сделает- не зря писал. НО ОПЯТЬ ЖЕ статья для ПЛАТНЫХ продуктов.

    Убирайте лимит, пусть качают что хотят. Владелец сайта тоже кушать хочет.

    Сейчас вот еще и баксы виртуальные внедрили… нафига?:) Что бы вообще сюда не заходить?:) — Это точно вопрос — мне? Или таки администрации?

    Хотите научить пользователей правильно кодировать? Хотите что бы они выпускали документацию? Такого нибудет никогда) Забудьте) Как пример посмотрите как выкладывались обработки раньше и как сейчас- грамотность оформления и описания радует — так почему же невозможно?

    Reply
  85. woozee

    (85)

    Странно слышать это от человека который сам выкладывает сюда. Да и откуда качать?

    Именно ради того что бы перевалить за лимит. 30 есть — теперь мне все равно)))

    Если не секрет где есть лучше?

    Всё что от меня требуется — делаю сам. Что бы уж вот так скачать где то- не возникало необходимости.

    Есть много ответов КАК — гугл и книги — там ответы.

    Это был риторический вопрос, начинающее рассуждение

    Если хоть 1 автор так сделает- не зря писал. НО ОПЯТЬ ЖЕ статья для ПЛАТНЫХ продуктов.

    Вы напишите учебников, видеоматериалов. Простые просьбы даже читать не станут)

    Как пример посмотрите как выкладывались обработки раньше и как сейчас- грамотность оформления и описания радует — так почему же невозможно?

    Грамонтость оформления контролирует сейчас супермодератор.

    Реально, неужели вы действиельно преобрели тут творчества за денежку и пытались их внедрить?:) Я бы не рисковал… Было конечно неск. лет назад, посетила такая идея, но.. будучи бывшим франчайзи, задался вопросом а кто же поддерживать будет)) Выбрали все же официальных дистрибьютеров))

    Reply
  86. cool.vlad4

    (86) По моему вы выдумаете себе ветряные мельницы.

    Reply
  87. iov

    (86)

    но.. будучи бывшим франчайзи

    Ай вот оно что…

    Выбрали все же официальных дистрибьютеров)) Нет у них таких продуктов и не планируется — но для справки все что приобрел здесь- внедрено успешно работает и радует функционалом…

    И вопрос в догонку если тут все «не нужно» — зачем рейтинг нужен был?

    Всё что от меня требуется — делаю сам. Что бы уж вот так скачать где то- не возникало необходимости. 

    Похвально но лично мне проще купить что-то готовое чем велосипеды изобретать. Заодно и программистов это мотивирует писать что-то полезное а не пренумераторы. Да и есть продукты писавшиеся не один месяц и отлаженные на нескольких предприятиях. Зато не самая последняя компания франч не справилась с внедрением УПП и гордо удалилась (для примера не заполнены как положено справочники основные и даже отсутствуют спецификации — НА ПРОИЗВОДСТВЕ!!! ) И чтобы быстро исправить ситуацию было приобретено несколько подсистем и как ни странно — частично заработало.

    Reply
  88. iov

    (87) Мельницы нужны, но вот что они мелют муку или чушь — это вопрос истории. © непомню кто

    Reply
  89. woozee

    (88)

    И вопрос в догонку если тут все «не нужно» — зачем рейтинг нужен был?

    Сам не знаю)) Как то потребовалось скачать 2 обработки, а показали фигу. Ну нет так нет..

    Заодно и программистов это мотивирует писать что-то полезное а не перенумераторы.

    Рейтинг как раз и мотивирует писать перенумераторы (которые и так на ИТС есть=))

    Мну так жаба задушит выкладывать целые конфигурации сюда, либо глобальные разработки-обработки. За какие то плюсики)))) А вот за платно оно вряд ли кому понадобятся. Сейчас же как — хочешь узнать чего нибудь нового — скачай конфу и поройся внутри)) Я до обучения ковырялся в документообороте посмотреть возможности платформы 8.2 и вообще. В процессе ковыряния внедрил на предприятии у себя =))) Но это уже в другую степь. Ладно, удачно вам научить уму разуму))

    Reply
  90. sumixam

    (75) romansun, да схема четкая но не оптимальная)))

    Reply
  91. iov

    (91) Оптимизация — удел опыта. а обычно одна компания выпускает — 1-2 коммерческие подсистемы «коробочные». И потому каждый сам решает какие стандарты использовать.

    Reply
  92. alexkl

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

    Reply
  93. AlexO

    (3) Ish_2,

    «Остальное» — как раз важнейший атрибут профессионализма.

    согласен. Но деградация у 1С-программистов достигла уже такого размаха, что все бесполезно, и 1С ведет их все глубже и глубже.

    документирование программного продукта чрезвычайно муторное и нелюбимое всеми

    а мной любимое. Потому что это нужно и необходимо. И потому, что мне до лампочки 1С-логика и её «идеалы» вкупе с её «методиками». И потому я работаю там, где мне разрешают тратить время на документирование, что занимает до 3/4 рабочего времени.

    Reply
  94. AlexO

    (7) cool.vlad4,

    Бывают, конечно, недоделки программистов

    недоделать и сделать кое-как — это стиль и смысл 1С-программирования.

    Reply
  95. AlexO

    (18) Арчибальд,

    Т.е. занимается тюнингом.

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

    И мине кажется — вы путатете внедренца (который и программсит зачастую) с впаривателем, который даже и не консультант ни разу…

    Reply
  96. AlexO

    (34) cool.vlad4,

    1С не микрософт, и стандарты программистам навязывать не хочет

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

    во-торых — 1С как раз и навязывает свои «стандарты», только вот вы их упорно не хотите замечать, хотя и следуете им: бессистемность кода, бессмысленность алгоритмов, недоделки как цель, отсутствие обработки ошибок — принцип, городить огород из т.н. «объектов», чтобы получить выхлоп маленького облачка — система, и т.д. и т.п.

    Reply
  97. AlexO

    (44)

    примеры отсутствия справок?

    Макрософт первым делом внедрил в свои среды разработки механизмы простой разработки справки к создаваемым продуктам. Встроенной справки. Какой делаем вывод? 1С поощряет делать справку?

    Reply
  98. AlexO

    (41) RayCon,

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

    Николай, полностью согласен и полностью поддерживаю 🙂

    Reply

Leave a Comment

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