Рубрики
1С 8.3 и не только

Год спустя

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

Плюсы после перехода:

  1. Работать стало лучше, работать стало веселей. Надо отдать должное, 8.3 для пользователей работает гораздо шустрее, чем 7.7. Документы проводятся быстрее, про построение отчетов и говорить бессмысленно — на порядок быстрее написать нормальный запрос и вывести данные, а не пользоваться тупыми переборами таблиц 7.7 (прямые запросы в семерке все равно медленнее).
  2. Очень радуют по сравнению с семеркой возможности настройки интерфейса для пользователя — раскраски ячеек, объединения колонок, произвольные динамические списки и прочее, прочее, прочее. Можно сделать удобный и наглядный интерфейс, хотя, надо признаться, этому моменту уделяю не так много времени. В приоритете стоит вопрос — как проверить корректность ввода, сделать так, чтобы вводить поменьше данных, чтобы ускорить работу пользователя.
  3. Отдельно стоит сказать про возможности «отложенного» проведения документов по регистрам, когда в режиме реального времени делаются только основные движения (например, списываются остатки товаров со склада), а потом регламентным заданием делаем вспомогательные движения (продажи, затраты и прочие). Это особенно заметно сказывается на скорости работы при пакетном формировании большого количества документов подряд.
  4. Наконец-то регламентные задания выполняются точно по расписанию. Не надо делать дурацкие задачи на запуск 1С каким-нибудь планировщиком ночью, чтобы выполнить обработки и автоматически сформировать документы, произвести расчеты.
  5. Естественно, нельзя не упомянуть про встроенные в платформу возможности по работе с электронной почтой, интернет соединениями, возможностями по обмену данными в различный форматах и т.д. Плюшек много, писать кода надо гораздо меньше и не используя внешние компоненты.

И ложка дегтя в бочке меда:

  1. Непродуманный и кривоватый полнотекстовый поиск. Настроить его для работы даже на оценку «Хорошо» у меня не получилось. Максимум — «Удовлетворительно», а если трезво оценивать — между «Очень плохо» и «Плохо». Поиск медленный и для быстрой работы не подходит. Если чуть-чуть переборщить в списке с количеством полей, по которым осуществляется поиск, то он длится 3-5-10 и более секунд в списке документов из 200тыс строк. Если список небольшой, то ищет быстро, но недостаточно — сказывается существенная (около 0.05-0.1 секунды) потеря на передаче информации между клиентом и сервером. Поэтому в списке товаров при подборе в документ (когда покупатель «на телефоне»), где надо быстро искать нужный товар, пришлось написать свою обработку, отказавшись от стандартного поиска.
  2. Ошибки в платформе, о которых я рассказывал ранее (и буду рассказывать в дальнейшем). На выявление и обход иногда тратится большое количество времени. Все-таки семерка была отлажена и работала корректно в пределах своих возможностей, а тут 1С пытается добавить большое количество новых возможностей (востребованность которых иногда под очень большим вопросом), и, как обычно, все вместе получается сыровато и кривовато. А проблемы появляются у конечных пользователей и программистов, когда сама фирма 1С тихо сидит в сторонке и пополняет список выявленных ошибок. В то время, как за эти ошибки платят, опять же, конечные пользователи.
Рубрики
1С 8.3 и не только

Программисты 1С — поиск и мучения (часть 2)

Теперь расскажу о втором виде программистов 1С — «продвинутые». Это отдельная когорта программистов, которые уже сделали шаг на вторую ступеньку и пытаются подняться выше, но…

2.1. «Продвинутые младшие». В большинстве случаев это люди возрастной категории — 23-30 лет и запросами по ЗП 40-45 килорублей. Успели поработать в одной-двух-трех компаниях, поднабрались небольшого опыта. Начинают понимать с чем имеют дело — основы учета, остатки, обороты, дополнительная информация. Умеют создавать отчеты, обработки, алгоритмы, где требуется получать информацию из нескольких таблиц. От таких сотрудников уже можно получать реальную отдачу в работе. Но, как и всегда есть и очень важный нюанс — надо в как можно более сжатые сроки оценить, что из себя представляют знания такого сотрудника — или это реальное понимание системы или это «зазубренное» знание. В первом случае — сотрудник будет развиваться, идти дальше и приносить все большую и большую пользу, а во втором — это предел. Дальше зубрить нечего и человек так и останется на данной ступени развития. Ради справедливости надо заметить, что в некоторых случаях (компаниях) есть необходимость иметь таких «роботов», выполняющих черновую работу. Поэтому выбор оставлять сотрудника или увольнять полностью лежит на руководителе подразделения. Именно руководитель должен обеспечивать «робота» работой или развить потенциал в понимающем сотруднике.

2.2. «Продвинутые понимающие». Это уже люди до 35 лет и запросами ЗП 50-60 тысяч рублей. На мой взгляд, одна из самых приятных в работе категория программистов. Они уже понимают что делать, как делать. Им не надо все описывать по шагам, говорить какие данные откуда брать — они сами это могут понять, посмотрев и разобравшись с конфигурацией. Основное внимание в работе с такими программистами надо уделять коду, который они создают. Зачастую написанный такими программистами код страдает необоснованно частыми переходами выполнения с клиента на сервер или изобилует излишними проверками условий и из-за этого выполняется дольше. Важно вовремя подсказать это, где-то подправить, оптимизировать и все будет работать как часики. И главное — помогать такому сотруднику развиться, создать условия для прямого общения с пользователями, которые пользуются плодами его труда, чтобы программист начал смотреть на создаваемый им интерфейс, отчеты с точки зрения пользователя и в дальнейшем уже мог предугадывать желания пользователей и сам решать, как и что должно выглядеть и работать, чтобы было удобно.

Рубрики
1С 8.3 и не только

Программисты 1С — поиск и мучения

За почти 3 года, которые писалась конфигурация, у меня сменилось десятка два программистов (я даже со счета сбился). Кто-то из них проработал больше, кто-то меньше. были особи, которые смогли продержаться всего несколько дней, некоторые — месяц-два, а кое-кто даже год и более. Как результат — теперь я делю их на 3 вида: начинающие, продвинутые и опытные, а каждый из видов на 2 подвида.

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

1.1. «Начинающие младшие» — как правило, молодые люди 19-23 лет (иногда до 27), которые чем-то занимались, где-то кем-то работали и тут их осенило (а может посмотрели на зарплаты от 80к), что 1С — это то, о чем они мечтали. Они посмотрели видео курсы,  иногда честно отходили на какие-нибудь очные курсы, бывает даже, что читали книги типа Радченко. Запросы по ЗП у таких маленькие (в текущих ценах от 25 до 35 килорублей) и велик соблазн взять на работу, подучить месяц-два и получить какого-никакого программиста за относительно небольшие деньги. Что мы получаем — этот горе-программист кое-как может создать визуальную форму отчета/обработки, создать макет mxl, но когда дело доходит до написания кода, то сразу возникают сложности. Огромные. Начинаем выяснять, идем по шагам и делаем пугающий вывод — он не может составить алгоритм своих действий. Даже на листочке расписать по пунктам что и в какой последовательности делать не в состоянии описать. Доходит даже до умопомрачения — не может описать, как он добрался до работы (хотя бы вышел из дома, дошел до остановки, дождался нужного автобуса, доехал до нужной остановки и т.д.). О каком программировании идет речь? У меня ребенок в школе на уроках информатики составляет такие алгоритмы. Хорошо, что это выясняется легко и быстро, и уже на второй-третий день этот сотрудник уходит восвояси полностью провалив испытательный срок. На таких даже время тратить не стоит.

1.2. «Начинающие с опытом» — немного лучше, чем младшие. В основном молодые люди от 23-27 лет. Получили высшее образование (очень часто связанное с техникой, компьютерами, математикой). В основном уже успели поработать у франчей. Консультировали пользователей, дорабатывали типовые конфигурации (исправление отчетов, документов, печатных форм) по-мелочи. Запросы — 35-40к в месяц. За такие деньги мы получаем программиста, который может сделать печатную форму для документа (даже сам), простой отчет (типа вывести список). НО! Как только поручаешь ему немного более сложную задачу, где надо написать запрос с выбором данных из десятка таблиц, расчетом остатков и движений, то мы видим, что этот «программист» не знает предметную область — что такое остатки, движения, как они взаимосвязаны и из каких таблиц их получать. На такого кандидата я трачу времени побольше — 1-2 недели, пытаясь объяснить как ведется учет, как из записей регистра накопления получаются остатки, как соединятся таблицы в запросах, основные алгоритмы и принципы. Если человек начинает понимать то, что ему пытаются донести, то он даже может принести какую-нибудь пользу (написать несколько простых отчетов и печатных форм), но в большинстве случаев мы видим, что понять основы учета для такого программиста является непосильной задачей, у количество печатных форм ограничено и с сотрудником приходиться расставаться как с непрошедшим испытательный срок. Для таких «программистов» есть франчайзи и это их потолок — консультация, обновление типовых конфигураций и… печатные формы. Надо признать, что один из таких у меня продержался месяца два и для своего уровня сделал достаточное количество простых отчетов и злощастных печатных форм.

На сегодня все, а в ближайшее время я продолжу описание подвидов и расскажу вам про «продвинутых» и «опытных».

Рубрики
1С 8.3 и не только

Выбор: самописная или типовая конфигурация?

Первое, с чего пришлось начинать, это выбор: что взять за основу новой учетной системы. Взять готовую конфигурацию от 1С (или другого разработчика) и допилить под собственные нужды или сделать все с нуля, настроив под себя. Что проще в разработке и, самое главное, в дальнейшей доработке? Что будет работать быстрее?

В итоге, после тестирования нескольких готовых решений (с выгрузкой тестовых данных) я составил список основных плюсов и минусов.

Плюсы:

  • «Уже все готово» — есть основные документы, отчеты и т.д.
  • Возможность регулярного обновления и не надо переживать за обновление регламентированных форм
  • Уже готовые обмены данными с другими учетными системами, сервисами и .т.д (бухгалтерия, сайты, ЭДО)

Минусы (рассматриваются именно из специфики нашей компании):

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

В итоге было принято решение взять за основу «Библиотеку стандартных подсистем», а все остальное писать самому (с помощниками), т.к. «готовые» решения подходят:

  • для «малого бизнеса» — когда у тебя 1-2-5 работников, 1-2-5 магазинов и нет «специфических» бизнес-процессов и ты работаешь не спеша в свое удовольствие.
  • для «большого бизнеса» — когда ты можешь потратить десятки-сотни миллионов денег на оборудование и доработку учетной системы
Рубрики
1С 8.3 и не только

Предисловие

Сегодня ровно 30 дней, как компания, в которой я работаю на должности начальника IT (и программиста 1С одновременно), совершила большой шаг — отложила в сторону старинную 1С7.7 и начала работать по-новому. Теперь цифры для нас считает 1С8.3.

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

И вот, 03 мая 2020 года случился первый рабочий день на новой платформе. Как ни странно, никаких глобальных сложностей не произошло. Работа не остановилась, документы формировались, товар комплектовался, машину уезжали. Конечно, начали вылезать наружу недочеты и ошибки, но сильного влияния на текущую работу они не оказывали и в течении мая большая их часть была исправлена.

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

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

  • вид деятельности компании: оптовая и розничная торговля бытовой химией, товарами для дома, косметикой, парфюмерией
  • количество пользователей: 100+
  • количество активной номенклатуры: 20000+
  • количество документов: 2000+/в день
  • начальный размер базы данных при старте (переносились ТОЛЬКО документы по движению товаров и взаиморасчетов): 250+Гб

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