BGcalls. Программист 1С
1.82K subscribers
44 photos
98 links
Здесь обсуждаем все, что должен знать программист от стажера до миддла.

Практикум по доработке типовых
https://bgcalls.ru/
Предзапись на практикум, анонсы @bgcalls_bot
Download Telegram
Всем привет! На связи Анастасия, сегодня хочу обсудить, какие задачи решает начинающий программист 1С на работе.
Первое время особенно нелегко, потому что задачи сильно отличаются от тех, что мы решаем на курсах.

Вот самые типовые задачи, которые нужно решать джуну-разработчику 1С:
👉 создавать / изменять внешние печатные формы, обработки, отчеты (на БСП )
👉 загружать данные из файлов (например, xls, xml) или обмениваться данными по API (тут обычно надо разбирать json или тот же xml-формат)
👉обновлять базы, могут быть типовые или с изменениями
👉читать и отлаживать чужой код (как типовой код, так и код, написанный другими 1Сниками), разбираться "почему здесь так посчиталось"
👉использовать какой-то инструмент групповой разработки, чаще всего это будет - хранилище, где-то может встретиться EDT или хранилище + GIT)
👉 А еще тимлид требует, чтобы код был написан по стандартам разработки 😱

Подробнее разбираю, что нужно знать джуну в серии постов: Разбираем дорожную карту джуна 1С

Все это мы применяем на Практикуме. Сейчас открыт набор на 9ый поток. Занимаемся февраль - апрель.
Приходите, пройдем с вами за 12 недель путь, который стажеры во франчайзи 1С проходят за 6-12 месяцев.
👍5
Работа с формой. часть 1. Теория

Тема обширная. Перечислю то, на чем чаще всего "спотыкаются" новички, а также базу, которую у вас, вероятно, спросят на техническом собеседовании

✔️События формы.
✔️Отдельно разбираемся с последовательностью событий при открытии формы \ при записи из формы. Что в какой последовательности, что происходит внутри транзакции. (В упомянутой книге есть схемы)
✔️Клиент-серверная архитектура. Далее цитата из упомянутой книги
1. Разработчик должен понимать, что он не просто кодирует некий прикладной алгоритм, а в явном виде программирует отдельно клиентскую и отдельно серверную части приложения.
2. Разработчик должен управлять частотой вызовов сервера и объемом передаваемой информации.

✔️ Директивы компиляции: &НаСервере, &НаСервереБезКонтекста, &НаКлиенте и тп. Правильно их применяем
✔️ Передача данных из одной формы в другую (например, вспомогательную форму подбора).
✔️ Передача с клиента на сервер.

📚Что читать по теме, если изучаете самостоятельно: Пособие от 1С "Разработка интерфейса прикладных решений ..."

В заключении топовый вопрос с собеседовании:
Как передать таблицу значений между клиентом и сервером?
Ответ в следующих постах, обсудить ваши варианты ответа можно в комментариях

👉 это 7ой пост из серии на основе Дорожной карты джуна 1С
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍21
BGcalls. Программист 1С
Работа с формой. часть 1. Теория Тема обширная. Перечислю то, на чем чаще всего "спотыкаются" новички, а также базу, которую у вас, вероятно, спросят на техническом собеседовании ✔️События формы. ✔️Отдельно разбираемся с последовательностью событий при…
Отвечаем на вопрос из прошлого поста

✔️ Если вам задали такой вопрос, скорее всего, хотят от вас услышать, что вы в курсе про временное хранилище:

1. На стороне отправки мы помещаем данные во временное хранилище
АдресХранилища = ПоместитьВоВременноеХранилище(НекаяТаблица);


2. Далее получаем из временного хранилища
ТаблицаСДанными = ПолучитьИзВременногоХранилища(АдресХранилища);


Также встречаются и другие варианты
✔️Упаковать таблицу в Массив структур (где каждый элемент массива - это Структура, в которой ключи - имена колонок, значения - собственно значения)
✔️ Или даже через функцию ЗначениеВСтрокуВнутр()

🤯Почему нельзя просто взять и передать?
Получим ошибку "Попытка передачи с клиента на сервер мутабельного значения"
Мутабельный тип (в переводе с английского Mutable – изменчивый) – сложный тип данных , свойства которого могут изменяться после его создания
К мутабельным типам в языке программирования 1С относятся: · объект; · форма; · список значений; · таблица значений.


👉 Хотите разобрать пример типового кода в УТ, как еще используется ПоместитьВоВременноеХранилище / ПолучитьИзВременногоХранилища на примере передачи данных между двумя формами?
Ставьте 🔥 Если будет от 20, разберем.
Если нет - пойдем дальше по нашей Дорожной карте

👉Готовы плавно погрузить в "дебри" типового кода 1С с наставником?
Идет набор в зимний поток Практикума
Занять место можно тут✔️

👉 это 8ой пост из серии на основе Дорожной карты джуна 1С
🔥40👍1
Привет, на связи Анастасия. В моих Заметках на днях вышло интервью с Михаилом, начинающим программистом 1С. Михаил начинал свою карьеру год назад и вот какие советы дает новичкам:

💡 Пишите сопроводительные письма
Как известно, HR тратит на первичный отбор резюме 5-10 секунд.
А что если откликов на вакансию сотни, как будут выбирать? Скорее всего пригласят того, кто написал сопроводительное письмо.

💡Прикладывайте примеры кода к резюме.
Где брать примеры? Подойдут решенные вами примеры тестовых заданий с собеседования.

А как быть, если кроме учебных задач на "каркасной" конфигурации пока опыта нет?
На практикуме мы с вами будем решать задачи по доработке типовых конфигураций, такие же, как вам встретятся на проектах
По итогам обучения вы сможете:
выгодно выделится на фоне других начинающих 1Сников, указав в резюме опыт доработки типовых конфигураций 1С и знакомство с БСП.
предоставить на собеседовании примеры вашего кода, показав, что вы пишите чистый код, следуя стандартам разработки
🔥3
Работа с формой. часть 3. Пример типового кода
Продолжение про работу с ВременнымХранилищем

Записала для вас видео, где предлагаю вместе посмотреть код типовой УТ. Разберемся, как устроена команда "Загрузить из внешнего файла" в Заказе клиента
Смотреть видео

Полезное видео? Ставьте 🔥
И так все понятно? Ставьте 👍
Ничего не понятно? Ставьте 🤯

👉 это 9ой пост из серии на основе Дорожной карты джуна 1С
🔥10👍31
Основы БСП
👉 это 10ый пост из серии на основе Дорожной карты джуна 1С

С чего начать изучение БСП? С часто используемые методов. Как например:
ОбщегоНазначения.СообщитьПользователю()

ОбщегоНазначения.ЗначениеРеквизитаОбъекта()

И другие. Некоторые можно посмотреть в видео ниже:
👉Что из БСП должен знать даже Junior?

Также на Практикуме мы при решении задач поработаем с некоторыми полезными подсистемами БСП, такими как:
✔️ Управление контактной информацией
✔️ Дополнительные реквизиты и сведения
✔️ Работа с почтовыми сообщениями
✔️ Дополнительные отчеты и обработки
✔️ Варианты отчетов

Новый поток Практикума стартует 17 февраля.
👉 Занять место
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍41
#вопросы_собеседование

Ниже код написан не оптимально. Почему? И как правильно его переписать?

Процедура ЗаполнитьКодИНаименованиеСтраны()

СтранаСсылка = … // получаем ссылку на элемент справочника
КодСтраны = СтранаСсылка.Код;
НаименованиеСтраны = СтранаСсылка.Наименование;

КонецПроцедуры

👉Подписывайтесь на канал BGcalls. Программист 1С🤣
Please open Telegram to view this post
VIEW IN TELEGRAM
Ответ на вопрос из прошлого поста

