Е.БУДНИ программиста 1С | Роман Чумадин
4.58K subscribers
118 photos
25 videos
3 files
136 links
Ежедневные будни программиста 1С - это канал с реальными задачами с работы, с собеседований и повседневные хитрости, подборки и гайды. Подойдет как для начинающих, так и для опытных

Купить рекламу: https://telega.in/c/e_budni_programmer
Автор: @chum1roma
Download Telegram
🤯 С наступающим новым годом! 🎉🎉🎉

Всем привет! 👋

Год подходит к концу, это последний пост в этом году, пора подвести небольшие итоги по каналу:

С марта нас уже больше 2900, меньше чем за год! Всем спасибо за подписку, за реакции, комментарии и репосты!

Вышло 67 технических и около технических постов. Все посты объединены в дайджесты для удобства навигации;

Открыта рубрика "сделай пост сам";

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

За помощью по 1С за этот период ко мне, как к ментору, обратились 23 раза, кто-то через GetMentor, кто-то напрямую либо через другой сервис.


🔝 На новый 2024 год много планов как по развитию самого канала, так и по новым возможностям и полезностям для подписчиков. Оставайтесь на канале, следите и комментируйте)

------------------------
☄️ Всех с наступающим и хороших выходных, а тем кто работает, сделать это с лёгкостью и прибылью! 🥂🎂💰
------------------------
Please open Telegram to view this post
VIEW IN TELEGRAM
Необычные вопросы с собеседований

Мне неоднократно попадались такие вопросы во время интервью на вакансию программиста 1С. И однажды я был к этим вопросам не готов.

Вопросы донельзя просты, на тему текущего/прошлого места работы:

Какой размер базы?

Сколько пользователей одновременно работает в базе?

Сколько документов делается в день?

Сколько видов документов используется?

И т.п.

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

Если у вас тоже были похожие вопросы с разными вариациями, то пишите их в комментариях 💬

#ЕБ_Собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
После того, как накосячил коллега, а тебе пришлось исправлять)
Из интересного: 30 января в 16:00 КРОК Облачные Сервисы проводит онлайн-митап “1С в облаке: путеводитель по инфраструктуре”.

На митапе менеджер по развитию бизнеса КРОК Облачные сервисы Александр Фикс и ведущий инженер КРОК Вячеслав Рыжевский будут обсуждать:

🔹 Тренды российского рынка: что бизнес ждёт от ERP и облаков
🔹 Проекты 1С в Облаке КРОК: какие задачи ставят перед нами заказчики
🔹 Как происходит миграция инфраструктуры 1С в облако
🔹 Сайзинг инфраструктуры 1С: критерии и реализация
🔹 Оптимизацию производительности и мониторинг приложений 1С в облаке

Узнать подробности можно по ссылке ⬅️
⚠️ Важнейшее качество программиста 1С

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

Это, умение решать задачи!

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

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

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

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

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

А какое вы считаете самое важное качество в программисте 1с? Пишите в комментариях 💬

#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
🔄 Обновлятор-1С

Всем привет!

Однажды я рассказывал об упрощении запуска порции баз через .bat файл.
Но есть отличный инструмент – Обновлятор-1С. Более подробно вы можете почитать о нем на официальном сайте разработчика.

Вкратце о функциях:

Архивация баз;
Безопасность за счет использования официального пакетного запуска платформы 1С;
Работа с файловыми и серверными базами;
Работа с доработанными конфигурациями, хранилищем, расширениями и различными скриптами;
Обновление баз с сайта 1С;
Функции администрирования баз (выгнать пользователей, включить/выключить регламентные задания);
И т. д.

Есть платная и бесплатная версия, но и стоимость платной достаточно подъёмная для любого программиста 1С)

🔝 Кейсы из личного опыта и опыта товарищей:
1. Переезд баз с MS SQL сервера на Postgre SQL. С помощью скриптов настроили выгрузку в DT, и загрузку в DT, в промежутке изменив сервер. В многопоточном пакетном режиме это выполнилось гораздо быстрее и проще.
2. Обновление типовых баз БП. Ну тут все совсем просто и понятно, с типовыми проблем нет.
3. Настройка ежедневного автообновления конфигурации рабочей базы из хранилища, с предварительной архивацией и уведомлением в телеграмме о готовности.

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

🔥 А в следующем посте вас ждет небольшой конкурс, где я разыграю 5 ключей на Обновлятор-1С (ПРОФ), в благодарность за ваши подписки, комментарии и реакции.

> > > Случайный пост < < <

#ЕБ_Оптимизация
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
🎁 Розыгрыш! Нас уже 3000!!!

Всем спасибо большое за интерес к моему каналу!

В благодарность за это, я разыграю, как и обещал в прошлом посте – 5 ключей к Обновлятор-1С (ПРОФ).

Условие участия в конкурсе:

Быть подписанным на канал;

Придумать креативный слоган к каналу Е.БУДНИ Программиста 1С;

Написать в комментариях под этим постом 💬

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

Сроки: комментарии принимаются до 6 февраля, а результат будет объявлен 7 февраля

В виде приза в этот раз отличный инструмент, который может пригодиться практически каждому 1С программисту. Надеюсь вам тема с розыгрышем зайдет и в будущем я устрою что-то подобное. Варианты призов у меня уже есть)🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
Итоги розыгрыша 🔥

Всем привет! Рад сообщить победителей розыгрыша из прошлого поста:

🔝 «На страже ваших будней» (Наиля Смолина) - в номинации лучший.

И 4 случайных победителя:

⚫️ «В будни будь с Е.БУДНИ» (Александр Серов)
⚫️ «Программист 1С, отдыхая не в будни - читай Е.Будни!» (Александр)
⚫️ «Незабываемые E.БУДНИ Программиста 1С» (Dmitriy)
⚫️ «Йо-йо-йо, какая у вас платформа, 8-1, 8-2 или 8-3, Е.Будни жжёт, чё-кого, 1С-ник, жди "объект не найден" (Dirk Jently Evil Morty Jake Peralta Tod Zus Pines Stan Bill Nola Lucas Hood)

Всем победителям ключи высланы!

Спасибо тем, кто поучаствовал в розыгрыше!
Вы написали довольно большое количество предложений к слогану канала, что для меня, конечно же очень приятно)
Please open Telegram to view this post
VIEW IN TELEGRAM
Варианты логирования кода 🔂

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

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

2. Запись в регистр сведений.
Отличный вариант, если требуется делать постоянные записи, например по http запросам в сторонние API. Но требует добавление нового регистра сведений в конфигурацию. Выходом может стать расширение, если у основной конфигурации установлен нужный режим совместимости.

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

4. Передача данных в другую базу.
Например, по http сервису, и уже в той базе хранить нужную информацию.
У этого варианта есть как плюсы, так и минусы. К минусам можно отнести необходимость поддержки дополнительной базы и обмена между ними. А к плюсам я бы отнес то, что можно настроить хранение в нужном виде, хранить столько сколько нужно информации по объему, и если это не требуется для дальнейшей обработки в основной базе, то и захламляться основная база не будет.


А обсудить наиболее интересный вариант, или тот который используете вы, можно в комментариях 💬


> > > Случайный пост < < <

#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
🔝 7️⃣ ИНСТРУМЕНТОВ ПРОГРАММИСТА 1С

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

Представляю свой ТОП 7 таких инструментов:

🔸 1. Консоль запросов - супергерой среди инструментов, позволяющий сразу решить некоторые задачи. Лучше выбрать с возможностью вывода временных таблиц;
💯 На инфостарте есть отличная статья, где собрали все консоли в одном месте!
🔸 2. Консоль отчётов СКД - поможет понять в чем же причина разного результата между консолью и результатом отчёта;
🔸 3. Универсальный редактор реквизитов - позволит быстро посмотреть чем заполнен реквизит и/или его отредактировать;
🔸 4. Групповая обработка реквизитов - стандартная обработка, но не менее полезная;
🔸 5. Выгрузка загрузка данных XML - типовая обработка с ИТС, позволяет сохранить резервную копию объекта либо быстро обменяться данными между однотипными конфигурациями;
🔸 6. Шаблоны отчётов СКД для обычных и управляемых форм - помогут быстрее разрабатывать отчёты, а на старте их будет много;
🔸 7. Обработка чтения табличного документа - как шаблон важных кусочков кода, да и задача по чтению какого-нибудь Excel файла достаточно частая.

🤯 На просторах интернета этих инструментов полно, можете выбрать на свой вкус.

Что с ними делать?

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

------------
Ссылки на часть моих инструментов:
🔹 Консоль запросов для управляемых форм 8.3
🔹 Универсальный редактор реквизитов Управляемый + Обычный интерфейс v 2.4
🔹 Обработка чтения табличного документа (УФ)

------------
Пишите в комментариях чем пользуетесь вы 💬

> > > Случайный пост < < <

#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯 Всем привет!

Хотел поделиться новостью - запустил YouTube канал Е.Будни программиста 1С!
На данный момент там есть несколько коротких (shorts) видео мем-формата. Но в планах есть как технические так и разговорные видео.
Если вы активный пользователь сети YouTube, и даже если не активный), буду рад поддержке в любом виде: лайк, подписка, комментарий или репост)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔝 Миграция между СУБД. Утилита ibcmd

На работе часто приходится обновлять копии баз, рабочие оригиналы которых не так давно переехали с сервера под управлением СУБД MS SQL на Postgre SQL. Для создания копий ежедневно обновляется ещё один сервер под управление PostgreSQL. И делал я это через ДТшинк… Пока мне не показали официальную штуку от 1С, позволяющую делать это в разы проще.

Эта штука – утилита ibcmd
. Устанавливается вместе с кластером серверов 1С. Позволяет администрировать базу, создавать её, выгружать в ДТ или файлы.
Через неё можно было выгружать и загружать ДТшник уже относительно давно, но именно с версии платформы 23, появилась возможность делать это без промежуточной выгрузки в файл .dt, а это в разы ускоряет время выполнения. Например, раньше базу в районе 100 гигабайт выгрузить и загрузить у меня занимало 3,5 часа, сейчас 35 минут. И данная утилита позволяет переносить базы между разными СУБД, что тоже очень удобно.

🤯 Вот для примера как выглядит скрипт для командной строки Windows для переноса базы с MS SQL и создания на Postgre SQL:
ibcmd infobase replicate --data=ВРЕМЕННОЕ_МЕСТОПОЛОЖЕНИЕ --dbms=MSSQLServer --database-server=ИМЯ_СЕРВЕРА_ИСТОЧНИКА --database-name=ИМЯ_БАЗЫ --database-user=ИМЯ_ПОЛЬЗОВАТЕЛЯ_СЕРВЕРА--database-password=ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ_СЕРВЕРА --target-dbms=PostgreSQL --target-database-server=ИМЯ_СЕРВЕРА_ПРИЕМНИКА --target-database-name=ИМЯ_БАЗЫ --target-database-user=ИМЯ_ПОЛЬЗОВАТЕЛЯ_СЕРВЕРА --target-database-password=ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ_СЕРВЕРА --target-create-database


Выполнять нужно перейдя в каталог платформы командой:
cd C:\Program Files\1cv8\8.3.23.1865\bin


Более подробно про утилиту и её параметры можно почитать на ИТС.

> > > Случайный пост < < <

#ЕБ_Оптимизация
Please open Telegram to view this post
VIEW IN TELEGRAM
Про менторство 🤯 и ссылки на лучшие посты

Всем привет! Обо мне и канале вы можете узнать в этом закреплённом сообщении, а также вы там сможете найти дайджесты со ссылками на лучшие посты и по другим темам!

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

Почему это актуально?
Нет возможности спросить у коллег по разным причинам, либо они уже посылают подальше;
Не хочется показаться некомпетентным перед знакомыми;
Нет времени самому изучать какой-то новый механизм;
И самая частая ситуация даже у опытных разработчиков «да бл…, должно же работать», тут выручает взгляд со стороны.

А есть примеры?
Да, вот некоторые из них, в формате проблема / решение:
⚫️ Не добавляются параметры в типовой отчет на СКД / Сделали через предопределяемый модуль.
⚫️ Считывание файла на сервере из веб-клиента / Добавление расширением регистра для отложенного чтения файлов
⚫️ Требуется учет спецификаций отличный от типового / Составлена архитектура для дальнейшей доработки конфигурации через расширение
⚫️ Не отрабатывает обмен через web-сервис 1С / При проверке параметров web-сервиса выявили неверную настройку

