onecv8 | Technologies

Telegram-канал onecv8 - 1С:Предприятие 8

10898

Канал обо всем, что связано с 1С. Для обратной связи @shalimski

Subscribe to a channel

1С:Предприятие 8

https://youtu.be/y2YJNiBwOHI

Читать полностью…

1С:Предприятие 8

https://infostart.ru/1c/articles/1871038/

Читать полностью…

1С:Предприятие 8

https://www.youtube.com/live/KSBed4yyoDM?feature=share

Читать полностью…

1С:Предприятие 8

https://www.youtube.com/watch?v=GDPbfd9ncAM

Читать полностью…

1С:Предприятие 8

https://youtu.be/oHkJO9h7m9A

Читать полностью…

1С:Предприятие 8

https://infostart.ru/1c/articles/1859181/

Читать полностью…

1С:Предприятие 8

https://habr.com/ru/companies/dododev/articles/714512/

Читать полностью…

1С:Предприятие 8

https://habr.com/ru/news/732446/

Читать полностью…

1С:Предприятие 8

❗️ Выпущена платформа 1С:Предприятие 8.3.23

Уже доступна на https://releases.1c.ru/

В ближайшее время появится дистрибутив и на https://developer.1c.ru/ для использования с комьюнити-лицензией

Читать полностью…

1С:Предприятие 8

https://infostart.ru/1c/articles/1849170/

Читать полностью…

1С:Предприятие 8

В 13:00 по МСК пишем бота с помощью системы взаимодействия.
В гостях ваш любимый спикер — Матвей Серегин.

Приходите https://youtube.com/live/zFBTkITJOS8?feature=share

Читать полностью…

1С:Предприятие 8

https://vc.ru/life/665335-produkty-kompanii-1s-manna-nebesnaya-ili-proklyatie-lyucifera

Читать полностью…

1С:Предприятие 8

https://www.youtube.com/live/2lz_h3Uwi6c?feature=share

Читать полностью…

1С:Предприятие 8

https://youtu.be/kXHelxCHsGo

Читать полностью…

1С:Предприятие 8

22 апреля 2023 Омск
V открытая конференция специалистов 1С в Омске. Предусмотрена онлайн трансляция. Регистрируйтесь на сайте конференции https://на1с.рф

Читать полностью…

1С:Предприятие 8

https://habr.com/ru/articles/737210/

Читать полностью…

1С:Предприятие 8

https://www.youtube.com/live/fTaSmfvzQ2E?feature=share

Читать полностью…

1С:Предприятие 8

https://rarus.ru/events/20230720-1c-rarustechday-2023-587081/

Читать полностью…

1С:Предприятие 8

https://wonderland.v8.1c.ru/blog/razvitie-rasshireniy-dobavlenie-biznes-protsessov-i-zadach-i-drugie-dorabotki/

Читать полностью…

1С:Предприятие 8

https://habr.com/ru/articles/734660/

Читать полностью…

1С:Предприятие 8

https://youtu.be/6qbTqcO0KlE

Читать полностью…

1С:Предприятие 8

⚡️ Открытый мастер-класс для начинающих: создаем с нуля приложение для управления киберспортивной командой!

📅 Когда: 16 мая в 19:00 (мск)
💯 Условия: бесплатно, регистрация не требуется
➡️ Где: YouTube-канал e1c_community">"Сообщество 1С-разработчиков"

Поделитесь информацией со своими знакомыми, кто только начинает изучать платформу 1С:Предприятие или только-только собирается начать это делать!

Читать полностью…

1С:Предприятие 8

https://youtu.be/ZmKz1t23v7c

Читать полностью…

1С:Предприятие 8

https://youtu.be/c4ZpSK_pGMg

Читать полностью…

1С:Предприятие 8

https://wonderland.v8.1c.ru/blog/metod-vyzvatpauzu/

Читать полностью…

1С:Предприятие 8

https://youtu.be/JybDAJCUkWc

Читать полностью…

1С:Предприятие 8

Плейлист с конференции 1C.DevCon.3 https://youtube.com/playlist?list=PL5BQ2gzAdqWQAMFOfs0IUVzqvCfKkxH-g

Читать полностью…

1С:Предприятие 8

Длинные имена переменных – зло. 

Naming is hard. Это правда, и вот почему. Во-первых, у нас пока нет метрики, которая может сказать, что вот этот нэйминг плохой, а вот это хороший. Думаю через год или два ИИ линтер сможет предлагать варианты наименований. А пока выкручиваемся как можем.

Во-вторых, бытует мнение, якобы длинные и исчерпывающие имена – это хорошо. Чистый код на максималках такой. Например, readFileFromPathAndThrowExceptinIfNoSuchFile(Path absolutePathToFile). Ну круто же! Одна сигнатура уже говорит о том, что делается и тело метода даже читать не надо! Комментарии не нужны! 

В какой-то степени это имеет смысл. За неимением лучшего можно писать так. Но что, если есть более простой и лаконичный способ? Я говорю про правильное разграничение ответственностей. Абстракции короче.

В выдуманном примере смешиваются несколько уровней абстракции: формат ошибки (exception), представление пути в файловой системе (Path), формат пути (absolute). Все это повышает когнитивную нагрузку на читателя. Представьте себе сто строк кода, написанных вот в таком стиле дедушки Боба! Брр...

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

Мысль предельно проста. Давайте разделим код на уровни абстракции и будем использовать имена, которые соответствуют текущему уровню абстракции. Наверху у нас readFile, дальше идут проверки на корректность пути и бросание эксепшенов. Еще ниже сами придумайте. 

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

Читать полностью…

1С:Предприятие 8

КАК ВЫПОЛНИТЬ ПРОЦЕДУРУ В ОТЛАДКЕ?

Не баян, а классика.

Находясь в отладчике, мы можем вызывать функции (в т.ч. при помощи "Вычислить выражение").
Это бывает нужно для тестирования и выявления каких-то проблем. Например, сделать что-то с данными формы в закрытых полях и так далее.

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

❔ Как же можно вызвать процедуру в отладке?
Для этого нам нужна функция. Самый простой пример:

Функция Вып(Код, Параметр = Неопределено) Экспорт
Выполнить Код;
КонецФункции

Функция может быть сложнее и удобнее в использовании. Главное, чтобы она вызывала метод платформы Выполнить(НашКод)

🤔 ГДЕ РАЗМЕСТИТЬ ВСПОМОГАТЕЛЬНУЮ ФУНКЦИЮ?

1️⃣ В своём инструменте
Да, самое очевидное - добавить метод там, где мы его будем использовать. В нашей обработке, например. Но такая функция будет доступна только внутри нашего инструмента. Не очень удобно

2️⃣ Общий модуль
Другой напрашивающийся способ - найти (или добавить) где-то в общем модуле. Это может потребовать доработки конфигурации или же установки расширения.

2️⃣ Внешняя обработка
Если бы всегда нам подходили первые два способа, то было бы не так интересно.
Но если мы по какой-то причине не хотим ставить расширение для таких целей, то можно пойти другим путём. Создать внешнюю обработку с таким же методом. Метод придётся разместить в модуле самой обработки и дополнительно в форме. Тогда он будет доступен и на сервере и на клиенте.

🤔 КАК ИСПОЛЬЗОВАТЬ ТАКУЮ ОБРАБОТКУ
Сначала нужно её открыть в режиме предприятия. Так мы "подключим" её к сеансу. А далее уже в коде можем создавать её объекты. Давайте выведем таким образом сообщение:

Для выполнения НаКлиенте можно делать так:
ПолучитьФорму("ВнешняяОбработка.Вып.Форма").Вып("Сообщить(Параметр)", "Текст");

А НаСервере так:
ВнешниеОбработки.Создать("Вып").Вып("Сообщить(Параметр)", "Текст")

Если же мы ведем отладку в фоновом задании, то открытие обработки в режиме предприятия нам не поможет. Но можно использовать и другой вызов:
ВнешниеОбработки.Создать("МойПутьКФайлу", Ложь).Вып("Сообщить(Параметр)", "Текст")

Главное в таком случае разместить обработку в доступном для сервера каталоге. Правда и тут может произойти проблема, если установлена "Защита от опасных действий". Тогда нужно при создании обработки передать ещё третий параметр - ОписаниеЗащитыОтОпасныхДействий. Для его создания обычно в типовых есть метод ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений()

ВнешниеОбработки.Создать("МойПутьКФайлу", Ложь, ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений()).Вып("Сообщить(
Параметр
)", "Текст")

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

_______________
@JuniorOneS

Читать полностью…

1С:Предприятие 8

https://wonderland.v8.1c.ru/blog/avtomaticheskoe-udalenie-ustarevshikh-versiy-platformy/

Читать полностью…
Subscribe to a channel