Índice



A central de componentes é utilizada para importar componentes e extensões de widgets suportadas na plataforma permitindo baixar ou importar componentes que podem ser ativados ou inativados quando

necessário. 

O controle é realizado por empresa, na qual essa pode assumir um widget ativo, enquanto outra empresa pode compartilhar esse widget desativado. Por exemplo, o Analytics Component, pode estar desativado

para a empresa 01 enquanto encontra-se ativado para a empresa 02.

Confira mais detalhes sobre a Central de tarefas aqui


Evolução


Com o objetivo de ampliar a capacidade de um componente - será possível criar datasets através do deploy de um componente, garantindo sua integridade e segurança, os datasets criados serão dependentes

deste, impossibilitando que sejam desativados - ocasionando assim divergências onde quer que estejam sendo utilizados.


Desenvolvimento atual


O desenvolvimento de apps pode ser realizado de diversas formas, porém é fornecido um modelo de projeto no qual sua estrutura auxilia na criação de apps, o projeto sample-component.

Na próxima seção, utilizaremos ele para exemplificar como se dará esta nova forma de desenvolvimento que irá possibilitar o vínculo de datasets.


Criação de dataset


Hoje, em um componente já existe a possibilidade de criar e personalizar, widgets, temas, layouts e páginas. A partir deste novo recurso, será possível a criação de datasets para que sejam utilizados dentro da plataforma das diversas formas já conhecidas, criando integrações, auxiliando em processos, facilitando preenchimento formulários, entre outros recursos.

Confira mais detalhes sobre desenvolvimento de datasets aqui.


Desenvolvimento de componentes com Dataset


Para ter um dataset vinculado a um componente, basta realizar algumas adições simples no código do seu componente, como recomendado, estaremos utilizando o projeto do sample-component como exemplo.


Declarando dependência


Todo componente deve conter um arquivo component.xml onde nele é declarado diversos atributos do componente, para que um dataset seja vinculado, basta criar uma nova tag denominada <dependencies></dependencies>, onde dentro será adicionado as informações do seu dataset conforme exemplo abaixo:


<dependencies>
	<dependency>
		<code>TOTVS_customers</code>
		<file>dependencyFiles/datasets/dataset.js</file>
		<resourceType>dataset</resourceType>
	</dependency>

	<dependency>
		<code>TOTVS_orders</code>
		<file>dependencyFiles/datasets/orders.js</file>
		<resourceType>dataset</resourceType>
	</dependency>
</dependencies>


Detalhando as tags

Com o objetivo de não haver conflitos com datasets previamente cadastrados ou de outros desenvolvimentos, é recomendado utilizar o prefixo: nomeEmpresa_Componente_FuncaoDataset



Um dataset pode ser associado somente a um único componente, caso haja mais de um componente, a tag <code> não poderá ser repetida, por isso sempre use a sugestão do prefixo

nomeEmpresa_Componente_FuncaoDataset e tenha o código original do dataset em ambos os componentes.


Após essas configurações, basta realizar o deploy do .ear como de costume na central de componentes. Após receber a notificação de que o aplicativo foi instalado, basta ativá-lo na central de componentes.

Uma vez ativado os datasets serão listados na página de Datasets.



Um ícone de exclamação ficará ao lado do menu de ações, na listagem de dataset - informando quando um dataset estiver vinculado a um componente, ao passar o mouse no indicativo, poderá ser verificado a qual componente o dataset pertence.



Desativando um dataset


Datasets criados a partir de um componente terão inicialmente um vínculo ao componente e só serão desativados, caso o componente seja desativado. Caso contrário não será possível fazer a desativação.

O vínculo de um dataset pode ser retirado excluindo do arquivo componente.xml a tag “dependency” referente ao dataset e sendo atualizado pela central de componentes - tornando assim, possível a desativação

do dataset. Para criar novamente o vínculo, basta inserir a informação no arquivo.

Datasets pré-existentes na plataforma não poderão ser vinculados a um componente.


Desativando um componente


Através da central de componentes é possível realizar a desativação de um componente, caso este possua datasets vinculados a ele. Uma modal informando quais datasets estão vinculados será exibida, conforme imagem abaixo.



Ao desativar um componente, o dataset vinculado ao mesmo também será desativado. Ao ativá-lo novamente o dataset também será reativado. Caso o dataset tenha tido seu vínculo removido, esse comportamento não será aplicado.


Atualizando conteúdo de um dataset


Para atualizar o conteúdo de um dataset que seja dependente de um componente através da central de componentes, basta que seu código seja modificado no arquivo físico de seu componente e um novo pacote

para atualização seja gerado ao compilar.

Uma vez com o pacote atualizado, realize novamente o upload pela central de componentes. Neste primeiro momento os datasets ainda não serão atualizados - o administrador de cada empresa deverá

desativar o componente e ativá-lo novamente em seguida, neste processo somente os datasets da empresa que realizar o refresh serão atualizados. 


Depreciação de um dataset


Caso haja um dataset com código específico que não será mais usado na plataforma e não seja possível atualizar o seu código, uma nova dependência deve ser criada com um novo code que seja único.


Exclusão de um componente


Caso o arquivo físico do componente (sample-component.ear) seja deletado do diretório de instalação do fluig (../appserver/apps) o undeploy será feito e todos os datasets serão removidos da base de dados,

mantendo a regra de todos os outros recursos hoje, widget, temas e layouts.


Outros bloqueios


Além do bloqueio da desativação de um dataset dependente de um aplicativo, o usuário da plataforma não poderá:

Apenas a função de consultar ficará operante.