 | Nível: Intermediário Wei Liu, Software Engineer, IBM
11/Set/2008 Atualizado 02/Jul/2009 O IBM® InfoSphere® Data Architect (IDA) (antigo
Rational® Data Architect) está ganhando terreno como uma ferramenta
abrangente que ajuda as organizações a promover uma compreensão completa de sua
arquitetura de informações corporativa. Na medida em que mais pessoas usam o IDA,
há uma necessidade crescente de alguns clientes estender o IDA para atender seus
requisitos individuais de modelagem e integração de dados. Esta série em duas
partes mostra como estender os modelos, visão de propriedades, modelos de
relatórios e regras de validação do IDA. Na Parte 1
você aprendeu como programaticamente percorrer e modificar modelos IDA, e como adicionar
e exibir propriedades personalizadas. Na Parte 2, aprenda como gerar relatórios personalizados
e como adicionar suas próprias regras de validação para modelos IDA. [02 Jul 2009: Este artigo
foi atualizado para refletir que a GUI para a personalização de relatórios BIRT foi
modificada para melhorar seu desempenho. Isto é mostrado na seção
Gerar relatórios com modelo personalizado usando o
BIRT.--Ed.]
Apresentação
O IBM InfoSphere Data Architect (IDA) é um ambiente de desenvolvimento
abrangente para modelagem e integração de dados. O IDA permite aos usuários
descobrir, modelar, visualizar e relacionar ativos de dados diversificados e
distribuídos. O IDA é uma oferta de gerenciamento de dados integrados da IBM
e está firmemente integrado aos produtos Optim®, Rational e InfoSphere
construídos usando o Eclipse. O IDA suporta modelagem de dados lógicos, físicos,
de glossário, armazenamento, domínio e de integração. Na medida em que mais
clientes corporativos usam o IDA, há uma necessidade crescente de estender o
IDA para atender seus requisitos individuais de modelagem e integração de dados.
 | |
Mudança no nome do produto
Em 16 de dezembro de 2008, a IBM anunciou que, a partir da Versão 7.5.1,
o Rational Data Architect seria renomeado como
InfoSphereData Architect
para incluir suas funções no InfoSphere Foundation Tools.
|
|
Como mencionado acima, o IDA é baseado em Eclipse e, portanto, altamente
extensível devido a seu próprio projeto. Nesta série, aprenda mais sobre os
pontos de extensão, APIs e recursos disponibilizados com o IDA que é possível
usar para estender o IDA. Veja como estender o IDA para:
- Programaticamente percorrer e modificar modelos IDA (Parte
1)
- Adicionar novas propriedades e exibi-las na Visão de Propriedades (Parte
1)
- Gerar modelos de relatórios personalizados (Parte 2)
- Adicionar regras de validação de modelos (Parte 2)
 |
O projeto Eclipse BIRT
O projeto BIRT faz parte da estrutura Eclipse que fornece infraestrutura
e ferramentas para projetar, desenvolver e implementar conteúdo de relatórios
a seus aplicativos Java®/J2EE. O BIRT tem dois componentes principais:
um designer de relatório e um componente de tempo de execução. O BIRT também
oferece um mecanismo de gráficos que permite acrescentar gráficos a seus aplicativos.
(Consulte Recursos para obter mais informações sobre o BIRT). |
|
Este artigo pressupõe que você tenha experiência no desenvolvimento de
plug-ins do Eclipse e conhecimento básico de projetos Eclipse EMF e BIRT. As
amostras de código fornecidas neste artigo são testadas no IDA 7.5.1 e 7.5.2
e no Eclipse 3.4.1 e 3.4.2.
Gere modelos de relatórios personalizados
usando o BIRT
Eles fornecem informações sobre o modelo como um todo ou parte dele: quer dizer,
uma lista de objetos e suas relações. Estas informações podem ser copiadas,
impressas e distribuídas como um documento físico. Relatórios também são
usados em muitas organizações para fornecer informações de conformidade. O
IDA fornece uma ampla gama de relatórios ou modelos integrados para seus
modelos lógicos, físicos, de glossário e de mapeamento. O BIRT foi integrado
e estendido para fornecer capacidades mais flexíveis de emissão e personalização
de relatórios desde o RDA 7003 (versão 7 fixpack 3). A emissão de relatórios
IDA usa o BIRT em combinação com o componente Open Data Access (ODA).
 |
