Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API для записи объектов метаданных из стороннего приложения #158

Open
aliczin opened this issue Dec 21, 2020 · 5 comments
Milestone

Comments

@aliczin
Copy link

aliczin commented Dec 21, 2020

просили issue - создадим

суть в следующем - сейчас библиотеки представляет модель для чтения - то есть сериализации из файлов в объект.
а хочется запись - то есть изменять объекты MD и десериализовать в файлы.

помимо всяких Ынтырпрайз сценариев использования есть один важный открытый сценарий

в Github встроили https://github.com/features/codespaces
да и не только туда - многие развертывают VSCode как отдельный сервис для Bitbucket/Gitlab, чтобы позволить кодировать прямо в браузере

изображение

Такому сервису понадобится не только запись BSL языка, но еще и изменение метаданных.

То есть "слева" будет дерево метаданных с командами - на панели.
изображение

для указанных сценариев и придется делать "запись", помимо чтения.
У меня сейчас в работе пилотный сценарий "Из DWH на Oracle в 1С метаданные" - но это уже другая история, хотя функциональность будет таже.

@asosnoviy
Copy link
Member

@otymko переведи плз этот поток сознания в осмысленную таску =)

@aliczin
Copy link
Author

aliczin commented Dec 22, 2020

@asosnoviy конечно-конечно - больше осмыслений. Больше ищузов и больше коментов. ;-).

А существует какой-то формат по которой ты/Вы определяете осмысленность НЕосмысленность таски ? Лех забей - будет PR - сразу станет все понятно ;-)

@otymko
Copy link
Member

otymko commented Dec 22, 2020

@aliczin кейсы мне понятны. Что-то подобное для VSC предполагалось делать. Но описанная задача выше - она глобальная и даже трудно прикинуть трудозатраты на нее. Я бы начал со следующего:

  • Выбор минимального кейса, например отрисовка дерева метаданных "крупными" мазками.
  • Возможность в дереве метаданных выше менять порядок, с отражением изменений в формате edt / original.
  • Сразу вырисовывается вопрос по взаимодействию VSC / Monako / Codespaces. Т.к. они на другом стеке (ts и т.п.), нужно будет организовывать между ними обмен. Через JSON RPC например.

Пример более сложный сходу на стороне текущего проекта не получится сделать - т.к. многих вещей не хватает в моделях метаданных.

@nixel2007
Copy link
Member

я вообще не уверен, что взаимодействие с пользователем имеет смысл делать на стороне mdclasses. само апи сериализации - да, вполне. а отприсовка и UI/UX - это явно ide-specific задача, и для панели нужно делать отдельный плагин/доработку существующих плагинов. mdclasses все же довольно низкоуровневая библиотека.

эндпоинты для таких операций можно реализовать в виде protocol extension для bsl ls, дабы не утяжелять библиотеку. а panel api - уже задача плагина

@aliczin
Copy link
Author

aliczin commented Dec 22, 2020

@nixel2007 именно API - в MDClasses именно API

@aliczin aliczin changed the title Запись объектов - кодогенерация API для записи объектов метаданных из стороннего приложения Dec 22, 2020
@otymko otymko added this to the 2.0 milestone May 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants