Найти тему

Какие навыки должен иметь программист 1С?

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

Знание языка программирования 1С

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

Нужно знать язык запросов

Если вы неплохо владеете языком SQL, то у вас не должно возникнуть проблем при изучении языка запросов, потому что это, по сути, блок select языка SQL, переведенный на русский язык. С помощью языка запросов 1С нельзя добавлять записи в таблицу, удалять их, апдейтить, но можно делать выборки, и в 1С это используется повсеместно. Если мы возьмем любую типовую конфигураций 1С, то выясним, что, скорее всего, львиную долю ее кода составляют запросы к всевозможным таблицам баз данных и, естественно, мы должны уметь с этим работать. Для того чтобы писать какие-то свои простые отчеты и обработки, нам может быть достаточно понимания основ языка запросов, но для того, чтобы дорабатывать типовые конфигурации, язык запросов действительно нужно знать очень хорошо и без этого никак.

Умение дорабатывать интерфейсы

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

Умение работать с Системой компоновки данных (СКД)

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

Доработка типовых конфигураций

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

Нужно обладать навыками администрирования 1С

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

Умение работать с Библиотекой стандартных подсистем (БСП)

Фирма 1С вынесла в БСП функции, с которыми каждый день программист сталкивается, будь то авторизация пользователей или какой-то функционал сортировки данных. Намного проще использовать БСП для того, чтобы решать задачи, чтобы не изобретать велосипед с нуля, по сути, используя промышленные код, который самой фирмой 1С написан, поэтому при активном его использовании уходит меньше времени просто на разработку каких-то банальных вещей. А, значит, что бизнес наиболее быстро сможет запустить это решение в оборот и получить итоговый результат.

Умение работать с чужим кодом

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

В общем, можно сделать вывод, что программист 1С должен знать и уметь довольно много. На самом деле это только самые необходимые вещи. Есть еще и опциональные навыки. Давайте про них тоже поговорим.

Умение переносить данные из одной конфигурации в другую

В любой момент перед вами может возникнуть задача перенести данные из одной конфигурации в другую. Вы можете, конечно, для этой цели использовать дедовские методы, написать обработку, которая будет выгружать данные из первой базы в какой-нибудь файл, потом загружать данные из этого файла во вторую базу, но на самом деле у компании 1С предусмотрены средства автоматизации процесса переноса данных. Это конфигурация «Конвертация данных». Это инструмент по переносу данных, который позволяет разработать правила переноса между конфигурациями с минимальными затратами времени. Сначала этот продукт кажется сложным, но если в нем разобраться, то это сильно ускоряет процесс переноса, а бизнес от этого выигрывает.

Нужно разбираться в API внешних сервисов

Если когда-то 1С Предприятие было сугубо офисной программой, которая устанавливалась внутри офисной сети и никаким образом она не взаимодействовала с чем-то внешним, ну, максимум - это загрузить Excel файл/выгрузить Excel файл, в современном мире, когда из любой точки мира доступна любая другая точка, разумеется, систему компании 1С часто приходится дружить с различными сервисами. Например, заказчик может поставить задачу выгрузить клиентскую базу в сервис рассылок, чтобы маркетологи могли провести какую-то рассылку. Сейчас очень популярна тема продажи товаров через маркетплейсы, и нужно уметь использовать APIразличных маркетплейсов по загрузке товаров, выгрузке товаров, загрузке заказов и так далее. Умение работать с этими APIпозволяет бизнесу получать различные интеграции между 1С и теми системами, которые используют бизнес, разумеется, получать большую эффективность от использования как 1С, так и этих систем вместе.

Умение оптимизировать производительность системы

В заключении затронем отдельное направление работы программиста 1С - оптимизация производительности систем. Пользователь может обратиться к вам с просьбой ускорить работу базы, допустим, медленно проводятся документы. И в чем заключается работа специалиста, оптимизирующего производительность систем? Он пытается выявить проблему, понять, что не так. Может быть, СУБД не так настроена, может быть, оборудование какое то устаревшее, может быть, проблема даже в коде, или запросы написаны не оптимально, или какие-то блокировки не так срабатывают. Существуют специальные инструменты, которые позволяют выявить эти слабые места, в которых все зависает, и специалист по оптимизации производительности систем, используя эти инструменты, должен каким-то образом устранить эти ошибки. В результате работа системы должна ускориться. Это довольно специфическое направление, то есть это не то, что должен знать каждый уважающий себя программист 1С, без этого можно обойтись.

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

Если вы интересуетесь 1С, то по ссылкам ниже вы можете узнать, где можно изучить систему 1С и связанные с этим темы.

Изучение системы 1С - по этой ссылке

Изучение 1С программирования – по этой ссылке

Изучение 1С аналитики – по этой ссылке