Page tree

 

 

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                             

 

 

Informações Gerais

Especificação

Produto

Extrator Protheus

Módulo

Configurador

Segmento Executor

Serviços

Projeto

PDR_SER_BA002-92

IRM

PCREQ-8364

Requisito

PCREQ-8394

Subtarefa

PDR_SER_BA002-93

Objetivo

Permitir que os dados de algumas dimensões sejam consolidados de acordo com atributos selecionados nas configurações dos extratores. Desta forma, torna-se possível identificar registros únicos ao longo de mais de um grupo de empresa, empresa, unidade de negócio e filial minimizando, assim, informações redundantes no TOTVS Smart Analytics e TOTVS Business Analytics

Ao utilizar o consolidador de dados as chaves das dimensões são alteradas, isto pode implicar na quebra de integridade referencial entre dimensões e fatos. Desta forma, caso a consolidação esteja sendo configurada em um ambiente no qual dados já tenham sido extraídos em períodos anteriores, é necessário que todo o histórico de dados seja extraído novamente para que os relacionamentos entre fatos e dimensões sejam atualizados

Definição da Regra de Negócio

 

Rotina

Tipo de Operação

Opção de Menu

BIXBaseExtractor

[Alteração]

Não se aplica

BIXUnifier

[Criação]

Configurador / Ambiente / Extrator BI / Consolidador de Dados

BIXBEAux[Alteração]Não se aplica

 

Para que a consolidação dos dados das dimensões seja possível, será necessário realizar a alteração da chave primária dos registros de acordo com o atributo selecionado. Deverá ser implementado o método BIXGroupBy na classe BIXProcess que é herdada por todas as fatos e dimensões dos extratores: 

Method BIXGroupBy() class BIXProcess
Return {}


As dimensões que poderão ter os dados consolidados devem implementar o método BIXGroupBy da seguinte forma:

Method BIXGroupBy() class <Extrator>
	Local aFields := {}
	
	aAdd( aFields, { [Atributo CHAVE], [Campo Origem], <Descriçao>} )
Return { [Entidade da Fluig Smart Data], aFields }

 

E o método New:

Method New() class  <Extrator>
Return Self

 

No método BIXGroupBy deve ser retornado um array com o nome e a descrição dos atributos que poderão ser utilizados para a consolidação dos dados da dimensão e, desta forma, deve ser implementado apenas nas dimensões cujos dados poderão ser consolidados.

A tela de configuração será montada dinamicamente no fonte BIXUnifier, para cada dimensão deve ser criado um combo box que terá como opções os atributos informados no método BIXGroupBy. Os dados da tela de configuração serão gravados na tabela HYW que deverá ser criada no banco de dados do ERP utilizando a classe TBITable. A tabela deverá ter a seguinte estrutura:

CampoTipoTamanhoDecimais
HYW_ENTITYC30
HYW_ATTRC100
HYW_FIELDC100


A tabela terá um único índice para permitir a busca de informações por entidade: 

Índice
HYW_ENTITY


A função BIXBEDoKey deverá ser alterada para que as chaves dos registros sejam montadas considerando o atributo selecionado para a consolidação dos dados. Para a montagem da chave, deve ser realizada uma busca na tabela HYW para verificar se a dimensão em processamento deve ter os dados consolidados por algum atributo. Caso seja necessário realizar a consolidação, a chave deverá ser montada contendo apenas a Linha de produto + Instância + Atributo selecionado, caso contrário a chave deve ser montada seguindo outra regra. O quadro abaixo descreve as possíveis regras à serem seguidas e a composição de chaves para cada uma das regras: 

RegraComposição
Desconsiderando o compartilhamento de tabelas entre empresasLinha de produto + Instância + Grupo de empresa + PK da tabela origem da dimensão
Considerando compartilhamento de tabelas entre empresasLinha de produto + Instância + Nome da tabela física origem da dimensão + PK da tabela origem da dimensão
Consolidando dados das dimensões por atributos selecionadosLinha de produto + Instância + Atributo selecionado

Protótipo de Tela

 

 

 

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.