O driver ODA e EMF ODA
O componente Open Data Access (ODA) é uma estrutura de acesso de dados aberta
e flexível que oferece um modo uniforme e escalável para recuperar dados de
fontes heterogêneas de dados corporativos. O BIRT fornece JDBC, XML, serviços
Web e suporte a arquivos simples, e também suporte ao uso de código para
obter acesso a outras fontes de dados. O uso pelo BIRT da estrutura ODA
permite que qualquer pessoa construa suporte a novas interfaces de usuário,
e suporte de tempo de execução para qualquer tipo de dados tabulados. Usando
a estrutura da extensão ODA, os desenvolvedores de Eclipse podem criar novos
tipos de componentes de dados que acessam dados de fontes de dados personalizadas,
através de uma interface de usuário que é semelhante às fontes de dados BIRT padronizadas.
(Consulte Recursos para obter mais informações sobre o ODA).
O IDA usa o driver EMF ODA desenvolvido na IBM para permitir a construção de
consultas complexas que são executadas diretamente contra uma fonte de EMF,
como modelos de IDA. Usando o driver EMF ODA, instâncias do modelo EMF ou
metamodelos de Ecore podem ser definidos como uma fonte de dados para fornecer
informações sobre a estrutura do modelo na hora de projetar o relatório. No
tempo de execução (ou de visualização), instâncias do modelo devem ser vinculadas
como uma fonte de dados ao relatório para que o relatório seja exibido.
|
|
Nesta seção, você irá:
- Criar um relatório e especificar uma fonte de dados
- Criar um conjunto de dados de Tabelas que é usado para exibir tabelas no
relatório
- Gerar uma amostra de relatório a partir de relatórios IDA existentes
- Personalizar o relatório para adicionar uma coluna que mostra o método de máscara
usado em uma coluna da tabela
Aprender como o driver EMF ODA funciona ao completar estas etapas. Então, é
possível personalizar os relatórios como você quiser usando o BIRT designer.
Etapa 1. Crie um novo relatório e especifique
uma fonte de dados
Siga estas etapas para criar um novo design de relatório BIRT com uma fonte de
dados EMF:
- Abra a perspectiva do Report Design.
- Crie um novo relatório usando Arquivo > Novo >
Relatório.
- Selecione uma pasta-pai e um modelo de relatório de Listagem Simples no novo
assistente de relatório, e clique em Concluir.
- Clique com o botão direito na pasta Fontes de dados no Data Explorer e
selecione Nova Fonte de Dados.
- Selecione Fonte de Dados EMF e digite
SAMPLE Data Source na
janela Nova Fonte de Dados, como mostrado na Figura 1.
Figura 1. Caixa de
diálogo da nova fonte de dados
- Clique em Avançar.
- Selecione Adicionar para adicionar o SAMPLE.dbm (criado na Parte 1 desta
série) como a instância de dados EMF, como mostrado na Figura 2.
Figura 2. Adicione SAMPLE.dbm como
a instância de dados EMF
- Clique em Concluir.
O modelo SAMPLE, que é uma instância de modelo físico, é usado na etapa 4
acima como a fonte de dados. Como já mencionado, também é possível definir
os metamodelos como fonte de dados ao projetar um relatório.
Etapa 2: Crie um conjunto de dados de Tabelas
Siga estas etapas para criar um conjunto de dados de Tabelas que obtém todas
as tabelas de um modelo:
- Clique com o botão direito na pasta Conjuntos de Dados no Data Explorer e
selecione Novo Conjunto de Dados.
- Digite
Tables Data Set como o nome do conjunto
de dados, e clique em
Avançar.
- Clique em Avançar na página de Parâmetros de Consulta.
- Na página Mapeamento de Linhas, clique na seta suspensa e selecione sample.dbm,
como mostrado na Figura 3.
Figura 3. Selecione sample.dbm para
navegar na página de mapeamento de linhas
O banco de dados, esquema, índice,
tabela persistente, e objetos de coluna contidos no modelo SAMPLE são
então listados na área de Pesquisa. É possível ampliar objetos nesta
página e se familiarizar com a estrutura.
- Selecione qualquer uma das tabelas persistentes na área de Pesquisa, clique nos botões
> para adicionar expressões de consulta, e defina o tipo
de consulta como mostrado na Figura 4.
Figura 4. Defina a expressão de consulta
e digite de uma tabela persistente na página de mapeamento de linha
- Clique em Avançar.
- Na página Mapeamento de Colunas, clique na seta suspensa e selecione
SQLTables:PersistentTable, como mostrado na Figura 5.
Figura 5. Selecione a tabela persistente
para navegar na caixa de diálogo mapeamento de colunas
A estrutura de PersistentTable é preenchida.
- Selecione name:EString na área de Pesquisa, e clique no botão
> para adicioná-lo como uma consulta de coluna, como mostrado
na Figura 6.
Figura 6. Adicione o nome da tabela
persistente como uma consulta de coluna na caixa de diálogo mapeamento de colunas
- Clique em Concluir.
- Clique em Visualizar Resultados. Deve ser possível ver uma lista
de tabelas, como mostrado na Figura 7.
Figura 7. Resultado da visualização
do conjunto de dados
- Clique em OK para concluir. Deve ser possível ver a Fonte de Dados
SAMPLE e o Conjunto de Dados de Tabelas criados no Data Explorer, como mostrado na Figura 8.
Figura 8. A Fonte de Dados SAMPLE e
o Conjunto de Dados de Tabelas são criados
Etapa 3: Gere um relatório de amostra a partir
dos relatórios integrados no IDA
Os relatórios integrados fornecidos pelo IDA são categorizados pelo tipo de
modelo ao qual eles se referem. Abra o Report Explorer sob Geração de
Relatórios para ver uma lista completa de relatórios IDA integrados BIRT e
XSLT, como mostrado na Figura 9. Os relatórios com a extensão de arquivo .rptdesign
são relatórios BIRT. Aqueles com a extensão .xsl são relatórios XSLT clássicos.
Figura 9. Relatórios IDA integrados por
categoria de modelo
Por exemplo, se você tiver um modelo físico, é possível gerar um relatório
para todos os objetos do modelo, ou só para colunas, mapeamento de colunas,
ou espaços de tabela usando o Relatório de Modelo de Dados Físicos, Relatório
de Colunas, Relatório de Mapeamento de Colunas, ou Relatório de Espaços de Tabela são listados sob a categoria Modelo de Dados Físicos.
É necessário criar uma cópia de um relatório integrado para poder abri-lo. Por
exemplo, é possível abrir e olhar de perto a Fonte de Dados do Relatório de
Colunas seguindo estas etapas:
- Clique com o botão direito em Relatório de Coluna sob a categoria
Modelo de Dados Físicos, e Copie e Cole o conteúdo em um projeto.
- Abra a cópia do Relatório de Colunas com o Editor de Relatórios na
perspectiva do Report Design.
- Clique com o botão direito em Fonte de Dados no Data Explorer, e
selecione Editar. Você pode ver que Ecore.ecore, db2.ecore, schema.ecore,
tables.ecorem, e outros modelos ecore SQL estão listados como metamodelos
de Ecore para o design de relatório, como mostrado na Figura 10.
Figura 10. Os metamodelos de ecore
são definidos como fonte de dados em relatórios integrados
Siga estas etapas para configurar e gerar um relatório de colunas para o
modelo SAMPLE que você criou na Parte 1:
- Abra a Perspectiva de Dados, se ainda não estiver aberta.
- Clique em Executar > Relatório > Configurações de
Relatório.
- Clique com o botão direito em Relatório BIRT, e selecione Novo na caixa de diálogo
Configurações de Relatório.
- Digite o nome, defina Relatório de Coluna como um relatório Integrado, adicione SAMPLE.dbm como
Fonte de dados, e selecione o local e formato de saída, como mostrado na
Figura 11.
Figura 11. Configure um relatório
de coluna para o modelo SAMPLE
- Clique em Relatório para gerar um relatório.
Etapa 4: Personalize relatórios IDA
Frequentemente os clientes IDA têm requisitos especiais para o conteúdo e
formato de seus modelos de relatórios. O IDA integrou e estendeu o Eclipse
BIRT desde o IDA V7003 para permitir aos clientes personalizar relatórios
usando o BIRT designer para atender suas necessidades especiais. Como um
modelo lógico ou físico é uma abstração do sistema do mundo real, normalmente
ele é muito complicado, e consiste em diversos módulos e relações.
O IDA fornece vários relatórios integrados que podem ser usados como modelos
para ajudar a começar sua personalização. A lista de relatórios na
Figura 9 mostra pares de relatórios BIRT nos quais
um membro do par é rotulado como Em branco (como o Relatório de Modelo
de Dados Físicos, e o Relatório de Modelo de Dados Físicos Em Branco). Em
geral, relatórios como o Modelo de Dados Físicos e Relatórios de Coluna podem
ser aplicados diretamente a um modelo físico para gerar relatórios, enquanto
os relatórios em branco são usados como modelos para personalização. É
possível copiar e colar um relatório integrado com a extensão .rptdesign a
partir do Report Explorer, e então abrir a cópia no BIRT designer para exibir
o design do relatório. Se você abrir uma cópia do Relatório de Coluna, você
vai encontrar Fonte de Dados e Conjuntos de Dados já definidos, e também um
design de apresentação como mostrado na Figura 12. O Relatório de Coluna Em Branco só tem a Fonte de Dados e os Conjuntos de Dados definidos.
Figura 12. Relatório de Colunas
A parte da apresentação está vazia de forma que ela possa ser criada,
como mostrado na Figura 13.
Figura 13. Relatório de coluna
em branco
Como exemplo de personalização de relatório, é possível atualizar o relatório
de coluna para incluir o método de máscara, que foi adicionado como uma nova propriedade na Parte 1
desta série. É possível começar a personalização do relatório de coluna ou do relatório
de coluna em branco. Como é melhor manter a maioria das apresentações do relatório
de colunas, é mais rápido começar deste relatório.
- Copie o relatório de colunas, clique com o botão direito na pasta modelo
de dados físicos, e cole-o como um Relatório de Colunas com Privacidade (defina
o nome do arquivo como ColumnWithPrivacy.rptDesign e selecione uma pasta
na caixa de diálogo colar relatório), como mostrado na Figura 14.
Figura 14. Relatório de Colunas
criado com Privacidade a partir do Relatório de Colunas
- Clique duas vezes em Relatório de Colunas com Privacidade para
abri-lo no BIRT report designer.
Se você salvou a propriedade do método de máscara como uma entrada eAnnotation na Parte 1
desta série, é necessário acrescentá-la ao conjunto de dados da Coluna para exibi-la
em seu relatório.
Para criar um novo mapeamento de coluna para o conjunto de dados da Coluna,
complete as seguintes etapas:
- Clique com o botão direito em Conjunto de dados da coluna no Data
Explorer e selecione Editar como mostrado na Figura 15.
Figura 15. Edite o Conjunto de
dados da coluna
- Selecione Mapeamento de Colunas, clique na seta suspensa e
selecione SQLTables:Column para navegar na caixa de diálogo Editar
Conjunto de Dados. A árvore de navegação é exibida.
- Expanda a árvore de navegação, selecione
eAnnotations/details/value, e clique no botão
> no centro.
- Digite Masking Method como nome, e acrescente [1]
à consulta, como mostrado na Figura 16.
Figura 16. Adicione o mapeamento
de colunas usando a caixa de diálogo Editar Conjunto de Dados - Coluna
- Clique em Visualizar Resultados para visualizar a coluna
recém-adicionada, e clique em OK. O mapeamento de colunas
Método de Máscara é criado para o conjunto de dados da Coluna, como mostrado na Figura 17.
Figura 17. O método de máscara é
criado no conjunto de dados de coluna
Siga estas etapas para adicionar um campo Método de Máscara ao relatório:
- Insira uma coluna à direita da coluna Documentação, como mostrado na
Figura 18.
Figura 18. Insira uma nova coluna
no relatório
- Arraste a recém-criada coluna Método de Máscara a partir do Data
Explorer, e solte-a na linha de detalhes da tabela da coluna inserida,
como mostrado na Figura 19.
Figura 19. Vincule o conjunto de
dados da coluna método de máscara ao relatório por arraste e solte
- Mude o rótulo da coluna inserida para Método de
Máscara.
- Clique em Arquivo > Salvar.
Ao gerar um relatório usando o Relatório de Colunas com Privacidade para o
modelo SAMPLE, você vê um campo de Método de Máscara e HASHING como o valor
da coluna BONUS, como mostrado na Figura 20.
Figura 20. Relatório de colunas
com a coluna método de máscara
Adicionar regras de validação
A qualquer momento durante a construção de um modelo de dados, é possível
analisar o modelo para verificar sua conformidade com as restrições definidas.
Com base na estrutura de validação EMF, o IDA fornece restrições integradas
que não só asseguram a integridade do modelo, mas também ajudam a melhorar a
qualidade do modelo fazendo sugestões de design e melhores práticas. Nesta
seção, aprenda como estender as restrições integradas do IDA para adicionar
uma nova restrição, que verifica a existência de um Método de máscara quando
uma coluna é definida para dados de privacidade.
Estrutura de validação EMF
A estrutura de validação EMF fornece suporte para as definições de restrição
de qualquer metamodelo EMF (restrições em lote e ao vivo), algoritmos
personalizados de percurso de modelo, restrição de análise para linguagens,
vínculos de restrição configuráveis para contextos de aplicativo, e listeners
de validação. (Consulte Recursos para obter mais
informações sobre a estrutura de validação Eclipse EMF).
Restrições integradas IDA
A validação de modelos IDA usa e estende a estrutura de validação EMF. O IDA
fornece restrições integradas abrangentes para verificar a sintaxe do modelo
e dar sugestões de design para modelos lógicos e físicos, como mostrado na
Figura 21.
Figura 21. Restrições integradas
IDA para verificar a sintaxe do modelo e dar sugestões de
design
É possível optar por ativar ou desativar quaisquer das restrições via caixa
de diálogo Preferências ou Analisar Modelo. Ao clicar com o botão direito em
um banco de dados ou esquema de um modelo de dados físicos ou um pacote de
um modelo de dados lógicos do Data Project Explorer e selecionar Analisar Modelo, os
resultados da validação sobre as restrições ativadas são exibidos na visão de
Problemas, como mostrado na Figura 22.
Figura 22. Os resultados da
análise do modelo são exibidos na visão de Problemas
Adicione uma nova restrição
O ponto de extensão org.eclipse.emf.validation.constraintProviders é usado
para adicionar restrições à estrutura de validação do modelo (consulte
Recursos para obter mais informações sobre este
ponto de extensão). As restrições são agrupadas em categorias hierarquicamente
estruturadas. Uma categoria de restrição define os seguintes atributos:
-
id—Identificador da categoria. O ID é um nome
hierárquico, delimitado por travessões, relativo ao ID do elemento contido na categoria
(se houver).
- nome—O nome localizado da categoria.
- obrigatória—Indica se a categoria é obrigatória.
O IDA definiu as categorias de restrição mostradas na Lista 1.
Lista 1. Categorias de restrição definidas no IDA
<extension
id="com.ibm.datatools.validation"
name="Datatools Constraint Provider"
point="org.eclipse.emf.validation.constraintProviders">
<category
name="%VALIDATION.CATEGORY.PHYSICAL"
id="com.ibm.datatools.validation.physicalmodel">
<category
name="%VALIDATION.CATEGORY.SYNTAX"
id="syntax">
<category
name="%VALIDATION.CATEGORY.DATATYPE"
id="datatypes">
%VALIDATION.CATEGORY.DATATYPE_DESC
</category>
<category
name="%VALIDATION.CATEGORY.SQL"
id="sql_statement">
%VALIDATION.CATEGORY.SQL_DESC
</category>
<category
name="%VALIDATION.CATEGORY.OBJECTNAME"
id="object_names">
%VALIDATION.CATEGORY.OBJECTNAME_DESC
</category>
<category
name="%VALIDATION.CATEGORY.KEY_CONSTRAINT_INDEX"
id="key_constraints">
%VALIDATION.CATEGORY.KEY_CONSTRAINT_INDEX_DESC
</category>
<category
name="%VALIDATION.CATEGORY.IDENTITY_COLUMN"
id="identity_columns">
%VALIDATION.CATEGORY.IDENTITY_COLUMN_DESC
</category>
%VALIDATION.CATEGORY.SYNTAX_DESC
</category>
%VALIDATION.CATEGORY.PHYSICAL_DESC
</category>
</extension>
|
Os provedores de restrição visam um ou mais EPackages por espaço para nome URI.
Um grupo de restrições declara as categorias das quais elas são membros. Cada
restrição tem vários metadados associados a ela. Os seguintes atributos são
usados para definir uma restrição:
- id—Identificador individual da restrição.
- nome—Nome localizável da restrição (exibido na
GUI).
- lang—Identifica a linguagem na qual a restrição é
expressa. A linguagem não faz distinção entre maiúsculas e minúsculas.
- severidade—A severidade do problema se a
restrição for violada. Isto está correlacionado à severidade das
tarefas na visão de Tarefas do ambiente Eclipse.
- statusCode—O código de status individual do
plug-in, útil para fins de registro.
- classe—Exclusivamente para restrições da
linguagem Java, identifica a classe que implementa a restrição.
- modo—Descreve se a restrição opera no modo de
lote, modo ao vivo, ou modo de recursos.
Descreve se a restrição opera no modo de lote, modo ao vivo, ou modo de
recursos. Agora, siga estas etapas para adicionar uma nova restrição para verificar a existência de um método de máscara se uma coluna for definida como dados de privacidade:
- Adicione uma nova restrição usando o ponto de extensão no arquivo
plugin.xml, como mostrado na Lista 2.
Lista 2. Usando o ponto de extensão constraintProviders para adicionar uma restrição
<!-- add a new constraint -->
<extension point="org.eclipse.emf.validation.constraintProviders">
<constraintProvider>
<package namespaceUri="http:///org/eclipse/datatools/modelbase/sql/schema.ecore"/>
<package namespaceUri="http:///org/eclipse/datatools/modelbase/sql/tables.ecore"/>
<package namespaceUri="http:///org/eclipse/datatools/modelbase/derby/derby.ecore"/>
<constraints
categories="com.ibm.datatools.validation.physicalmodel/design/normalization">
<constraint
name="Column privacy"
severity="WARNING"
statusCode="10"
class="com.ibm.extendrda.sample.validation.PrivacyDataCheck"
lang="Java"
mode="Batch"
id="com.ibm.datatools.extendValidation.PrivacyDataCheck">
<description>
Discover columns that are defined as privacy data,
but do not have masking method defined
</description>
<param name="extraction" value="elementName"/>
<message>
Column {0} is defined as privacy data,
but does not have a masking method defined
</message>
<target
class="Column">
</target>
</constraint>
</constraints>
</constraintProvider>
</extension>
|
O código na Lista 2 adiciona a restrição de privacidade de coluna sob o design
e a categoria de normalização como modo de lote com uma severidade de aviso,
como mostrado na Figura 23.
Figura 23. A restrição de
privacidade de coluna
- Adiciona a classe de implementação, como mostrado na Lista 3.
Lista 3. Código de amostra que inplementa a restrição da privacidade da coluna
public class PrivacyDataCheck extends AbstractModelConstraint {
public IStatus validate(IValidationContext ctx) {
EObject target = ctx.getTarget();
if (target instanceof Column) {
Column col = (Column) target;
if (isPrivateData(col) && (!hasMaskingMethod(col))) {
ctx.addResult(col);
return ctx.createFailureStatus(
new Object[] { col.getName() });
}
}
return ctx.createSuccessStatus();
}
private boolean isPrivateData(Column column) {
EAnnotation eannotation = column
.getEAnnotation(SamplePropertySection.SAMPLE_EANNOTAITN_NAME);
if (eannotation == null)
return false;
String privacyStr = (String) eannotation.getDetails().get(
SamplePropertySection.SAMPLE_PRIVACY_PROPERTY_NAME);
if (privacyStr == null)
return false;
return Boolean.getBoolean(privacyStr);
}
private boolean hasMaskingMethod(Column column) {
EAnnotation eannotation = column
.getEAnnotation(SamplePropertySection.SAMPLE_EANNOTAITN_NAME);
if (eannotation == null)
return false;
String maskingStr = (String) eannotation.getDetails().get(
SamplePropertySection.SAMPLE_MASKING_PROPERTY_NAME);
if ((maskingStr == null) || (maskingStr.length() <= 0))
return false;
return true;
}
}
|
Agora, se você definiu uma coluna no modelo SAMPLE como dados de privacidade e
deixou seu método de máscara vazio, você recebe um aviso da restrição
adicionada na visão de Problema ao rodar Analisar Modelo em SAMPLE, como mostrado na Figura 24.
Figura 24. Aviso da restrição de
privacidade de coluna
Conclusão
O IDA, como uma ferramenta abrangente de modelagem e integração, é muito
extensível por sua própria concepção. Nesta Parte 2 desta série de duas
partes, você aprendeu como gerar modelos de relatórios personalizados usando
BIRT, e a adicionar restrições de validação para cumprir regras de negócio.
Ao combinar isto com como percorrer e modificar programaticamente modelos IDA e adicionar
propriedades personalizadas na Parte 1,
é possível estender o IDA para atender seus requisitos de modelagem e integração de dados.
Recursos Aprender
Obter produtos e tecnologias
Discutir
Sobre o autor  | |  | Wei Liu é uma engenheira de software que trabalha no escritório da IBM em Seattle, Washington. Ela trabalha com conjuntos de ferramentas e modelagem de dados. |
Avalie esta página
|  |