Skip to content

Implementar fluxo de criação de Rotinas e Classes via API Src2.Item.CriarItem na extensão VS Code #30

@LeoAnders

Description

@LeoAnders

Contexto

Atualmente, ao criar um novo arquivo dentro do VS Code (Ctrl + N → "New File"), o editor cria o arquivo diretamente no módulo aberto no momento, sem respeitar o módulo correspondente ao nome da rotina (por exemplo, TRIB).
Isso gera inconsistências — por exemplo, CCTRIB000.mac sendo criada dentro do módulo CCINF.

Além disso, o SVN não versiona automaticamente as novas rotinas criadas localmente.

Objetivo

Substituir a criação manual de arquivos por um fluxo controlado pela API do IRIS, centralizando toda a lógica de validação e criação no método:

##class(Src2.Item).CriarItem(namespace, nomeItem, .itemIdCriado, .arquivoItemCriado)

Para isso, será criado um endpoint intermediário na classe:

Src2.Integracao.VSCode

que receberá requisições da extensão do VS Code.

Escopo

Lado IRIS

  • Criar método REST POST na classe Src2.Integracao.VSCode
  • Invocar internamente ##class(Src2.Item).CriarItem(...)

Lado do Vs Code (extensão)

  • Novo comando: “CCS: New File”
  • Atalho: Ctrl+N (Substituir atalhos existentes)

Etapas do fluxo:

  1. QuickPick: Selecionar o workspace no qual será criado o novo arquivo (rotina / classe)
  • Apenas se mais de um workspace disponível, se possuir apenas um workspace, abrir o mesmo
  • A extensão da Intersystem já oferece algo semelhante, exemplo:
  • Image
  1. InputBox: Nome da Rotina / Classe
  2. Envio da requisição POST
  3. Exibição de resultado: Abrir arquivo criado
  4. Feedback visual:
  • “Item criado com sucesso em /<módulo>”
  • Exibição de erros retornados da API caso ocorra

Task

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions