Жёлтая тетрадь 📒 Блог программиста 1С 👨💻
В основном небольшие и почти регулярные заметки из будней программиста 1С Мои инсайты, что-то новое каждый день @builin
Більше- Підписники
- Перегляди допису
- ER - коефіцієнт залучення
Триває завантаження даних...
Триває завантаження даних...
Если ревью кода происходит тогда, когда код уже готов к продакшену, архитектура и дизайн на ревью не оцениваются.
Если необходим анализ архитектуры и дизайна, он выполняется своевременно, на специально запланированных сессиях.
Если вы на ревью блокируете код из-за дизайна, вы (с коллегами) намеренно пишете код на выброс.
@yellow_pad | #1С #РазработкаЯзык программирования 1С содержит много нюансов и особенностей, которые могут приводить к неожиданным для разработчика результатам. Сталкиваясь с ними, программист начинает лучше понимать логику платформы, а значит быстрее выявлять ошибки и видеть потенциальные узкие места своего кода там, где позже можно было бы ещё долго медитировать с отладчиком в поисках источника проблемы.
Мы рассмотрим разные примеры поведения кода 1С. Разберём результаты выполнения и ответим на вопросы «Почему?», «Как же так?» и «Зачем нам это знать?».
МассивДат = Новый Массив; МассивДат.Добавить("date"); МассивДат.Добавить("resolvedAt"); МассивДат.Добавить("outDate"); Данные = ПрочитатьJSON(ЧтениеJSON, Истина, МассивДат);Вариант 2:
Данные = ПрочитатьJSON(ЧтениеJSON, Истина, СтрРазделить("date,resolvedAt,outDate", ","));@yellow_pad | #1С #Массив #Однострочник1С
Период РС точнее секунды = дата в миллисекундах? Чтобы упорядочить данные в порядке поступления, разработчик добавил измерение МоментВремени и заполнил его из ТекущаяУниверсальнаяДатаВМиллисекундах(). Результат на скриншоте - при поступлении пакета разные наборы данных зарегистрировались одной миллисекундой. Всё работало, пока в обмен не добавили сценарий "удаляем данные, затем добавляем данные". Появилась плавающая ошибка - часть данных теряется. На самом деле данные сперва приходят, потом удаляются, т.к. нарушен порядок. Вывод - миллисекунды в 1С могут не быть миллисекундами, или точности миллисекунд может быть недостаточно. Вариант решения, например - добавить поле с порядковым номером записи, по всем записям или в рамках секунды. @yellow_pad | #1С #ТекущаяУниверсальнаяДатаВМиллисекундах #Период
&НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) ОбъектСсылка = ПараметрКоманды; // Меняем объект // ... ОповеститьОбИзменении(ОбъектСсылка); КонецПроцедурыБольше примеров: ССиМ @yelow_pad | #1С #Команды #ССиМ
Ctrl+Shift+F
. Для поиска только по коду ставим фильтр на расширение файлов (*.bsl). Ищет по всей конфигурации за секунды против минут. Как выглядит результат поиска - на скриншоте.
Для подсветки кода VS Code сам предложит установить плагин. Можно искать регулярными выражениями.
Естественно VS Code можно заменить на любой другой приличный редактор. Основной минус способа - сама выгрузка долгая.
@yellow_pad | #1С #КонфигураторНа вашому тарифі доступна аналітика тільки для 5 каналів. Щоб отримати більше — оберіть інший тариф.