Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Índice


Objetivo:

...

     Este documento tem por objetivo especificar como criar uma fórmula visual para obter dados de uma tabla tabela dinâmica.

Especificação:

...

     Criaremos uma formula visual para obter registros de uma tabela dinâmica usando o Data Server GlbItemDinamData. Devido a sua complexidade, esta atividade exige um nível de conhecimento avançado em Fórmula Visual e em codificação.

Criando tabela dinâmica no RM
Âncora
criando-tabela-dinamica
criando-tabela-dinamica

...

Criaremos uma tabela dinâmica no RM e adicionaremos registros na mesma para consultar em nossa formula visual.

Image Modified

Dados para criar a Tabela Dinâmica

Campos do formularioDescrição de cada campoValor Inserido
CódigoNome da Tabela"TBTESTE"
DescriçãoDescreve da tabelas "Tabela dinâmica de teste"
FinalidadeDetermina a finalidade da tabela 1

 

Bando de dados

Os registros de Tabela Dinâmica são armazenados na tabela GDINAM

Executando a seguinte query: SELECT CODCOLIGADA, APLICACAO, CODIGO, FINALIDADE, DESCRICAO, NOMETABELA FROM GDINAM ORDER BY RECCREATEDON DESC;

Conseguimos localizar os dados de nossa tabela TBTESTE

Image Modified

...

Dicionário de dados da tabela GDINAM

COLUNADescrição de cada campo
CODCOLIGADACódigo da coligada, se valor for 0 todas as coligadas
poderam
poderão ver esse registro
APLICACAO
Codigo
Código da aplicação que esta usando no RM.
CODIGOÉ o nome da tabela dinâmica.
FINALIDADEDetermina qual a finalidade da tabela 
DESCRICAODescreve a tabela
NOMETABELANome da tabela que
amazerá
armazenará os itensda tabela dinâmica. Essa tabela e determinada pela finalidade escolhida para a tabela dinâmica

 

...

Adicionando registro na Tabela dinâmica

...

Criaremos um item na tabela dinâmica que criamos.

Na visão de Tabelas Dinâmicas onde criamos a tabela, selecione o registro com o Código da tabela criada anteriormente, no caso a TBTESTE e clique no menu Anexos na toolbar acima da listagem ou use o atalho CTRL+A.

Ao Selecionar a opção Item de Tabela

...

Dinâmica, ao lado da listagem principal será exibido a tela de Anexos onde adicionaremos um registro a tabela que criamos.

Image Modified


Banco de dados 

Para localizar os itens da

...

tabela precisamos saber onde os itens foram salvos essa informação fica salva na

...

tabela GDINAM na coluna NOMETABELA.

Sabendo a tabela que será

...

armazenados os itens, podemos consultar no banco de dados o novo registro que criamos, usaremos como condição na cláusula where o código da

...

tabela, como nesse exemplo:

Query: SELECT CODCOLIGADA, APLICACAO, CODCLIENTE, CODTABELA, CODINTERNO, DESCRICAO, PODEALTERAR FROM PSERVBANCO WHERE CODTABELA = 'TBTESTE';

Image Modified

Âncora
Finalidade
Finalidade

Informações

Cada Finalidade selecionada na tabela dinâmica, define o nome da tabela no banco:

  • Códigos de Serviços Bancários → Tabela PSERVBANCO
  • Validação de Campos Complementares → Tabela GCONSIST 


Portanto de acordo com a finalidade usada por sua tabela dinâmica, a tabela usada no filtro deve ser a correspondente.



Criando a formula visual

...

Ainda no modulo de Serviços Globais selecione o menu Gestão e

...

localize o combobox com o nome Fórmula visual exiba as opções e selecione Fórmula visual

Siga os passos abaixo para criar uma nova formula visual, informe os dados de Identificação como o exemplo:

Image Modified


Agora que foi criada a formula podemos editar o Workflow clicando duas vezes sobre o registro na listagem:

Image Modified

...


Será exibido a tela de RMSWorkflow que permite a execução de um grupo de atividades em uma sequência.

Image Modified

Nessa tela

...

