Глава Третья. Что такое 1С и о работе программистом простыми словами.

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

Теперь перейдём к ещё одной базированной главе, без которой невозможно полноценное понимание этой книги. Речь в ней пойдёт о великом и могучем языке программирования 1С.

«1С: Предприятие» — это жёлтый ярлычок с красной надписью «1С» на рабочем столе вашего персонального компьютера 😊, а если серьёзно — это такая специальная программа-платформа, на базе которой создаются и работают множество готовых программных продуктов для автоматизации бизнес-процессов в различных организациях. Примеры таких продуктов (их название на1С-слэнге — конфигурации): «1С: Управление производством и персоналом», «1С: Зарплата и управление персоналом», «1С: Бухгалтерия», «1С: ERP, «1С: Управление торговлей», «1С: Документооборот» и многие-многие другие. Данные конфигурации созданы самой фирмой «1С» (именно там был создан язык программирования и платформа, а ещё данная компания когда-то занималась компьютерными играми), к ним от неё выходят обновления и дополнения, техническая поддержка для них осуществляется лицензионными филиалами 1С (компаниями-франчайзи). Программные продукты 1С применяются для различной учётной деятельности (учёт сотрудников, товаров, оборудования, производственной деятельности, и т.д., хоть для учёта животных в зоопарке), для ведения бухгалтерии, для расчёта зарплаты, для ведения документооборота, для работы кассового оборудования и т.д. В общем, 1С создан для обеспечения всех нужд мелких, средних и крупных предприятий.

Вообще любой человек, обладающий навыком программирования на языке 1С, может создать себе конфигурацию для своих целей: от студенческой лабораторной работы до определённых задач своей фирмы. Это называется самописная конфигурация. Для технической поддержки готовых решений и создания самописных конфигураций существует специальный режим платформы — Конфигуратор. Для простых пользователей существует режим 1С: Предприятие. Программист может править код конфигурации в режим Конфигуратор и видеть результат своей деятельности в режиме 1С: Предприятие.

Многие из тех, кто не шарит, считают, что 1С предназначен только для ведения бухгалтерии, что более, чем ошибочно. Ох, сколько раз я спорил со всякими гречневыми токсиками, которые мне доказывали, что 1С скоро вымрет, что его заменит онлайн-бухгалтерия «Моё дело», что его заменит SAP (доводы тех гречневых, кто попрокаченнее в знаниях) и т.п. Любые мои слова всегда игнорировались, гречневые такие гречневые 🙂. Время всегда всё показывает и ставит по местам, где теперь, к примеру, вот тот же SAP?

Когда-то в Гамбурге в банке я отлично понял, что многие отечественные информационные системы, даже имея свои минусы, превосходят западные: сотрудник, который делал для меня карту, спросил, на какой специальности в университете я учусь, и, узнав, пожаловался на то, какая у него тормознутая и неудобная банковская программа — «business information systems такие business information systems)))» 😉.

Поэтому направление 1С невероятно перспективно.

Есть много различных профессий в отрасли 1С. Некоторые, на самом деле, подразумевают одно и тоже, просто называются по разному. Выделю самые основные и распространённые:

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

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

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

4) Менеджер по продажам. Основные функции: обычный продажник, только работает в компании-франчайзи и продаёт программные продукты 1С, поэтому должен хорошо разбираться в них; также оформляет документы для участия в тендерах на обслуживание различных клиентов.

5) Ваш начальник (чаще всего, отдела, иногда в этой роли, может быть, сам генеральный директор, если компания маленькая). В некоторых случаях это человек без опыта работы программистом или аналитиком, сам не понимает, как работает 1С изнутри. И так даже может оказаться и лучше. Основные функции: заполнять бесконечную бюрократию из бумаг, быть надсмотрщиком, воспитателем, психологом, мамкой и папкой для аналитиков, программистом и прочих персонажей, пытаться заставить их работать, общаться со всевозможными клиентами и начальством повыше, сидеть на оооооооооооооооочень бесконечных созвонах, выполнять обязанности бухгалтера, считая вам зарплату (на Заводе)… Из шуточных и деструктивных «функций»: тащить свои всевозможные комплексы в работу, шатать лодку, если высшее начальство за#бало, читать неотоксичные методички, проводить эксперименты на себе и на гречневых 🤐. Если вы столкнулись с деструктивными функциями, то надо включать режим «пора съ#бывать» 😀.

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

7) Архитектор 1С. Это гуру программирования и аналитики. Если программиста-консультанта где-то в каком-нибудь колхозе в 1220 году научили, что надо работать с переработками и быть говорилкой, иначе он ненастоящий мужчина или ненастоящая женщина, то это Просто Гуру. Будет учить вас, что вы неправильно программируете, код ваш устарел и неэффективен с точки зрения быстродействия и его надо оптимизировать. В общем, это чувак или чувиха, которые будут вас опускать 🤣. Не советую сталкиваться. Серьёзно. Хотя, если честно, то некоторые вещи можно подчерпнуть.

8) Руководитель проекта 1С. Бюрократические, созвонические и управленческие функции немного похожи на вашего начальника, но только в рамках определённого проекта (расскажу, что это такое, в четвёртой главе), поэтому мозго#бства, наверное, меньше (ключевое слово — наверное).

