Так видит меня нейросеть. Мысли и заметки с конференции!
Далеко не все доклады удалось посмотреть, но для участников они уже доступны в записи, а для остальных они через какой-то период попадают в общий доступ, как понимаю.
🔸 Было несколько докладов о нашумевшем использовании нейросетей в работе.
Варианты:
- Для автоматизации поддержки, то есть нейросеть обучили инструкциям и она отвечает на вопросы пользователей.
- Для написания (используя вашу базу) или описания (что делает) кода через Copilot.
Тема очень нашумевшая и интересная, но большинство сервисов не позволяют либо внести оплату, либо даже просто использовать сервисы на территории России.
🔸 Понравились мысли про Pet-проекты (личные, домашние), что даже небольшие проекты нужно автоматизировать в плане тестирования, автосборки и хранения версий. На практике знаю как без этого плохо, но пока не услышишь со стороны, само иногда не доходит)
🔸 Классная идея про мотивацию сотрудников, сделав некий исторический онлайн или физический стенд, куда "вывешивать" разработчиков за какие-то заслуженные проекты, весомые механизмы и т.п. Кажется, это может реально дополнительно мотивировать, когда ты не просто сделал, тебя похвалили, дали премию и т.п., а ещё оставили в истории компании.
❗️ И самая важная мысль для новичков и не только, не помню на каком докладе была или пришла мне, это выполнение запросов в консоли в рабочей базе только при обдуманной необходимости. То есть, если нет необходимости, то консолью запроса для отладки запроса лучше пользоваться в копии базы и в идеале на отдельном сервере. Так как запрос без отбора или с соединением без условия может положить всю базу. И на это натыкаются не только новички, но и профессионалы с многолетним опытом)
А на фото - это переделанная моя фотография, которую делали на входе конференции)
Случайный пост > > >
ХЕШ строка
#ЕБ_Повседневность
Далеко не все доклады удалось посмотреть, но для участников они уже доступны в записи, а для остальных они через какой-то период попадают в общий доступ, как понимаю.
🔸 Было несколько докладов о нашумевшем использовании нейросетей в работе.
Варианты:
- Для автоматизации поддержки, то есть нейросеть обучили инструкциям и она отвечает на вопросы пользователей.
- Для написания (используя вашу базу) или описания (что делает) кода через Copilot.
Тема очень нашумевшая и интересная, но большинство сервисов не позволяют либо внести оплату, либо даже просто использовать сервисы на территории России.
🔸 Понравились мысли про Pet-проекты (личные, домашние), что даже небольшие проекты нужно автоматизировать в плане тестирования, автосборки и хранения версий. На практике знаю как без этого плохо, но пока не услышишь со стороны, само иногда не доходит)
🔸 Классная идея про мотивацию сотрудников, сделав некий исторический онлайн или физический стенд, куда "вывешивать" разработчиков за какие-то заслуженные проекты, весомые механизмы и т.п. Кажется, это может реально дополнительно мотивировать, когда ты не просто сделал, тебя похвалили, дали премию и т.п., а ещё оставили в истории компании.
А на фото - это переделанная моя фотография, которую делали на входе конференции)
Случайный пост > > >
ХЕШ строка
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
🔸 1. 1Skiller от Programming Store. Есть 2 варианта тестов: платный и бесплатный. Бесплатный чем-то похож на профессионала от 1С, но вопросы больше по специалисту 1С. В платной версии нет вариантов ответа.
*В бесплатной версии без подготовки набрал 81 из 100 баллов, если пройдете, пишите результаты в комментарии.
🔸 2. 1С-ТЕСТЦЕНТР от компании КРОН совместно с фирмой 1С. Платный, но слышал положительные отзывы. Если кто проходил, поделитесь опытом.
🔸 3. 1С:Учебное тестирование. Подходит для новичков, для проверки своих навыков перед экзаменом 1С:Профессионал.
Легендарный 1С:Профессионал. Не включен в ТОП 3, так как не всегда доступен онлайн.
Ранее был отличный, на мой взгляд, сервис где было тестирование по 1С - это сервис от компании Retratech. Но к сожалению сайт больше не работает и связаться с авторами не удалось. Если кто-то проходил и помнит результаты, жду в комментариях
---------------
Лично я считаю все тесты достаточно условными. Так как с чем-то можно не работать, что-то забывается, но при этом ищется за секунды во время работы и т.п.
А как вы относитесь к тестам по навыкам работы с 1С
---------------
Случайный пост > > >
ТОП 3 сборника задач по 1С
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Публикация своих обработок и использование БСП
Так как работаю в найме, у меня редко появляются решения для общего использования, но иногда все-таки появляются. Решил попробовать сервис 42clouds.com.
Несколько заметок по моментам, с которыми столкнулся, касаются больше применения БСП на практике, и могут пригодиться где-то ещё:
⏩ 1. Первое с чем столкнулся, это работа дополнительной обработки в безопасном режиме. А моя обработка работает с файлами. Ранее не было необходимости работы в таком режиме, и даже не знал, как это обойти, а оказалось все просто. Нужно запросить разрешение при помощи общего модуля
Код запроса разрешения будет выглядеть следующим образом:
⏩ 2. Сведения о внешней обработке. Раньше, чтобы добавить обработку как внешнюю, я использовал свой шаблон фикции
⏩ 3. Нельзя обращаться к имени обработки напрямую из кода.
В моей обработки была дополнительная форма и открыть её простым способом не вышло -
Так как уникальное имя изменяется при работе через сервис.
Для решения данной проблемы нашел два решения:
- Вычислять имя формы из полного имени основной формы:
- Либо как советуют разработчики сервиса через ПолноеИмя() через Метаданные() в процедуре ПриСозданииНаСервере определить полное имя объекта для дальнейшего обращения к нему:
И далее в месте использования писать:
-------------
Кто знает подобные сервисы, кроме Инфостарт, пишите в комментариях, соберу топ по таким сервисам и опишу их💬
-------------
Случайный пост > > >
Оксфордская задача с собеседования 1С
#ЕБ_Повседневность
Так как работаю в найме, у меня редко появляются решения для общего использования, но иногда все-таки появляются. Решил попробовать сервис 42clouds.com.
Несколько заметок по моментам, с которыми столкнулся, касаются больше применения БСП на практике, и могут пригодиться где-то ещё:
РаботаВБезопасномРежиме
и соответствующей функции, например, в моем случае это РазрешениеНаИспользованиеКаталогаВременныхФайлов
Код запроса разрешения будет выглядеть следующим образом:
РаботаВБезопасномРежиме.РазрешениеНаИспользованиеКаталогаВременныхФайлов(Истина, Истина, "Сохранение данных декларации во временные файлы и последующее их чтение");
СведенияОВнешнейОбработке
, но для этого есть специальная функция в общем модуле ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке
, которая сама создает нужную структуру и где остается просто переопределить нужные параметры обработки.В моей обработки была дополнительная форма и открыть её простым способом не вышло -
ОткрытьФорму("ВнешняяОбработки._ИмяОбработки_.Форма»)
Так как уникальное имя изменяется при работе через сервис.
Для решения данной проблемы нашел два решения:
- Вычислять имя формы из полного имени основной формы:
Лев(ЭтотОбъект.ИмяФормы, СтрНайти(ЭтотОбъект.ИмяФормы, ".", НаправлениеПоиска.СКонца)) + ИмяНужнойФормы
- Либо как советуют разработчики сервиса через ПолноеИмя() через Метаданные() в процедуре ПриСозданииНаСервере определить полное имя объекта для дальнейшего обращения к нему:
ПолноеИмяОбъекта = РеквизитФормыВЗначение("Объект").Метаданные().ПолноеИмя();
И далее в месте использования писать:
ПолноеИмяОбъекта + ".ЧтоНамТребуется"
-------------
Кто знает подобные сервисы, кроме Инфостарт, пишите в комментариях, соберу топ по таким сервисам и опишу их
-------------
Случайный пост > > >
Оксфордская задача с собеседования 1С
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Пятничное настроение)
Развитие команды. Внутренний хакатон
Во всех командах программисты развиваются по разному.
В нашей команде проходят хакатоны, когда один из разработчиков либо знает какую-то конкретную область, либо изучает нужную область и делится со всеми.
Хакатон проходит в формате встречи разработчиков в зум. Выбирается один человек, который готовится к докладу, ищет теорию и рассказывает её на встрече с примерами и кейсами применения. Далее есть несколько вариантов:
⚫️ 1. Все просто повторяют своими руками, иногда с небольшими дополнениями;
⚫️ 2. Одна большая задача разбивается на всех по кусочкам;
Если же это только теория, то идет просто обсуждение по теме с ответами на вопросы.
Темы могут быть совершенно разными, не связанными с 1С, но как правило всё-таки технические.
Например, кто-то из команды дома изучает или использует другой язык программирования и рассказывает их отличие, так были хакатоны по Python, Go, C#. Если в рамках 1С, то были по модулям обмена, каким-то внутренним подсистемам, по инструментам разработчика и т.д.
На прошедшей неделе была моя очередь подготовки хакатона по теме работы с Postgre SQL. В ближайшее время оформлю выжимку в отдельном техническом посте.
Пишите в комментариях как вам такой формат и какие форматы совместного обучения проходят в вашей команде💬
Случайный пост > > >
Тема скрыта, так как это случайный пост, и быть может вы узнаете для себя неожиданно полезную информацию
#ЕБ_Повседневность
Во всех командах программисты развиваются по разному.
В нашей команде проходят хакатоны, когда один из разработчиков либо знает какую-то конкретную область, либо изучает нужную область и делится со всеми.
Хакатон проходит в формате встречи разработчиков в зум. Выбирается один человек, который готовится к докладу, ищет теорию и рассказывает её на встрече с примерами и кейсами применения. Далее есть несколько вариантов:
Если же это только теория, то идет просто обсуждение по теме с ответами на вопросы.
Темы могут быть совершенно разными, не связанными с 1С, но как правило всё-таки технические.
Например, кто-то из команды дома изучает или использует другой язык программирования и рассказывает их отличие, так были хакатоны по Python, Go, C#. Если в рамках 1С, то были по модулям обмена, каким-то внутренним подсистемам, по инструментам разработчика и т.д.
На прошедшей неделе была моя очередь подготовки хакатона по теме работы с Postgre SQL. В ближайшее время оформлю выжимку в отдельном техническом посте.
Пишите в комментариях как вам такой формат и какие форматы совместного обучения проходят в вашей команде
Случайный пост > > >
Тема скрыта, так как это случайный пост, и быть может вы узнаете для себя неожиданно полезную информацию
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Работа с Postgre SQL
Делюсь выжимкой с хакатона по работе с Postgre SQL, который готовил на той неделе.
Задача: считать данные из таблицы в базе на Postgre SQL сервере.
Чтобы подключиться к базе и увидеть её структуру, можно воспользоваться программой pgAdmin.
Она бесплатная и можно скачать с официального сайта.
Есть два основных варианта, с помощью которых можно считать данные через 1С:
- ADODB (COM объект)
- Внешние источники данных (объект платформы)
🔹Считать записи первым способом можно используя код из Листинга 1.
На выходе у нас есть подключение к базе, и мы можем делать что нам требуется (на что хватит прав). Можно работать через sql запросы, либо с объектами напрямую.
🔸Второй вариант позволяет сразу увидеть структуру самой базы данных.
Внешние источники данных - это обособленный объект конфигурации, который позволяет работать с данными различного формата и совместимыми программами. Под работой предполагается не только чтение данных, но и хранение и изменение.
При создании внешнего источника данных можно либо вручную задать структуру внешних таблиц, либо воспользоваться конструктором таблиц, в котором задаются параметры подключения и выполняется подключение к базе данных. После подключения к БД, появляется структура базы и можно выбрать нужные таблицы.
❗️ Важный нюанс!!! То подключение, которое мы выполнили в конфигураторе, не сохраняется.
Для того чтобы данный источник заработал в режиме 1С: Предприятие, необходимо либо в коде один раз задать параметры подключения (листинг 2), либо воспользоваться платформенной обработкой "Управление внешними источниками данных".❗️
🔹 Особенности подключения ADODB:
⏩ Требуется драйвер OLEDB
⏩ Можем выполнять SQL запросы
⏩ Необходимо знать структуру базы данных
⏩ Работает медленнее чем второй способ (но есть исключения)
🔸 Особенности подключения через внешние источники данных:
⏩ Требуется драйвер ODBC
⏩ Можно использовать в динамических списках и СКД
⏩ Требуется выполнить подключение в режиме предприятия
⏩ Можно работать с объектом в привычном конструкторе запросов
⏩ Нельзя использовать временные таблицы после выборки данных из внешней базы. Необходимо предварительно выгрузить результат запроса в ТЗ.
⏩ Работает в разы быстрее, чем ADODB
До этого мне не приходилось использовать такой объект как внешние источники данных, но у него явно есть большой потенциал.
Если у вас есть опыт работы с базами на Postgre SQL и внешними источниками данных, буду рад, если поделитесь им в комментариях💬
#ЕБ_Повседневность
Делюсь выжимкой с хакатона по работе с Postgre SQL, который готовил на той неделе.
Задача: считать данные из таблицы в базе на Postgre SQL сервере.
Чтобы подключиться к базе и увидеть её структуру, можно воспользоваться программой pgAdmin.
Она бесплатная и можно скачать с официального сайта.
Есть два основных варианта, с помощью которых можно считать данные через 1С:
- ADODB (COM объект)
- Внешние источники данных (объект платформы)
🔹Считать записи первым способом можно используя код из Листинга 1.
На выходе у нас есть подключение к базе, и мы можем делать что нам требуется (на что хватит прав). Можно работать через sql запросы, либо с объектами напрямую.
🔸Второй вариант позволяет сразу увидеть структуру самой базы данных.
Внешние источники данных - это обособленный объект конфигурации, который позволяет работать с данными различного формата и совместимыми программами. Под работой предполагается не только чтение данных, но и хранение и изменение.
При создании внешнего источника данных можно либо вручную задать структуру внешних таблиц, либо воспользоваться конструктором таблиц, в котором задаются параметры подключения и выполняется подключение к базе данных. После подключения к БД, появляется структура базы и можно выбрать нужные таблицы.
Для того чтобы данный источник заработал в режиме 1С: Предприятие, необходимо либо в коде один раз задать параметры подключения (листинг 2), либо воспользоваться платформенной обработкой "Управление внешними источниками данных".
🔹 Особенности подключения ADODB:
🔸 Особенности подключения через внешние источники данных:
До этого мне не приходилось использовать такой объект как внешние источники данных, но у него явно есть большой потенциал.
Если у вас есть опыт работы с базами на Postgre SQL и внешними источниками данных, буду рад, если поделитесь им в комментариях
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Точное время и замер времени выполнения кода
В 1С есть отличная функция ТекущаяУниверсальнаяДатаВМиллисекундах().
Если обрамить ею участок кода, то можно более точно замерить время выполнения.
Да, для этого можно использовать замер производительности, который я затрагивал в своем посте ранее.
Но может либо не быть отладки, либо это нужно регулярно.
Например, при работе с 1С в облаке, если у вас нет доступа к конфигуратору. Я так же использовал данную функцию для замера разницы выполнения скорости запроса к базе Postgre SQL. И в рамках секунд мой запрос выполнялся одинаково при использовании двух вариантов соединения с базой, а при замере в миллисекундах разница была многократной.
Пример использования:
#ЕБ_Повседневность
В 1С есть отличная функция ТекущаяУниверсальнаяДатаВМиллисекундах().
Если обрамить ею участок кода, то можно более точно замерить время выполнения.
Да, для этого можно использовать замер производительности, который я затрагивал в своем посте ранее.
Но может либо не быть отладки, либо это нужно регулярно.
Например, при работе с 1С в облаке, если у вас нет доступа к конфигуратору. Я так же использовал данную функцию для замера разницы выполнения скорости запроса к базе Postgre SQL. И в рамках секунд мой запрос выполнялся одинаково при использовании двух вариантов соединения с базой, а при замере в миллисекундах разница была многократной.
Пример использования:
ДатаНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
// Код который хотим замерить на скорость
ДатаОкончания = ТекущаяУниверсальнаяДатаВМиллисекундах();
Сообщить(ДатаОкончания - ДатаНачала); // получаем разницу в миллисекундах
#ЕБ_Повседневность
Всем привет! В особенности новым подписчикам. Рад, что вы присоединились)
Немного навёл порядок в закреплённых постах и оставил только "пост знакомства" и он же "о канале".
Там же можно найти ссылки на дайджесты - сборники постов по периодам.
Если вам нужна консультация или помощь в решении текущих задач, по обучению и другое, то можете обращаться ко мне напрямую или через площадку GetMentor
Всем хороших выходных!
Немного навёл порядок в закреплённых постах и оставил только "пост знакомства" и он же "о канале".
Там же можно найти ссылки на дайджесты - сборники постов по периодам.
Если вам нужна консультация или помощь в решении текущих задач, по обучению и другое, то можете обращаться ко мне напрямую или через площадку GetMentor
Всем хороших выходных!
На той неделе был в командировке по работе, при чем очно) довольно редкое явление при работе удаленно.
Почти каждый год нас стараются собирать, чтобы так или иначе мы знали друг друга не только в 2D формате, но и лично. Поводом в этот раз стала внутренняя
При чем это все за счёт работодателя.
Ранее уже был опрос и пост про мотивацию сотрудников, и считаю это отличным дополнением к мотивации и явное проявление лояльности к сотрудникам.
А как вы относитесь к оффлайн мероприятиям на удаленке и бывают ли они у вас?
------------
Кстати, на фото фигурки супергероев 1С, напечатанные мной на 3D принтере для конференции. Незапланированное совпадение с прошлым постом о мотивации)
#ЕБ_Повседневность
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
This media is not supported in your browser
VIEW IN TELEGRAM
В преддверии конца года)
Довольно часто к программисту приходит задача с формулировкой: «при таком-то простом условии от бизнеса заблокировать запись документа».
Задача сама по себе несложная, для новичка выглядит очевидным в событии документа ПриЗаписи добавить простое условие и установить Отказ = Истина.
И ошибка заключается в том, что программисты не уточняют следующие вопросы:
Бывает нужно просто вывести сообщение, а блокировать нет необходимости.
Как правило на полные права она распространяется.
Бывает так, что он создаётся автоматически из другой обработки и это тоже надо учесть.
На такой вопрос заказчик может задуматься и правда найти исключение в своем условии.
Если пользовательское, то эту проверку надо перенести на форму. Если не задаться этим вопросом, можно заблокировать какой-нибудь обмен данными, который возможно происходит и без установленного флага ОбменДанными.Загрузка = Истина.
Бывают документы с огромным количеством строк, и если пользователь который их вбивал несколько часов, не сможет записать документ, то он вряд ли обрадуется, когда выяснит, что теперь ему надо внести данные заново.
На какие-то вопросы нужно получить ответ от бизнеса, а на какие-то можно постараться найти самим ответы. Но только после получения ответов на эти вопросы, можно говорить о жесткой блокировке записи документа.
Можно привязать данное условие к какому-то функционалу, который можно отключить. Например, константы, или периодический регистр сведений, чтобы отсекать по дате, где проверка нужна, а где нет и т.п.
> > > Случайный пост < < <
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Суть ошибки - обращение к данным программно по коду или наименованию. Например, когда в коде идет поиск основной номенклатуры представляющей собой услугу по коду.
В чем проблема? Вот мы видим в базе код элемента справочника номенклатура, ищем по коду через типовую процедуру....
А проблема в том, что код может измениться, как и наименование, если поиск по наименованию.
Если это что-то совсем редко меняющееся, то как правило используют константу, а если предполагается регулярная смена, то данные хранят в периодическом регистре сведений.
Но есть ещё один вариант, это создать специальный справочник "Дополнительные настройки системы".
Когда-то мне рассказали про него, где-то я его внедрил, а на текущем моем рабочем месте он уже был. Имеет разные вариации, но суть одна - это создавать в нем предопределенные элементы и уже к ним обращаться программно.
Я предлагаю свой вариант, возможно не самый навороченный, но все-таки работающий.
Это справочник с 2-мя реквизитами (значение настройки и флаг "ЭтоСписок") и табличной частью (если нужно хранить некий список).
Видел также вариант что-то типа соответствия, реализованного через 2 ТЧ: ТЧ1-ключи, ТЧ2-ключ и значение.
На скриншоте представлен код обращения к предопределенному элементу напрямую, через "ПолучитьОбъект()", не самый верный вариант.
Как доработать? Сделать обращение к данным через запрос и разместить код в общем модуле повторного использования.
> > > Случайный пост < < <
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Четвертый дайджест за четвертый квартал 2023
🔴 Посты с 01.10.23 по 31.12.23:
- ХЕШ строка. Задача по уникальности/сравнению
- Мобильная разработка в 1С, тайминги
- Думал просто Выборка, а оказалось нет)
- Мысли и заметки с конференции Инфостарт 2023
- Топ 3 сервисов по тестированию 1С навыков и знаний
- Публикация своих обработок и использование БСП. Сервис 42clouds.com
- Развитие команды. Внутренний хакатон
- Работа с Postgre SQL
- Точное время и замер времени выполнения кода
- Задача с собеседования. Валидность строки по части скобок
- Частая ошибка новичков - заблокировать запись документа
- Ещё одна частая ошибка новичков - обращение к данным из кода. Возможное решение
Спасибо всем, кто подписан, за лайки и комментарии!
- ХЕШ строка. Задача по уникальности/сравнению
- Мобильная разработка в 1С, тайминги
- Думал просто Выборка, а оказалось нет)
- Мысли и заметки с конференции Инфостарт 2023
- Топ 3 сервисов по тестированию 1С навыков и знаний
- Публикация своих обработок и использование БСП. Сервис 42clouds.com
- Развитие команды. Внутренний хакатон
- Работа с Postgre SQL
- Точное время и замер времени выполнения кода
- Задача с собеседования. Валидность строки по части скобок
- Частая ошибка новичков - заблокировать запись документа
- Ещё одна частая ошибка новичков - обращение к данным из кода. Возможное решение
Спасибо всем, кто подписан, за лайки и комментарии!
Please open Telegram to view this post
VIEW IN TELEGRAM