existem 3 abas:

  1. Propriedades: Onde encontramos as propriedades globais do Workflow como Nome, Classe Base, Descrição, Contexto entre outros.
  2. Atividades: É uma toolbox com uma serie de atividades que podemos incluir ao nosso Workflow, arrastando o componente para a area de fluxo de trabalho sequencial.
  3. Estrutura: Onde é exebido exibido uma arvore de dodos dados os recursos usados pelo Workflow.

Construindo o Workflow que consultar os registros da tabela dinâmica. 

...

Agora

...

construiremos nosso Fluxo de trabalho.

Primeira atividade que adicionaremos ao Workflow é uma Expressão que armazenara a chave do registro que iremos consultar na tabela dinâmica.

Para adicionar a atividade basta pesquisar na aba "Atividades" por Expressão e arrastar o componente para o Fluxo de Trabalho Sequencial.

Nesse exemplo a chave é armazenada na coluna CODCLIENTE da tabela PSERVBANCO

...

(Conforme selecionada na Finalidade)

Consultaremos o registro que

...

incluímos nos passos anteriores, o

...

código do registro éentão na propriedade "Expressões" digitaremos o valor 1:

Image Modified


A segunda atividade que adicionaremos ao fluxo é "Ler registro"

Em atividades pesquise por Ler Registro

Arraste o componente ao Fluxo de trabalho logo abaixo do primeira

...

Atividade que adicionamos no

...

passo anterior, clique na atividade de Ler Registro(rmsReadRecordActivity1) adicionada ao fluxo, e no menu lateral esquerdo selecione a aba Propriedades.

A primeira propriedade que deve ser preenchida é Nome do DataServer, o data server que gerencia os itens de tabelas

...

dinâmicas é o GlbItemDinamData para localizar esse data server basta clicar no botão ao lado da propriedade, uma tela de pesquise será exibida, pesquise por "Item de tabela Dinamica" e clique no item com o mesmo nome na listagem.


Image Modified


A

...

próxima propriedade que devemos informar é os Dados de Usuario(OwnerDara)

Image Modified

Essa propriedade recebe um Array de String com as seguintes informações:

  1. O nome da tabela onde os itens da tabela dinamica dinâmica são salvos, no caso a tabela "PSERVERBANCO" (Conforme selecionada na Finalidade)
  2. Condições para uma clausula where localize os dados da table " AND CODCOLIGADA = 0 AND APLICACAO = 'G' AND CODTABELA = 'TBTESTE'"

Para informar esses dados criaremos uma nova atividade acima da atual rmsReadRecordActivity1

Em atividades pesquise por Executar Código arraste o componente para o fluxo de trabalho logo acima de rmsReadRecordActivity1, clique duas vezes sobre a nova atividade para editar o código:


Image Modified

Agora iremos informar os Dados de Usuario(OwnerDara)

...

através de um bloco de

...

código:


Image Modified

Dentro do bloco codeActivity1_ExecuteCode crie um array com os dados informado anteriormente e atribua esse array a propriedade OwnerData da atividade rmsReadRecordActivity1

Bloco de código
languagec#
private void codeActivity1_ExecuteCode(object sender, System.EventArgs args)
{
   rmsReadRecordActivity1.OwnerData = new string[]{"PSERVBANCO"," AND CODCOLIGADA = 0 AND APLICACAO = 'G' AND CODTABELA = 'TBTESTE'"};
}

(Conforme selecionada na Finalidade, utilize a tabela correspondente)


Agora Agor iremos informar a propriedade Código da sessão Chave Primaria da Leitura, esse campo só exibido após informar o Nome do DataServer

...

Para converter os dados da consulta em XML adicionaremos uma nova atividade em nosso fluxo Transformar Registro em XML, na propriedade tabela associaremos o valor da rmsReadRecordActivity1:



Para obter somente o dados do DataTable

...

selecione a opção IgnoreSchema na propriedade ModoXml na sessão Diversos dessa atividade:


Image Modified


Agora adicionaremos a atividade Gerar Exceção para exibir os dados do XML da etapa anterior

Nas propriedades dessa atividade associaremos o valor da

...

rmsRegistroXmlActivity1:

Image Modified


Agora basta Salvar e Executar o sistema gera uma Exceção e em sua mensagem exibe os dados os dados da tabela

...

dinâmica comprovante que a consulta foi realizada com sucesso.

Image Modified