9) Тестировщик 1С. Это отчасти новая профессия, которая кстати широко используется в других языках программирования. Как оказалось, тест-кейсы можно писать и на 1С 😲. С тестировщиками 1С я лично не сталкивался — обычно доработки программиста тестирует аналитик.

Дальше я буду разбирать обязанности профессии «программист 1С», потому что у меня есть опыт работы только в этом статусе. Но о работе сервис-инженером тоже есть отзыв от моего друга под псевдонимом Мангалыч:

Григорьич в компании Ципсофт сделал из меня сервис-инженера. Обязанностей очень много, а платят меньше всех остальных профессий в 1С 😥😡. (с)

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

Для примера буду использовать самописную конфигурацию для учёта просмотренных фильмов и сериалов. Необходимо подчеркнуть, что это всего лишь самые азы на примере очень лёгкой конфигурации. На реальных готовых решениях всё ГОРАЗДО сложней.

Самописная конфигурация в режиме "Конфигуратор"

Самописная конфигурация в режиме "1С: Предприятие"

На скриншотах выше мы видим, что 1С крайне удобен в том, что синтаксис его в отличие, например, от Java или C++, сделан на русском языке, и для программирования на нём нужна лишь одна программа, а не несколько (одна для написания кода, другая для отладки). Конфигурация 1С в Конфигураторе состоит из объектов (которые вы видите на первом скриншоте): справочников, документов, регистров сведений, регистров, накоплений, отчётов, обработок и т.д. Справочник «Фильмы» в режиме 1С: Предприятие мы можем наблюдать на втором скриншоте выше. Данная самописная конфигурация устроена только на справочниках и отчётах:

Справочники и отчёты в конфигураторе

Элемент справочника «Фильмы» в режиме 1С: Предприятие

Отчёт Просмотренные фильмы в режиме 1С Предприятие

Отчёт Просмотренные фильмы в режиме Конфигуратор

Форма элемента справочника «Фильмы»

Использование консоли запросов для отладки запросов в режиме 1С Предприятие

Простейший код на языке 1С из другой самописной конфигурации

Целью программиста при создании самописной конфигурации для учёта просмотренных фильмов было создание справочников, их форм, реквизитов и табличных частей (на примере справочника «Фильмы» реквизиты «Год выхода», «Просмотрен», «Дата просмотра», «Специфика», «Оценка»), чтобы пользователь мог в режиме 1С Предприятие создавать элементы данных справочников, и создание отчётов, с помощью которых пользователь может видеть данные из элементов справочников в определённых разрезах, которые нужны ему. Отчёты созданы с помощью запросов 1С — этот механизм позволяет получать данные из базы 1С (разница между конфигурацией и базой: конфигурация — программа, написанная на 1С; база — место хранения данных, основанное на определённой конфигурации). Запросы 1С похожи на SQL-запросы, только имеют русский синтаксис. Тестируют запросы в режиме 1С: Предприятие на реальных данных с помощью специальной обработки «Консоль запросов».

В реальной жизни работа программиста состоит ещё во многих вещах, так как:

создание/доработка документов (объект 1С, с помощью которого можно зарегистрировать в базе приём сотрудника на работу, приход/продажу товара и многое другое);

создание/коррекция кода в различных модулях (модуль объекта, модуль менеджера, модуль формы, общий модуль);

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

создание обработок (объект 1С) для коррекции или массового заполнения каких-либо данных в документах/справочниках/регистрах (обработки и отчёты также бывают внешними: их создают в конфигураторе, но не прикрепляют в структуру конфигурации, а прикрепляют в базу в специальный раздел «Дополнительные отчёты и обработки», созданный с помощью БСП — библиотеки стандартных подсистем, которую программисту тоже надо знать);

создание/доработка обменов между различными базами 1С/сторонними программами и 1С с помощью объектов 1С из раздела Общие (Web-сервисов, WS-ссылок, Планов обмена и т.д.);

создание/доработка правил обмена между базами 1С в отдельной специальной конфигурации «1С: Конвертация»;

создание/корректировка регламентных заданий (объект 1С из раздела «Общие», код в котором отрабатывает по определённому расписанию, заданному в базе);

ограничение доступа для пользователей (чтобы всё наполнение базы мог видеть только пользователь с ролью «Полные права», роль — это объект 1С из раздела «Общие»);

обновление нетиповых баз 1С на релизы, выпущенные фирмой 1С (это отдельный квест, созданный для сохранения внесённых программистами доработок в новых версиях конфигураций);

исправление ошибок новых релизов (да-да-да, в самой главной компании 1С тоже бывают косые и криворукие люди);

внесение в базу новых доработок в вечернее или ночное время, когда в ней нет активных пользователей, потому что в рабочее время нельзя — из-за «встречи» пользователей и доработок база может «сломаться»;

создание расширений для конфигураций. Расширение — это специальная «конфигурация в конфигурации», в которую можно добавлять объекты из основной конфигурации и их дорабатывать, а так же создавать новые объекты. Цель этой хитрой вещи — меньше изменять основную конфигурацию, чтобы было удобно при её обновлении. Если углубляться всё это не совсем так, но это уже другая история.

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

Загрузка...