Это платно?
Конечно да, так как любая работа должна оплачиваться!
1 час консультации стоит 5 000 рублей
В эту стоимость входит не только час консультации, но и предварительная подготовка. Бывает решение находится до консультации, а на консультации мы просто обсуждаем и проверяем работоспособность вместе.

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

-----------

🤯 Мой профиль можно найти на разных площадках, но для вашего удобства, я запустил бота с «горячей» кнопкой, по которой вы сразу можете описать свою проблему и чего хотите от консультации со мной.
⬇️⬇️⬇️
Please open Telegram to view this post
VIEW IN TELEGRAM
🕓 Выполнение внешней обработки по регламентному заданию

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

❗️ Проблема: конфигурация на поддержке, либо обновить рабочую базу получится не скоро, а нужно регламентное задание.

Что нужно: серверный режим работы базы, Подсистема БСП: Дополнительные отчеты и обработки.

🔝 Решение:

Создаем внешнюю обработку, в которой прописываем в функции СведенияОВнешнейОбработке команду с типом использования - «ВызовСерверногоМетода»;
Добавляем процедуру ВыполнитьКоманду;
Регистрируем нашу внешнюю обработку как дополнительную в информационной базе;
Устанавливаем расписание;

⚫️ Готово!

----------------
🤯 Из личного опыта, могу сказать точно, что это полезный механизм, так как это бывает и быстрее реализовать и проще поддерживать, чем обычное регламентное задание. Механизм так же может пригодиться, когда в базе режим совместимости с платформой ниже 8.3.23 (в нем нет возможности сделать регламентное задание через расширение).
----------------
> > > Случайный пост < < <

#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
🔝 Про канал с видео-мемами из области 1С и около того

Всем привет!

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

Поэтому возникла идея, и мы с Дмитрием Котовым (ссылка на его канал) решили объединить свои мемы в одном канале - Жёлтая ржомба (1С:Мемы)
Концепция канала строится именно на видео-мемах. Теперь мои, и не только мои, мемы будут выходить на другом канале, и иногда я буду репостить их в этот канал.

⬇️ Кому заходят видео-мемы, то welcome на наш с Дмитрием совместный канал ⬇️

🔽🔽🔽
Жёлтая ржомба (1С:Мемы)
🔼🔼🔼
Please open Telegram to view this post
VIEW IN TELEGRAM
🕯 Поиск места на диске

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

WinDirStat – средство просмотра статистики использования диска.

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

❗️ Примеры из работы:
1. Поиск места на сервере где лежат копии баз. Сколько бы места не было, рано или поздно все равно кончается, приходят новые разработчики и т.п., приходится выискивать)
2. Поиск вредителей, которые хранят тяжелые файлы всякие CF и DT файлы или выгрузки данных у себя на рабочем столе на сервере.

🤯 Сам также использую эту программу на личном ПК, когда навожу порядок.

А вы много храните ненужных тяжелых файлов? Пишите в комментариях 💬

---------------
> > > Случайный пост < < <

#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
&ИзменениеИКонтроль в расширениях

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

Механизм расширений постоянно развивается, за этим стоит следить, так как никогда не знаешь в какой момент это тебе пригодится.

В повседневной жизни они помогают в следующих случаях:
🔹 Быстро внести правку в своем коде либо типовом релизе, когда обновления рабочих баз выходят редко;
🔹Доработать конфигурацию для своих нужд, при этом четко разделяя границы, где типовой код, а где наш;
🔹 Расширения даже позволяют создать свой тиражный продукт под определённую конфигурацию (особенно, когда появилась возможность добавлять метаданные в расширения).

С версии платформы 1С 8.3.15 появилась возможность заменять код основной конфигурации в режиме «Вызывать вместо (с контролем)», что добавляет аннотацию «&ИзменениеИКонтроль». Это позволяет при проверке применимости расширения удостовериться, что код основной конфигурации после обновления не изменился относительно той версии Процедуры/Функции которая была до внесения изменений.

При данной аннотации необходимо применять специальные вставки:
🔸 Для удаления участков кода: #Удаление и #КонецУдаления
🔸 Для добавления участков кода: #Вставка и #КонецВставки

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

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

---------------
> > > Случайный пост < < <

#ЕБ_Повседневность