Ответить нам поможет Стандарт №496 Чтение отдельных реквизитов объекта из базы данных

1. При обращение к реквизитам объекта через точку от ссылки - загружается объект из базы целиком, вместе с его табличными частями.

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

2. Для упрощения кода рекомендуется также использовать специальные функции ЗначенияРеквизитовОбъекта или ЗначениеРеквизитаОбъекта
Если мы заглянем в код этих функций, то увидим, что они получает нужные реквизиты запросом

В таком случае мы получим следующий код:
Процедура ЗаполнитьКодИНаименованиеСтраны()

ЗначенияРеквизитов=ОбщегоНазначения.ЗначенияРеквизитовОбъекта(СтранаСсылка, "Код, Наименование");
КодСтраны = ЗначенияРеквизитов.Код;
НаименованиеСтраны = ЗначенияРеквизитов.Наименование;

КонецПроцедуры

#стандарты_разработки #вопросы_собеседование

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

👉Подписывайтесь на канал BGcalls. Программист 1С🤣 #ЧистыйКод
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
Всем привет! На связи снова Анастасия, сегодня хочу рассказать, как появился курс.

👀Почему я сделала такой курс?

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

💡Так и появилась идея этого практикума.
Это не теоретический курс, я не буду пересказывать учебник Радченко. Будет много практики. Пройдем все самые типичные задачи, с которыми сталкивается программист 1С

Для кого этот курс?
- Знаете основы программирования 1С, уже пробовали проходить собеседования или только готовитесь и не понимаете, что от вас будет ожидать работодатель
- Уже работаете программистом 1С, но на работе нет наставника и не хватает обратной связи
- Работаете в техподдержке 1С и хотели бы перейти в программисты

Если готовы погрузиться в практические задачи - у нас еще осталось 4 места на Практикуме. Старт уже через неделю, 17 февраля
🔥6🤡3
Групповая разработка

Начнем обзор с того, что вы можете встретить на реальном проекте:
1. Хранилище конфигурации.
2. конфигуратор + Git
3. EDT + Git

Часто спрашивают, что изучать новичку? Нужно ли изучать EDT?

Мой ответ такой:
✔️Обязательно для всех - хранилище. Оно все еще используется в подавляющем большинстве команд.
✔️ EDT "впрок" разбирать смысла не вижу, если попадете на такой проект, научитесь

С хранилищем же рекомендую разобраться заранее, до выхода на работу. Почему?
👉С одной стороны, освоить работу с хранилищем - несложно, за пару часов управитесь.
👉С другой стороны, когда вы выйдете на свою первую работу - у вас и так будет МОРЕ новой информации, так что еще один повод для стресса вам точно не нужен будет. Представляете, приходите на новый проект, вам говорят "подключись к хранилищу, вот тебе логин" . А вы не знаете как 😳

Учебные видео по работе с хранилищем вы легко найдете в сети.
👉Также можно почитать Обзор возможностей на сайте 1С
👉 еще полезная статья про хранилище

Для ориентира, что вам надо знать и уметь:
✔️ как захватить объект в хранилище
✔️ как поместить объект в хранилище
✔️ как получить данные из хранилища
✔️ как посмотреть историю изменений

👉 это финальный, 11ый пост, где мы разбираем Дорожную карту джуна
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍3
Разбираю сейчас отзывы учеников 8ого потока, выпустились в январе.
Вот что пишет Екатерина:
"у меня уже были крепкие базовые знания программирования в 1С: я хорошо разбиралась в синтаксисе, работала с запросами и понимала, как устроена система. Но мне не хватало опыта именно в доработке типовых конфигураций. Хотелось не просто писать код, а уметь правильно вносить изменения в стандартные механизмы, разбираться в структуре типовых конфигураций и использовать их возможности по максимуму. После стажировки я чувствую, что прокачалась в этом направлении. Теперь я лучше понимаю, как правильно дорабатывать типовую конфигурацию, не ломая обновляемость и логику системы. Разобралась в структуре 1С:УТ, научилась быстрее находить нужные методы и объекты, а главное — лучше понимать, какие механизмы уже есть в системе и как их использовать, чтобы не писать лишний код. Разобралась с БСП, которая раньше была чем-то абстрактным, а теперь я понимаю, как её можно применять на практике. Плюс познакомилась с новыми методами и приёмами доработки конфигураций, благодаря чему код стал более грамотным, а процесс разработки — осознанным. В целом, мои ожидания от обучения оправдались. Я пришла за практическим опытом доработки типовых конфигураций, и я его получила"

Еще больше отзывов: https://t.me/sAnastasia_feedback

Новая группа стартует уже в понедельник, 17 февраля.
👍7
Всем привет! Мы сегодня стартовали обучение в 9ом потоке🔥
Наборы бывают несколько раз в год.
Чтобы не пропустить новый набор, добавляйтесь в бот
@bgcalls_bot
Так вы первыми узнаете о новых стартах и сможете записаться по спец. ценам

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

Получить лицензию для разработчиков может любой человек, который прошел полную регистрацию (с подтверждением номера мобильного телефона) на портале developer.1c.ru.
https://v8.1c.ru/platforma/litsenziya-dlya-razrabotchikov/

👉Программист 1С. Практикум-погружение
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
#вопросы_собеседование

Если бы мы составляли рейтинг самых частых вопросов на собесах, то этот был бы точно в тройке лидеров:

"Чем отличается справочник от непериодического регистра сведений"

👉Программист 1С. Практикум-погружение
🔥9👍5
Конвертация данных

По результатам опроса в канале "Заметки 1Сницы"
- 36% часто работает с Конвертацией 2,
- только 13% с Конвертацией 3.
- еще 50% или никогда не сталкивались, или имели такой опыт, но сейчас такие задачи бывают редко или никогда

Изучать ли Конвертацию заранее "впрок" или подождать таких задач на проекте ? Решать вам

👉Программист 1С. Практикум-погружение
👍3
Ваш коллега написал такой запрос.
Что мы скажем этому коллеге?

#вопросы_собеседование
👍2
BGcalls. Программист 1С
Ваш коллега написал такой запрос. Что мы скажем этому коллеге? #вопросы_собеседование
#ЧистыйКод #Стандарты_разработки
Разбираем предложенный запрос

Конечно, тут лишнее обращение к ссылке через точку:

Не следует получать поле «Ссылка» через точку от другого поля (В нашем примере: Контрагент.Ссылка)
В результате будет создано совершенно ненужное в данном случае соединение с таблицей «Контрагенты» и, как следствие, выполнение запроса, скорее всего, замедлится.
См. Получение полей через точку от других полей
👍15
Купила Сборник задач к Спецу по Управлению Торговлей
В следующем потоке Практикума ждите новые модули)
Когда? В апреле
🔥23👍1
Как родился Практикум для программистов 1С

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

И я подумала: а можно ли этот процесс ускорить?
Пройти тот же самый путь, но не за 6-12 месяца, а месяцев за 3?

И тут вдруг ....

Хочешь узнать, что было дальше? Ставь 🔥
Не хочешь - ставь🤔

Продолжение
🔥79👏2🤔1
Одна из первых подсистем из "Библиотеки стандартных подсистем" , с которой сталкивается начинающий программист 1С - это "Дополнительные отчеты и обработки"
Предлагаю вспомнить (или узнать) какие виды доп. обработок и отчетов бывают
👉 Читайте статью

На Практикуме мы работаем с такими задачами:
- доп. отчет. Создаем и подключаем к УТ 11 отчет по продажам
- доп. обработка. Пакетное создание контрагентов по данным Эксель файла
- внешняя печатная форма. Подключаем свою нетиповую форму счета на оплату

🤣 Подписывайтесь на канал BGcalls. Программист 1С #бсп
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍4