Aruande esmane eesmärk on esitada kasutajatele andmebaasiandmeid hõlpsasti mõistetaval kujul. Crystal Reports annab teile kõik selleks vajalikud tööriistad. Mõnikord soovite aga aruannet, mis ei paku lihtsalt andmebaasi andmeid. Võib-olla soovite lisada teksti tekstitöötlusfailist või arvutustabelis olevaid andmeid või graafilist pilti, mis on salvestatud bitikaardiga pildifailina. Et võimaldada erinevat tüüpi teabe jagamist erinevat tüüpi failides, töötas Microsoft välja OLE (Object Linking and Embedding) arhitektuuri.
Crystal Reportsiga loodud aruandeid saab kasutada OLE konteinerirakendustena. See tähendab, et need võivad sisaldada OLE-objekte, mille on loonud teised rakendused, mida nimetatakse OLE-serverirakendusteks. Microsoft Word ja Microsoft Excel on OLE serverirakenduste näited. Saate võtta Microsoft Wordi failist teksti OLE-objektina – või võtta OLE-objektina Exceli arvutustabeli – ja paigutada selle Crystal-aruandesse.
Crystal Reports võib toimida ka OLE serverirakendusena. Saate määratleda aruande OLE-objektina ja paigutada selle Wordi tekstifaili, Exceli tabelisse või mõnda muusse OLE-ga ühilduvasse konteinerrakendusse.
OLE pakub ebatavalist eelist: kui viite OLE objekti Crystal Reportsi ja asetate selle aruandesse, säilitab objekt seose selle loonud rakendusega. Selle seose olemus sõltub sellest, kas OLE-objekt on staatiline, manustatud või lingitud.
Staatilised OLE-objektid
Staatiline OLE objekti on läbilõige objekt, mis on kopeeritud esialgse taotluse anuma taotluse. Saate paigutada staatilise OLE-objekti Crystal aruandesse, kuid pärast selle sinna lisamist ei saa te seda enam kuidagi muuta ega muuta (välja arvatud kustutamiseks). Staatiline OLE-objekt ei säilita selle loonud rakendusega ühendust.
Manustatud objektid ja lingitud objektid
Nagu staatilise OLE-objekti puhul, laaditakse manustatud OLE-objekt täielikult alla konteinerirakendusse, millel on oluline erinevus: manustatud objekt ei ole hetktõmmis. Sellel on "teadlikkus" sellest, millisest serverirakendusest see pärineb, ja saate seda konteinerirakenduses redigeerida. Kui topeltklõpsate manustatud OLE-objektil, muutub see redigeeritavaks. Serverirakendus võtab redigeerimise lubamiseks üle menüüd ja tööriistaribad. Näiteks kui manustate aruandesse Exceli arvutustabeli, saate seda arvutustabelit redigeerida Crystal Reportsis – kasutades Exceli menüüsid ja tööriistaribasid.
Manustatud OLE-objektis tehtud muudatusi ei kuvata OLE-serverirakenduse algses failis. Kui soovite originaali muuta, peate seda tegema eraldi.
Seotud objektid on nagu külastajad; nad ei liigu tegelikult konteinerirakendusse. Konteinerrakendus sisaldab kursorit lingitud objektile (mis jääb serverirakendusse). See link tähendab, et kui serverirakenduse algset objekti värskendatakse, värskendatakse ka konteinerirakenduse lingitud objekti. Oletame näiteks, et teie serverirakendus on Excel ja värskendate lingitud arvutustabeli andmeid. Järgmine kord, kui käivitate aruande Crystal Reportsis, tõmbab see Exceli failist uusimad andmed, et kuvada aruanne.
Linkimine on parim, kui teie aruanne peab alati kajastama uusimaid andmeid – ja kui soovite, et mitme rakenduse andmed jääksid sünkroonituks. Kursor võtab ka vähem ruumi kui suure arvutustabeli või Wordi dokumendi manustamine, mis muudab aruande laadimise kiiremaks. Lingitud objekte sisaldavad aruanded on siiski vähem teisaldatavad kui manustatud objekte sisaldavad aruanded. Et link töötaks, peab Crystal Reportsi töötavas masinas olema algne serverirakendus. Seevastu manustatud objekt on täielikult iseseisev ega vaja linki oma lähtefaili või rakendusega.