Produto | : | Framework Versão: 11.80 |
Processo | : | Cubos . NET |
Subprocesso | : | Stored Procedure |
Data da publicação | : | 21/06/2013 |
Introdução
Este documento tem por objetivo orientar na criação de cubo.net com a execução de Stored Procedure
Desenvolvimento/Procedimento
A execução de stored procedure está disponível apenas na versão 11.80, por se tratar de uma sugestão de melhoria. Realizei os seguintes passos:
Criei uma tabela com o nome Cliente em meu banco de dados da seguinte estrutura:
CREATE TABLE Cliente
(
CodCliente IN NOT NULL
Nome varchar(50),
CPF VARCHAR(11) NULL,
DataCadastro datetime NOT NULL DEFAUTT (getdate()),
Cidade varchar(20) NULL,
UF VARCHAR(2) NULL,
Pais varchar(20) DEFAULT ('Brasil')
)
Feito esse procedimento, criei uma stored procedure chamada SPTESTE, conforme abaixo, onde ao executá-la, serão inseridas na tabela Cliente nos campos Codcliente,Nome,CPF,Cidade,UF, passados pelos parâmetros @CODCLIENTE,@NOME,@CPF,@CIDADE,@UF :
CREATE PROCEDURE SPTESTE
@NOME VARCHAR(50),
@CPFVARCAHR(11),
@CIDADE VARCAHR(20),
@UF VARCHAR (2),
@PAIS VARCHAR (20),
@CODCLIENTE INT
as
INSERT INTO CLIENTE(Codcliente,Nome,CPF,Cidade,UF)
VALUES
(@CODCLIENTE,@NOME,@CPF,@CIDADE,@UF)
GO
Criadas as tabelas e também a procedure, acessei a nova MDI na versão 11.80, e através do menu Gestão\Visões de dados, e criei uma consulta SQL com o nome de SPTESTE, onde realizei a seguinte consulta
SELECT * FROM Cliente, conforme abaixo:
Como não existe registro na tabela, o resultado da consulta não retornou informações:
Após salvar a consulta, cliquei no botão Configurar\Stored Procedure, aqui no botão Incluir Nova Stored Porcedure localizei a SPTESTE. Repare que você pode executar a Procedure antes ou depois da execução da consulta SQL, nesse exemplo, optei por executar a SP antes da consulta:
Ao clicar em Executar, no cadastro da consulta SQL, é aberta a tela de execução da consulta juntamente com os Parâmetros exigidos para a execução da Procedure:
Ao informar todos e logo após clicar em executar, a Stored Procedure é executada antes da execução da Sentença, conforme configurado acima, alimentando a tabela Cliente:
Abaixo o resultado da execução da Procedure e após a tabela preenchida:
Resultado da consulta no Banco:
Criação do cubo TESTE PROCEDURE já relacionado com a consulta acima criada:
Ao editar o cubo, como configurei para a Procedure ser executada antes da execução da consulta, é apresentada a tela para passagem dos parâmetros:
Após executar o processo, configurei o Layout do meu cubo da seguinte forma, repare que a tabela de cliente foi preenchida com os novos parâmetros que passei e o resultado foi exibido juntamente com os registros já existentes na tabela Cliente:
Resultado consulta no Banco após atualização do cubo:
Informações complementares:
Só é possível cadastrar uma consulta SQL relacionada com uma Procedure que nela possua parâmetros na versão 11.80. Nas versões anteriores(11.40, 11.50) só é possível associar a uma consulta SQL uma Procedure sem parâmetros.
Para maiores informações:
COMUNIDADE @FRAMEWORK
Canais de Atendimento:
Chamado: Através do Portal Totvs www.suporte.totvs.com.br
Telefônico: 4003-0015 Escolhendo as opções 2 – (Software), 2 – (Suporte Técnico), 3 – (RM), 9 – (Demais Áreas), 4 – (BI) e 3 – (Gerador de Relatórios e Planilha);