CAS411 - SamDev

Ultima Revisão: 14/04/2023

Função:

Interface tipo uma IDE para desenvolvimento de scripts em Groovy, Java e HTML.


Conceito:

1 - IDE: do inglês Integrated Development Environment ou Ambiente de Desenvolvimento

Integrado, é um programa de computador que reúne características e ferramentas de apoio

ao desenvolvimento de software com o objetivo de agilizar este processo.


2 - Groovy: é uma linguagem de programação orientada a objetos desenvolvida para a

plataforma Java como alternativa à linguagem de programação Java. Groovy possui

características de Python, Ruby e Smalltalk. Utiliza uma sintaxe similar à de Java, é compilada

dinamicamente para bytecode Java, e integra-se transparentemente com outros códigos e

bibliotecas Java.


Implicações:

1 - Os scripts são textos, comumente chamado de códigos no jargão de TI, construídos segundo

as regras léxicas da linguagem Groovy, Java ou HTML que permite ao usuário manipular conteúdo

dos campos contidos nos registros de tabelas a fim de obter dados significativos a seu propósito.


2 - A atualização indevida de scripts pode ocasionar erros no sistema e até mesmo o não

funcionamento do mesmo.


3 - Os scripts são os textos das fórmulas, dos relatórios, dos cubos, dos interceptadores, dos servlets

ou dos recursos.


4 - Os scripts atualizados, ou seja, inseridos (importados) na base de dados só podem ser

visualizados através desta tarefa.


5 - Os scripts são os códigos fontes que irão manipular os conteúdos de campos de um ou mais registros,

portanto deve o usuário aplicar máxima atenção e cuidado para não manipular tais conteúdos de forma

incorreta produzindo resultados incorretos aos gestores da empresa usuária.


6 - Para elaboração dos scripts estão disponíveis métodos e componentes.


7 - Os scripts (ou códigos) estão classificados nos seguintes tipos:


7.1 - Scripts de Fórmulas: São scripts indicados em vários cadastros e possuem a extensão

'.formula'. Exemplo: multitec.formulas.yyyy...


7.2 - Scripts de Relatório: São scripts de listagens e possuem a extensão '.relatorios'.

Exemplo: multitec.relatorios.yyy... São compostos em duas partes: 1 - [Frontend - HTML],

que é o desenho de tela produzida na linguagem HTML, e 2 - [Backend - Groovy] que é o

script produzido na linguagem Groovy que contem a lógica de extração de dados do

banco de dados e a respectiva organização dos dados.


7.3 - Scripts do Interceptador: São scripts que serão aplicados a tabela indicada todas vez

que haver operação de inclusão, alteração ou exclusão de seus registros no banco de

dados e possuem a extensão '.interceptor', ou seja, toda vez que houver uma operação de

inclusão, alteração ou exclusão, antes de se consolidar a operação no banco de dados, o

interceptador irá executar o script informado para a tal tabela.


7.4 - Scripts de Cubo: São scripts de cubo e possuem a extensão '.cubo'. Exemplo:

multitec.cubo.xxx... São compostos em duas partes: 1 - [Frontend - HTML], que é o desenho

de tela produzida na linguagem HTML, e 2 - [Backend - Groovy] que é o script produzido na

linguagem Groovy que contem a lógica de extração de dados do banco de dados e a

respectiva organização dos dados.


7.5 - Scripts do Servlet:


7.6 - Scripts do Recurso:


8 - As fórmulas não têm um mecanismo de versionamento para controle de edições de fórmula

mas toda fórmula possui um clique no canto superior direito chamado "Compartilhar na nuvem",

isso fará com que a fórmula não seja mais enviada para a nuvem permanecendo apenas na

máquina em que foi criada. Porém, se o que você deseja é criar um versionamento de fórmulas,

isso não é possível. Ou seja, se você quer ter uma versão de produção na 'nuvem/no banco do

cliente' e uma versão de desenvolvimento com o mesmo nome na sua maquina não é possível.

A Multitec optou por não usar versionamento nas fórmulas e com isso diminuir a complexidade

do sistema de fórmulas. Mas, nada impede de você utilizar nomes temporários para as fórmulas

em desenvolvimento, exemplo você tem uma fórmula em produção no cliente chamada

'srf.calculaNota' você pode copiar ela e chamar de 'versao1.srf.calculaNota', 'versao2.srf.calculaNota'

e por aí vai. Até que você tenha concluído os testes você usa esse nome temporário, depois você

simplesmente apaga a fórmula em produção e renomeia a fórmula de desenvolvimento para o nome

da de produção, e envia para nuvem.


Premissas:

1 - Menu [Arquivo]:

1.1 - [Salvar] ou Ctrl-S:                 Grava o script carregado e em edição.

1.2 - [Salvar Todos] ou Ctrl-T:     Grava todos os scripts carregados.

1.3 – [Ajuda] ou F1:                      Exibe as orientações do manual.

1.4 – [Pesquisar] ou Ctrl-F:          Para encontrar palavras no texto do script.

1.5 – [Sair] ou Escape:                  Fechar o SamDev e retornar ao menu principal.


2 - Menu [Processos]:

2.1 - [Valida o código Groovy]: Verifica de há erros de sintaxe no script carregado e em edição.


2.2 – [Enviar código fonte para a nuvem]: Envia da base de dados para a nuvem (ou insere, faz

uma cópia, faz um upload, faz uma transferência) substituindo todos os scripts contidos na nuvem

considerando somente os scripts sob a pasta [revenda.] que são controlados pelo representante.

Os demais scripts contidos na base de dados em pastas com outros nomes ([multitec.], [xxx.], [pedro.],

[vendas.], etc) não serão enviados, ou seja, permanecem somente na base de dados.


2.3 – [Atualizar códigos a partir da nuvem]: Atualiza a base de dados a partir do conteúdo da nuvem

(ou insere, faz uma cópia, faz um dowload, faz uma transferência) substituindo todos os scripts contidos

na pasta [multitec.] que são controlados pela Multitec, e na pasta [revenda.] que são controlados pelo

representante. Os demais scripts contidos em pastas na base de dados com outros nomes ([xxx.], [pedro.],

[vendas.], etc) não serão afetados, ou seja, serão mantidos como estão na base de dados (Tabela Aah12).


2.4 - [Exportar]: Exporta todos os scripts contidos na base de dados para um 'arquivo.zip' em uma pasta

de livre escolha do usuário.


2.5 - [Importar]: Importa todos os scripts de um dado 'arquivo.zip' atualizando todos os scripts na base

da dados sem qualquer verificação, ou seja, é uma cópia no sentido mais pura desta palavra.


3 - Clique no Botão Direito do Mouse: Ao clicar com o botão direito do mouse, na pasta onde estão listados

os scripts, pode-se incluir um novo script ou excluir os scripts previamente marcados..


4 - Autocomplete:  Na digitação dos scripts a tecla [Ctrl + Space] aciona o recurso de auto complemento ou

auto completar.