Forwarded from OneScriptBot
🔥 Artur Ayukhanov опубликовал версию пакета 1bdd 1.14.0
Проект: oscript-library/1bdd
Автор публикации: artbear
Проект: oscript-library/1bdd
Автор публикации: artbear
GitHub
GitHub - oscript-library/1bdd
Contribute to oscript-library/1bdd development by creating an account on GitHub.
Forwarded from Artur
Vanessa OpenSource
🔥 Artur Ayukhanov опубликовал версию пакета 1bdd 1.14.0 Проект: oscript-library/1bdd Автор публикации: artbear
список изменений в 1bdd https://github.com/artbear/1bdd/releases/tag/v1.14.0
GitHub
Release v1.14.0 - Приоритеты шагов, новые шаги и показ проблемных сценариев в конце лога · artbear/1bdd
Изменены приоритеты реализаций шагов #165
при дублировании шагов локальные шаги используются вместо типовых шагов 1bdd
Новые шаги показа содержимого файлов #163
я показываю текст файла "Сп...
при дублировании шагов локальные шаги используются вместо типовых шагов 1bdd
Новые шаги показа содержимого файлов #163
я показываю текст файла "Сп...
Forwarded from Artur
⚡️Встречайте долгожданный релиз Vanessa-Runner v2.2.2 ⚡️
Описание изменений, их много https://github.com/vanessa-opensource/vanessa-runner/releases/tag/v2.2.2
Описание изменений, их много https://github.com/vanessa-opensource/vanessa-runner/releases/tag/v2.2.2
GitHub
Release v2.2.2 - Поддержка ibcmd, команды unlockrepo и compare, поддержка расширений и множество доработок · vanessa-opensource/vanessa…
Возможность выполнения действий через ibcmd - Огромное спасибо @yukon39
Добавлен параметр --ibcmd для запуска команд с использованием утилиты ibcmd #596 #601
Команды
Новая команда unlockrepo - о...
Добавлен параметр --ibcmd для запуска команд с использованием утилиты ibcmd #596 #601
Команды
Новая команда unlockrepo - о...
Исправлены небольшие ошибки, в т.ч.
- https://github.com/vanessa-opensource/add/issues/1142
- https://github.com/vanessa-opensource/add/issues/1142
GitHub
Ошибка при запуске bddRunner · Issue #1142 · vanessa-opensource/add
Описание ошибки При открытии обработки bddRunner возникает ошибка при загрузке плагина: C:\Program Files\OneScript\lib\add\plugins\ЗагрузчикРасширения.epf Преобразование значения к типу Число не мо...
Forwarded from OneScriptBot
🔥 Artur Ayukhanov опубликовал версию пакета add 6.9.6
Проект: oscript-library/add
Автор публикации: artbear
Проект: oscript-library/add
Автор публикации: artbear
GitHub
GitHub - oscript-library/add: Разработка с управляемым качеством на 1С
Разработка с управляемым качеством на 1С. Contribute to oscript-library/add development by creating an account on GitHub.
⚡️Выпущен исправительный релиз Vanessa-Runner v2.2.22 ⚡️
- Исправлена ошибка запуска на линукс-машинах https://github.com/vanessa-opensource/vanessa-runner/pull/623
Установка\обновление как обычно
- Исправлена ошибка запуска на линукс-машинах https://github.com/vanessa-opensource/vanessa-runner/pull/623
Установка\обновление как обычно
opm install vanessa-runner
GitHub
исправление ошибки запуска на линукс-машинах by artbear · Pull Request #623 · vanessa-opensource/vanessa-runner
Столкнулся с проблемой, после установки vrunner, при запуске утилиты, получаю ошибку:
vrunner
{Модуль /root/.local/share/ovm/1.9.1/lib/vanessa-runner/src/Модули/МенеджерКомандПриложения.os /
Ошибк...
vrunner
{Модуль /root/.local/share/ovm/1.9.1/lib/vanessa-runner/src/Модули/МенеджерКомандПриложения.os /
Ошибк...
Forwarded from Artur
Please open Telegram to view this post
VIEW IN TELEGRAM
Периодически возникают вопросы, как запускать команды пакетного запуска Конфигуратора через vanessa-runner
ответ простой - используйте команду
справка -
Вот боевой пример строки запуска для подключения расширения ИБ к хранилищу, у одного из пользователей
ответ простой - используйте команду
vrunner designer
🔥справка -
vrunner help designer
Вот боевой пример строки запуска для подключения расширения ИБ к хранилищу, у одного из пользователей
vrunner designer --ibconnection /Sсервер\база --db-user Логин --db-pwd Пароль --uccode 777 --storage-name http://сервер/repository/repository.1ccr/Complex_King --storage-user ЛогинХран --storage-pwd ПарольХран --additional "/ConfigurationRepositoryBindCfg -forceReplaceCfg -forceBindAlreadyBindedUser -Extension ИмяРасширения"
Недавно встретил вот такой код
Вопрос - сколько замечаний, недочетов есть у данного метода?
я лично насчитал более 5 замечаний
#Ревью
Вопрос - сколько замечаний, недочетов есть у данного метода?
я лично насчитал более 5 замечаний
#Ревью
С добрым утром опенсорсника! 🎉 у меня сегодня первый день отпуска.
и в 9 утра я начал свой отдых - смержил полезный ПР https://github.com/vanessa-opensource/ibcmdrunner/pull/8 😃
сегодня, завтра буду потихоньку выпускать новогодние релизы всех продуктов, зависящих от меня
и в 9 утра я начал свой отдых - смержил полезный ПР https://github.com/vanessa-opensource/ibcmdrunner/pull/8 😃
сегодня, завтра буду потихоньку выпускать новогодние релизы всех продуктов, зависящих от меня
GitHub
https://github.com/vanessa-opensource/ibcmdrunner/issues/6 by yuriybylinkin · Pull Request #8 · vanessa-opensource/ibcmdrunner
#6
⚡️Хочу показать отличный инструмент для анализа кода 1С - меня впечатлило, как качественно бот создаёт комментарии к коду 🥳
Активно юзаю ИИ-бота https://chat.deepseek.com - он очень хорош, хотя ревью кода пока весьма слабовато 😇
Приведу пример
Практически все разработчики знают метод из БСП -
приведу его "родное" описание
видно, что авторы кода постарались описать довольно сложный метод
но все-таки есть вопросы, на которых нет ответа, и приходится дополнительно их выяснять
например:
- не очень понятно, в каких случаях метод возвращает результаты, а в каких может выбрасывать исключения
- не описаны результаты при передаче наименования предопределенного элемента
- нет примеров использования
Активно юзаю ИИ-бота https://chat.deepseek.com - он очень хорош, хотя ревью кода пока весьма слабовато 😇
Приведу пример
Практически все разработчики знают метод из БСП -
ОбщегоНазначения.ЗначенияРеквизитовОбъекта
приведу его "родное" описание
// Возвращает структуру, содержащую значения реквизитов, прочитанные из информационной базы по ссылке на объект.
// Рекомендуется использовать вместо обращения к реквизитам объекта через точку от ссылки на объект
// для быстрого чтения отдельных реквизитов объекта из базы данных.
//
// Если необходимо зачитать реквизит независимо от прав текущего пользователя,
// то следует использовать предварительный переход в привилегированный режим.
//
// Параметры:
// Ссылка - ЛюбаяСсылка - объект, значения реквизитов которого необходимо получить.
// - Строка - полное имя предопределенного элемента, значения реквизитов которого необходимо получить.
// Реквизиты - Строка - имена реквизитов, перечисленные через запятую, в формате
// требований к свойствам структуры.
// Например, "Код, Наименование, Родитель".
// - Структура, ФиксированнаяСтруктура - в качестве ключа передается
// псевдоним поля для возвращаемой структуры с результатом, а в качестве
// значения (опционально) фактическое имя поля в таблице.
// Если ключ задан, а значение не определено, то имя поля берется из ключа.
// - Массив, ФиксированныйМассив - имена реквизитов в формате требований
// к свойствам структуры.
// ВыбратьРазрешенные - Булево - если Истина, то запрос к объекту выполняется с учетом прав пользователя;
// если есть ограничение на уровне записей, то все реквизиты вернутся со
// значением Неопределено; если нет прав для работы с таблицей, то возникнет исключение;
// если Ложь, то возникнет исключение при отсутствии прав на таблицу
// или любой из реквизитов.
//
// Возвращаемое значение:
// Структура - содержит имена (ключи) и значения затребованных реквизитов.
// - если в параметр Реквизиты передана пустая строка, то возвращается пустая структура.
// - если в параметр Ссылка передана пустая ссылка, то возвращается структура,
// соответствующая именам реквизитов со значениями Неопределено.
// - если в параметр Ссылка передана ссылка несуществующего объекта (битая ссылка),
// то все реквизиты вернутся со значением Неопределено.
видно, что авторы кода постарались описать довольно сложный метод
но все-таки есть вопросы, на которых нет ответа, и приходится дополнительно их выяснять
например:
- не очень понятно, в каких случаях метод возвращает результаты, а в каких может выбрасывать исключения
- не описаны результаты при передаче наименования предопределенного элемента
- нет примеров использования
Deepseek
Chat with DeepSeek AI.
Vanessa OpenSource
⚡️Хочу показать отличный инструмент для анализа кода 1С - меня впечатлило, как качественно бот создаёт комментарии к коду 🥳 Активно юзаю ИИ-бота https://chat.deepseek.com - он очень хорош, хотя ревью кода пока весьма слабовато 😇 Приведу пример Практически…
а теперь представлю результаты работы ИИ-бота
мой промпт очень прост -
далее я вставил текст самого метода из общего модуля
и бот очень быстро создал замечательное описание
видны и примеры, и описания исключений, и алгоритм работы
В общем, всем советую этот замечательный инструмент
PS еще я в параллели пробую разные AI-IDE для работы с кодом 1С, OneScript, расскажу о результатах позже.
мой промпт очень прост -
Заполни комментарии к коду процедуры на языке 1С
далее я вставил текст самого метода из общего модуля
и бот очень быстро создал замечательное описание
// Функция возвращает значения реквизитов объекта в виде структуры
//
// Параметры:
// Ссылка - Строка/Ссылка - Идентификатор объекта:
// * Строка - полное имя предопределенного элемента (Например: "Справочник.Товары.Товар1")
// * Ссылка - прямая ссылка на объект
// Реквизиты - Строка/Массив/Структура - Список получаемых реквизитов:
// * Строка - имена через запятую ("Код,Наименование,Владелец")
// * Массив - список полей для выборки
// * Структура - {Псевдоним: ИмяРеквизита} (Для формирования сложных имен)
// ВыбратьРазрешенные - Булево - Флаг проверки прав доступа к данным (по умолчанию Ложь)
//
// Алгоритм:
// 1. Идентификация объекта:
// - Для строкового параметра: парсинг полного имени предопределенного элемента
// - Проверка прав доступа к объекту, если элемент не найден в ИБ
// - Для ссылки: проверка валидности и получение метаданных
//
// 2. Обработка реквизитов:
// - Конвертация строки в массив (удаление пробелов, разделение по запятым)
// - Нормализация структуры полей {Псевдоним: ИмяРеквизита}
// - Проверка доступности реквизитов через метаданные
//
// 3. Формирование и выполнение запроса:
// - Динамическое построение текста запроса с учетом прав доступа
// - Подстановка параметров:
// * &ТекстЗапросаПолей - сформированные поля для выборки
// * &ПолноеИмяОбъектаМетаданных - идентификатор таблицы
// * &Ссылка - идентификатор объекта
//
// 4. Обработка результатов:
// - Заполнение структуры-результата данными из выборки
// - Возврат пустой структуры для неустановленных предопределенных элементов
//
// Особенности:
// - Автоматическая обработка предопределенных элементов по полному имени
// - Поддержка псевдонимов полей через структуру параметра Реквизиты
// - Двойная проверка доступности полей (на этапе компиляции и выполнения запроса)
// - Использование безопасного подхода:
// * Обработка исключений при разборе параметров
// * Детализированные сообщения об ошибках
//
// Ошибки:
// - Исключение при неверном формате Ссылки
// - Исключение при отсутствии прав доступа к объекту/реквизитам
// - Исключение при передаче несуществующих реквизитов
//
// Зависимости:
// - Метод ПредопределенныйЭлемент() - для работы с предопределенными элементами
// - Метод НайтиОшибкуДоступностиРеквизитовОбъекта() - для диагностики проблем доступа
// - Общий модуль СтроковыеФункцииКлиентСервер - форматирование сообщений
//
// Примеры использования:
// // Получение реквизитов по предопределенному элементу
// Реквизиты = ЗначенияРеквизитовОбъекта("Справочник.Номенклатура.Услуги", "Код,Наименование");
//
// // Получение реквизитов со своими псевдонимами
// Поля = Новый Структура("КодНоменклатуры, НаименованиеНоменклатуры", "Код", "Наименование");
// Данные = ЗначенияРеквизитовОбъекта(Ссылка, Поля);
//
// // Использование прав доступа
// Данные = ЗначенияРеквизитовОбъекта(Ссылка, "КонфиденциальныеДанные", Истина);
видны и примеры, и описания исключений, и алгоритм работы
В общем, всем советую этот замечательный инструмент
PS еще я в параллели пробую разные AI-IDE для работы с кодом 1С, OneScript, расскажу о результатах позже.
⚡️Всем привет! Ищу активного мейнтейнера для развития и поддержки проекта Vanessa-ADD - фреймворк тестирования для 1С.
в связи с рождением сына, да, я теперь молодой папа, времени на поддержку проекта не хватает 😰
сыну уже несколько месяцев, но легче со временем не стало 😇
Предоставлю полные права к проекту и репозиторию на гитхабе. Помогу максимально.
Я сам проект бросать не планирую, хочу его и дальше развивать, но пока времени не хватает.
в связи с рождением сына, да, я теперь молодой папа, времени на поддержку проекта не хватает 😰
сыну уже несколько месяцев, но легче со временем не стало 😇
Предоставлю полные права к проекту и репозиторию на гитхабе. Помогу максимально.
Я сам проект бросать не планирую, хочу его и дальше развивать, но пока времени не хватает.