Crystal Reports 10: Object Linking and Embedding Entendimento (OLE)

O objetivo principal de um relatório é apresentar dados banco de dados para usuários de uma forma que é fácil de entender. Crystal Reports lhe dá todas as ferramentas necessárias para fazer isso. Às vezes, porém, você quer um relatório que faz mais do que apenas os dados do banco de dados presente. Você pode querer incluir texto de um arquivo de processamento de texto ou dados que reside em uma planilha ou uma imagem gráfica armazenada como um arquivo de imagem bitmap. Para permitir a partilha de vários tipos de informação em diferentes tipos de arquivos, a Microsoft desenvolveu o OLE (Object Linking and Embedding) arquitetura.

Os relatórios que você cria com Crystal Reports pode servir como aplicações de contentor OLE. Ou seja, eles podem conter objetos OLE que foram criados por outros aplicativos chamados aplicativos de servidor OLE. Microsoft Word e Microsoft Excel são exemplos de aplicativos de servidor OLE. Você pode tomar o texto de um arquivo do Microsoft Word como um objeto OLE - ou tomar uma planilha do Excel como um objeto OLE - e colocá-lo em um relatório de cristal.

Crystal Reports também pode funcionar como um aplicativo de servidor OLE. Você pode definir um relatório como um objeto OLE e colocá-lo em um arquivo do Word de texto, uma planilha do Excel, ou qualquer outra aplicação de contentor OLE-compatível.

OLE oferece uma vantagem incomum: Quando você traz um objeto OLE em Crystal Reports e colocá-lo em um relatório, o objeto mantém um relacionamento com o aplicativo que o criou. A natureza dessa relação depende se o objeto OLE é estático, incorporado ou vinculado.

OLE objetos estáticos

UMA objeto OLE estática é um instantâneo de um objeto que tenha sido copiado a partir da aplicação original para o aplicativo recipiente. Você pode colocar um objeto OLE estática em um relatório de cristal, mas depois que você colocá-lo lá, você não pode editá-lo ou alterá-lo de qualquer forma (exceto para excluí-lo). Um objeto OLE estático não manter qualquer conexão com o aplicativo que o criou.

Os objetos incorporados e objetos vinculados

Tal como acontece com um objecto OLE estática, uma objeto OLE é baixado totalmente à aplicação do contentor, com uma diferença importante: Um objeto incorporado não é instantâneo. Ele tem uma "consciência" de que a aplicação de servidor vem, e você pode editá-lo dentro do aplicativo recipiente. Quando você clica duas vezes um objecto OLE incorporado, torna-se editável. A aplicação de servidor assume os menus e barras de ferramentas para permitir a edição. Por exemplo, se você incorporar uma planilha do Excel em um relatório, você pode editar a planilha a partir de Crystal Reports - usando menus e barras de ferramentas do Excel.

Quaisquer modificações feitas a um objeto OLE incorporado não aparecem no arquivo original no aplicativo de servidor OLE. Se você quiser alterar o original, você tem que fazer isso separadamente.

objetos vinculados são como visitors- eles realmente não ir para o aplicativo recipiente. O que o aplicativo recipiente contém um apontador para o objeto vinculado (que permanece no aplicativo de servidor). Este link significa que sempre que o objeto original no aplicativo de servidor é atualizado, o objeto vinculado no aplicativo recipiente é atualizado também. Suponha, por exemplo, que a aplicação de servidor é Excel, e você atualizar os dados na planilha vinculada. A próxima vez que você executar o seu relatório no Crystal Reports, ele puxa os dados mais recentes do Excel arquivo para exibir no relatório.

A vinculação é melhor se o relatório deve sempre refletir os dados mais recentes - e se você deseja que os dados em múltiplas aplicações para permanecer sincronizado. O ponteiro também ocupa menos espaço do que a incorporação de uma grande planilha ou documento do Word, o que torna o relatório mais rápido para carregar. Os relatórios contendo objetos vinculados são, contudo, menos portátil do que os relatórios que contêm objetos incorporados. Para o link para o trabalho, a aplicação de servidor original deve estar presente na máquina que está executando o Crystal Reports. Em contraste, um objeto incorporado é completamente auto-suficiente, não necessitando de link para seu arquivo de origem ou aplicativo.

menu