Padrão de Desenvolvimento SPIE (Spekx Programing Interface Exit)

Slides:



Advertisements
Apresentações semelhantes
O Comando DROP INDEX Para eliminar um índice definido sobre uma tabela, utilize: Drop Index on ; Ex: No Access: Drop Index X on.
Advertisements

Estudo de Caso, modelo Oracle 10g
Gerenciamento de Dados e Informação Estudo de caso – PL/SQL
Banco de Dados Prof. Antonio.
Java Básico Orientação a Objeto Marco Antonio Software Architect Fev/2008.
SQL Renata Viegas.
Triggers Renata Viegas.
Banco de Dados SQL TRIGGERS (Gatilhos)
SISTEMAS DE INFORMAÇÃO Sistemas de Bancos de Dados 2º Semestre – 2010 Pedro Antonio Galvão Junior Fone:
SISTEMAS DE INFORMAÇÃO Sistemas de Bancos de Dados 2º Semestre – 2010 Pedro Antonio Galvão Junior Fone:
SISTEMAS DE INFORMAÇÃO Sistemas de Bancos de Dados 2º Semestre – 2010 Pedro Antonio Galvão Junior Fone:
Projeto e Organização de BD
Maurício Edgar Stivanello
Gerenciamento de Configuração
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
Rafael Pinto Frederico Corrêa
Material III-Bimestre Wagner Santos C. de Jesus
MySQL Gerdson de Araújo Silva Universidade Federal de Alagoas Maceió-AL, 21 de maio de 2009.
Banco de dados Profª Kelly Medeiros.
Nota fiscal eletrônica de serviço
NF-e (Federal) CC-e - Carta de Correção Eletrônica Webinar versão 2.0
Paradigmas de programação
Equipe de monitoria Aula prática 4.  Tipos  Tabela de Objetos  Herança  Métodos  Referências  Coleções  Composição de coleções  Conectividade.
Aula R Prof. Naércio Filho Técnico em Informática
SQL Server 2012 Tipos de Dados e Tabelas
PL/SQL, Procedures e Funções
Design Patterns / Acesso ao banco de dados (java.sql)
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Equipe de monitoria Aula prática 3.  Caso de estudo  Igualando situações  Cursor  Function  Procedure  Trigger  Package  Surpresa...
Equipe de monitoria Aula prática 4
Primeira aula de PL/SQL Parte II
Especialização em Tecnologia da Informação
Oracle 9i: SQL e PL/SQL Bruno Celso Cunha de Freitas
III – O Modelo OR Estudo de Caso, modelo Oracle 10g.
Monitoria GDI Aula Prática
Desenvolvendo um script SQL
Rafael Lucio, Desenvolvedor Jr Padrão Informática e Assessor de TI Secretaria Municipal da Saúde;
VIEW - VISÕES Professor Esp. Diego André Sant’Ana
Banco de dados.
Linguagem de Definição de Dados
PostGres: Um Banco de Dados Orientado a Objetos
Java Kickstart, day 2 Semelhanças com linguagem C.
Bancos de Dados Estrutura e Funcionamento de um SGBD
Monitoria GDI Aula Prática Aula 2: PL 1. Estudo de caso - continuação Pegar arquivo GDI.zip em Descompactar arquivo: o criacaoTabelas.SQL.
Projeto de Sistemas de Informação Prof. Schneider Oracle Object-Relational.
Aon Affinity Unis: Módulo Pendências – Manual do Usuário.
SQL Server Constraint UNIQUE.
Triggers (Gatilhos) Professor Esp. Diego André Sant’Ana
SCC Bancos de Dados e Suas Aplicações
SQLite Banco de Dados II.
Ricardo Ferreira Schiavo
Estruturação Projetos
III – Oracle 9i Indexação. Índices Baseados em Funções É um índice baseado no valor de retorno de uma expressão ou função –A função pode ser um método.
Banco de Dados I I Comandos SQL
Equipe de monitoria Aula prática 4.  Tipos  Tabela de Objetos  Herança  Métodos  Referências  Coleções  Composição de coleções  Conectividade.
Tipos e Subtipos CREATE TYPE Pessoa_ty AS OBJECT ( cpf NUMBER, nome VARCHAR2(30), endereço VARCHAR2(100)) NOT FINAL; CRIANDO SUBTIPOS CREATE TYPE Estudante_ty.
Daniel Paulo Banco de dados: é uma coleção/conjunto de registros relacionados.  Exemplo: O banco de dados de uma Universidade.
Aplicação - Plataforma de Autoria - Natan. Resumo - Entendimento Ferramenta para desenvolvimento de conteúdo para tv digital, baseada em componentes e.
Exemplo de LSMW com Batch-Input
VBA – Visual Basic para Aplicativos
Linguagem de definição de dados - SQL
Banco de Dados -Aprendendo conceitos -Usando o SQL Conf para:
ASP.NET Passo a Passo Criando um CRUD Conteúdo do Capítulo 1. Acessar bancos de dados SQL Server 2. Utilizar o GridView 3. Utilizar o DetailView 4. Implementar.
Banco de Dados II Prof: Márcio Soussa Curso de Sistemas de Informação Faculdades Jorge Amado.
Gestão da Tecnologia da Informação Fundamentos de Sistemas de Banco de Dados Faculdade de Tecnologia Senac Jaraguá do Sul.
2/6/2016 José Antônio da Cunha - CEFET - RN1 Programação de Banco de Dados Funções.
Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop, Alter, Insert, Delete, Update)
Kelyn Schenatto. Definição Linguagem de Consulta Estruturada (Structured Query Language); Desenvolvida inicialmente nos anos 70 nos laboratórios da IBM.
Índices - Full Text Searching IFRN José Antonio da Cunha.
Atividade ASP.NET Portal da Memoria Atividade Desenvolver uma aplicação ASP.NET com funcionalidade similar à existente no site centenário.ifrn.edu.br utilizando.
Transcrição da apresentação:

Padrão de Desenvolvimento SPIE (Spekx Programing Interface Exit) versão SPEKX 6.03.04

O que é o SPIE (Spekx Programing Interface Exit)? Componente no qual permite integrar programas e bancos de dados externos a Plataforma SPEKX, desenvolvidos na linguagem PL/SQL para executar funcionalidades ilimitadas em determinados pontos do workflow. Estes programas podem ser executados ainda, nos eventos do formulário eletrônico, de forma transparente ao usuário.

Objetivo Esse material tem por Objetivo: 1 - Apresentar a Estrutura Física do Componente “Rotinas Externas SPEKX”, possibilitando ao Analista/Desenvolvedor optar pela melhor forma de implementação de suas Rotinas; 2 - Apresentar ao Analista/Desenvolvedor o Padrão SPIE de Desenvolvimento, facilitando e otimizando a manutenção/evolução de Programas pelos próprios criadores ou por outros Desenvolvedores SPEKX; 3 - Apresentar ao Analista/Desenvolvedor a Biblioteca de Funções Reutilizáveis SPEKX, facilitando e otimizando o Desenvolvimento de novos Programas utilizados pelo Componente; 4 - Modelos de Solicitação de Rotinas;

1. Estrutura Física – Rotinas Externas SPEKX Configuração das Rotinas Externas na Plataforma Cadastro de Rotinas Externas, disponibilizado no Menu TOOLS SPEKX.

1. Estrutura Física – Rotinas Externas SPEKX O SPEKX disponibiliza a configuração da Rotina Externa nos seguintes pontos da Plataforma: 1.1 No Tipo de Item Rotinas Externas Domínio: Rotina Externa Cont.Inicial: Label Botão

1. Estrutura Física – Rotinas Externas SPEKX O SPEKX disponibiliza a configuração da Rotina Externa nos seguintes pontos da Plataforma : 1.2 Nos Tipos de Item: TEXTO, ÁREA de TEXTO, REFERÊNCIAS e NÚMERO Evento Change dos Itens.

1. Estrutura Física – Rotinas Externas SPEKX O SPEKX disponibiliza a configuração da Rotina Externa nos seguintes pontos da Plataforma : 1.3 Nas Diretivas de Criar Documento, Alterar Dados, Complementação, Migração, User Changed e Propriedade Tempo-limite. Nota: Na Diretiva Criar Documento, é disponibilizada apenas a configuração Depois de Salvar o Documento.

2. Padrão SPIE de Desenvolvimento Os objetos de Banco de Dados configurados no componente Rotinas Externas SPEKX, devem ser desenvolvidos respeitando o seguinte Padrão de Desenvolvimento: Nomenclaturas Para melhor Gestão da Plataforma, utiliza-se um Padrão de Nomenclaturas para os objetos SPIE. As descrições são compostas por: - Prefixo Identificador do Objeto; - Descrição Identificadora SPIE; - Descrição Identificadora do Cliente; - Descrição Lógica do Objeto; Ex.: KSP_SPIE_ELO_CALCULA_SALDO_DISPONIVEL. Package SPIE de cálculo do saldo disponível. Cliente ELO. TSP_SPIE_ELO_AUX_SALDO_DISPONIVEL. Tabela SPIE que armazena o valor de cálculo do saldo disponível no Documento. Cliente ELO.

2. Padrão SPIE de Desenvolvimento 2.1. Packages Nomenclatura KSP_SPIE_+[ Descrição Identificadora do Cliente ]_[ Descrição Lógica da Package ]; Cabeçalho Identificador da Package Utilizado para catalogar e historificar os códigos que compõem a Package. Referência para futuras manutenções/evoluções das Rotinas. create or replace package body ksp_spie_elo_funcionalidade is /* ******************************************************************************* Descrição Funcional da Package; Síntese funcional de Rotinas (Procedures, Functions); Informações de Apoio à Funcionalidade; ********************************************************************************* * Histórico de Revisão: * -------------------------- * Data | Versão | Autor | Descrição * ======================================================================= ******************************************************************************* */

2. Padrão SPIE de Desenvolvimento 2.1. Packages Variáveis Globais SPEKX O componente Rotinas Externas permite a utilização das Variáveis Globais SPEKX em seus Programas. Declarações A Package deve conter em suas Declarações, as seguintes variáveis: W_USER VARCHAR2(30) := KSP_UWB.GET_COOKIE ('USER'); Variável que armazena o Usuário Logado no SPEKX. W_ENTI VARCHAR2(10) := KSP_UWB.GET_COOKIE (‘ENTI’); Variável que armazena a Entidade (Cliente) SPEKX. W_LING VARCHAR2(2) := KSP_UWB.GET_COOKIE (‘LING'); Variável que armazena o Idioma utilizado na Plataforma SPEKX.

2. Padrão SPIE de Desenvolvimento 2.1. Packages Variáveis Globais SPEKX O componente Rotinas Externas permite a utilização das Variáveis Globais SPEKX em seus Programas. Utilização W_USER Utilizada para Atualizar as Tabelas SPEKX, onde a Rotina Externa efetua inclusões / alterações. Ex.: update tsp_mdoc_template_item set ds_valu_item = replace (w_ds_valu_item,','), cd_user_mntn = W_USER, dt_user_mntn = SYSDATE where id_enti_clie = 9 and id_serv = 21 and id_docu = 50 and id_moob = w_id_moob_pai and sq_tmpd = w_sq_tmpd and sq_item = w_sq_item ;

2. Padrão SPIE de Desenvolvimento 2.1. Packages Variáveis Globais SPEKX O componente Rotinas Externas permite a utilização das Variáveis Globais SPEKX em seus Programas. Utilização W_ENTI Utilizada para Atualizar as Tabelas SPEKX, onde a Rotina Externa efetua inclusões. Utilizada para indexar os filtros utilizados nos Cursores da Rotina. Valor W_ENTI = Parâmetro p_id_enti_clie. Ex.: Cursor c_moob_pai is select id_moob_orig from tsp_movimento_documento where id_enti_clie=W_ENTI and id_serv= 27 and id_docu=55 and id_moob=p_id_moob;

2. Padrão SPIE de Desenvolvimento 2.1. Packages Variáveis Globais SPEKX Utilização W_LING Utilizada para tradução de termos contidos nas Rotinas Externas. Utilizada em conjunto com a Função de tradução SPEKX - KSP_UPL.TRAD. Ex.: htp.print(' <script language="JavaScript"> alert(“KSP_UPL.TRAD(‘Valor Informado Ultrapassa o Saldo Atual !’,W_LING)"); top.window.close(); </script>');

2. Padrão SPIE de Desenvolvimento 2.2. Procedures Nomenclatura É aconselhável utilizar nomes que identifiquem a funcionalidade da Procedure. Cabeçalho Identificador da Procedure Utilizado para melhor entendimento da Estrutura Desenvolvida na Rotina Externa. procedure rct_valor_contratado(p_id_enti_clie in number, p_id_serv in number, p_id_docu in number, p_id_moob in number, p_id_wkfl in number) ; /* ******************************************************************************* Síntese funcional da Procedure; Incidências de chamada; Descrição da funcionalidade; ******************************************************************************* */

2. Padrão SPIE de Desenvolvimento 2.2. Procedures Declarações Padrão de Nomenclatura utilizado para Declarações da Procedure. Parâmetros Prefixo P__ + [ Descrição Lógica do Parâmetro ]. Tipo da Variável Na utilização de Parâmetros que armazenam informações do Banco de Dados, é utilizado o %TYPE da coluna na sua declaração. Ex.: procedure valida_saldo_criacao( p_id_enti_clie in tsp_entidade.id_enti%type, p_id_serv n tsp_servico.id_serv%type, p_id_docu in tsp_documento.id_docu%type, p_id_moob in tsp_movimento_documento.id_moob%type) ;

2. Padrão SPIE de Desenvolvimento 2.2. Procedures Parâmetros Pré-Definidos A Package.Procedure de StartUp da Rotina Externa, por Padrão, deve receber os seguintes Parâmetros: Rotina Utilizada pelo Tipo de Item Rotinas Externas Procedure valida_saldo_criacao( p_id_enti_clie in tsp_entidade.id_enti%type, p_id_serv n tsp_servico.id_serv%type, p_id_docu in tsp_documento.id_docu%type, p_id_moob in tsp_movimento_documento.id_moob%type);

2. Padrão SPIE de Desenvolvimento 2.2. Procedures Parâmetros Pré-Definidos A Package.Procedure de StartUp da Rotina Externa, por Padrão, deve receber os seguintes Parâmetros: Rotina Utilizada no Evento Change nos Tipos de Item Texto, Área de Texto e Referências Procedure valida_saldo_criacao( p_id_enti_clie in tsp_entidade.id_enti%type, p_id_serv n tsp_servico.id_serv%type, p_id_docu in tsp_documento.id_docu%type, p_id_moob in tsp_movimento_documento.id_moob%type, p_valor in varchar2(4000) ) ; * p_valor: Valor do Item configurado.

2. Padrão SPIE de Desenvolvimento 2.2. Procedures Parâmetros Pré-Definidos A Package.Procedure de StartUp da Rotina Externa, por Padrão, deve receber os seguintes Parâmetros: Rotina Utilizada nas Diretivas de Criar Documento, Alterar Dados, Complementação e Migração Procedure valida_saldo_criacao( p_id_enti_clie in tsp_entidade.id_enti%type, p_id_serv n tsp_servico.id_serv%type, p_id_docu in tsp_documento.id_docu%type, p_id_moob in tsp_movimento_documento.id_moob%type, p_id_wkfl in tsp_workflow.id_wkfl%type ) ; * p_id_wkfl: Identificação do workflow (atividade). Validação de Troca de Status.

2. Padrão SPIE de Desenvolvimento 2.2. Procedures Declarações Padrão de Nomenclatura utilizado para Declarações da Procedure. Variável Prefixo W_ + [ Descrição Lógica da Variável ]. Tipo da Variável Na utilização de variáveis que armazenam informações do Banco de Dados, é utilizado o %TYPE da coluna na sua declaração. Ex.: w_id_stat TSP_DOCUMENTO_STATUS.ID_STAT%TYPE; Type w_documento is Record (id_serv TSP_SERVICO.ID_SERV%TYPE, id_docu TSP_DOCUMENTO.ID_DOCU%TYPE, ds_labl_docu TSP_DOCUMENTO.ID_MOOB %TYPE );

2. Padrão SPIE de Desenvolvimento 2.2. Procedures Declarações Padrão de Nomenclatura utilizado para Declarações da Procedure. Cursor Prefixo C_ + [Descrição Lógica do Cursor]. Parâmetros do Cursor Prefixo PI_ + [Descrição Lógica do Parâmetro]. Na utilização de parâmetros que armazenam informações do Banco de Dados, é utilizado o %TYPE da coluna na sua declaração. Ex.: Cursor c_moob_pai( pi_id_serv tsp_servico.id_serv%type, pi_id_docu tsp_documento.id_docu%type, pi_id_moob tsp_movimento_documento.id_moob%type ) is Select id_moob_orig from tsp_movimento_documento where id_enti_clie = W_ENTI ...

2. Padrão SPIE de Desenvolvimento 2.3. Views Nomenclatura VSP_SPIE_+[ Descrição Identificadora do Cliente ]_[ Descrição Lógica da View ]; Cabeçalho Identificador da View Utilizado para melhor entendimento da Estrutura Desenvolvida na Rotina Externa. CREATE OR REPLACE VIEW VSP_SPIE_ELO_DOCUMENTO_PAI AS SELECT DISTINCT A.ID_ENTI_CLIE, B.ID_SERV, B.ID_DOCU, A.ID_MOOB ... /* ******************************************************************************* Definição de Dados da View; Incidências de chamada; Observações; ******************************************************************************* */

2. Padrão SPIE de Desenvolvimento 2.4. Tabelas Nomenclatura TSP_SPIE_+[ Descrição Identificadora do Cliente ]_[ Descrição Lógica da Tabela ]; Comentários da Tabela Utilizado para melhor entendimento da Estrutura Desenvolvida na Rotina Externa. -- Add comments to the table comment on table TSP_MDOC_APROPRIA_ATIVO_DET_MV is 'Tabela que armazena o Relacionamento dos Itens das Estimativas...'; -- Add comments to the columns comment on column TSP_MDOC_APROPRIA_ATIVO_DET_MV.ID_ENTI_CLIE is 'Identificador da Entidade'; comment on column TSP_MDOC_APROPRIA_ATIVO_DET_MV.ID_SERV is 'Identificador do Serviço';

Utilizando Funções SPEKX O Componente Rotinas Externas, por Conta de sua Estrutura, permite a Utilização de Funções Específicas da Plataforma SPEKX. Por essa condição, o Analista Desenvolvedor assume TOTAL AUTONOMIA no Desenvolvimento de Rotinas podendo: Utilizar Funções SPEKX de Tratativas de Dados; Utilizar Componentes e Funções SPEKX de Tratativas de Datas; Desenvolver Formulários de Interatividade com o Usuário, a partir do Componente Rotinas Externas; Disparo de Alertas e Mensagens ao Usuário a partir do Componente, conforme a Definição da Funcionalidade; Intervir nos Dados da Plataforma;

Notas Notas que devem ser levadas em consideração no Desenvolvimento de programas utilizadas no Componente Rotinas Externas: Identar as Estruturas Desenvolvidas, para maior clareza e Entendimento do Código; Utilizar Comentários nos trechos de Código que Tratem Detalhes da Funcionalidade; Criar as Rotinas, utilizando Nomenclaturas que facilitem seu Entendimento Funcional; Se atentar às Rotinas que Operam Intervenções nos Dados do Documento/Plataforma; Procurar sempre o Desenvolvimento Lógico, Claro e Objetivo;

3 - Biblioteca de Funções Reutilizáveis SPEKX Para apoio ao Desenvolvimento, Especificamos as Principais Funções Reutilizáveis da Plataforma. As Funções estão organizadas em 3 Grupos: 3.1- Funções de Tratamento e Conversão de Dados; 3.2- Funções de Tratamento e Conversão de Data / Hora; 3.3- Funções de Interface; As Especificações são compostas por: * Especificação; * Modelo de Utilização; * Observações;

3.1 – Funções de Tratamento e Conversão de Dados function array_to_char ( v_array in ksp_types.ident_arr, v_sep in varchar2 default ',') return varchar2; W_VAR := ksp_upl.array_to_char(P_VAR,[SEPARADOR]); Função de conversão de variável array para texto. function char_to_array ( v_string in varchar2, v_sep in varchar2 default ',') return ksp_types.ident_arr ; W_VAR := ksp_upl.char_to_array(P_VAR,[SEPARADOR]); Função de conversão de variável texto para array.

3.1 – Funções de Tratamento e Conversão de Dados function nr_to_char (p_valr in number, p_casdec in number default 2) return varchar2; W_VAR := ksp_upl.nr_to_char(P_VAR,[qtd. casas decimais]); Função de conversão de variável numérica para texto. function char_to_nr (p_valr in varchar2) return number; W_VAR := ksp_upl.char_to_nr(P_VAR); Função de conversão de variável texto para número.

3.2 – Funções de Tratamento e Conversão de Data/Hora function dt_to_char (p_date in date) return varchar2; W_VAR := ksp_upl.dt_to_char(P_VAR); Função de conversão de variável data para texto. function char_to_dt (p_char in varchar2) return date; W_VAR := ksp_upl.char_to_dt(P_VAR); Função de conversão de variável texto para data.

3.2 – Funções de Tratamento e Conversão de Data/Hora function dth_to_char (p_date in date) return varchar2; W_VAR := ksp_upl.dt_to_char(P_VAR); Função de conversão de variável data/hora para texto. function char_to_dth (p_char in varchar2) return date; W_VAR := ksp_upl.char_to_dt(P_VAR); Função de conversão de variável texto para data/hora.

3.3 – Funções de Interface function trad (p_texto in varchar2, p_ling in varchar2,) return varchar2; W_VAR := ksp_upl.trad(P_VAR, W_LING); Função de Tradução Termos da Plataforma SPEKX.

Tel/Fax: (11) 5507-3274 / (11) 5506-1165 e- mail: sup_tec@spekx.com.br Dúvidas na utilização e sugestões, favor entrar em contato: Tel/Fax: (11) 5507-3274 / (11) 5506-1165 e- mail: sup_tec@spekx.com.br