Innholdsfortegnelse:
Video: Antibiotics Worked Miracles For Decades - Then Things Went Terribly Wrong - Doctor Explains 2024
Hovedformålet med en rapport er å presentere databasedata til brukere i et skjema som er lett å forstå. Crystal Reports gir deg alle verktøyene du trenger for å gjøre det. Noen ganger vil du imidlertid ha en rapport som gjør mer enn bare presentasjonsdatabase data. Du vil kanskje inkludere tekst fra en tekstbehandlingsfil, eller data som ligger i et regneark, eller et grafisk bilde som er lagret som en bitmappet bildefil. For å tillate deling av ulike typer informasjon i ulike typer filer, utviklet Microsoft OLE (Object Linking and Embedding) arkitekturen.
Rapporter du lager med Crystal Reports, kan fungere som OLE-containerprogrammer. Det vil si, de kan inneholde OLE-objekter som ble opprettet av andre programmer kalt OLE-serverprogrammer. Microsoft Word og Microsoft Excel er eksempler på OLE-serverprogrammer. Du kan ta tekst fra en Microsoft Word-fil som et OLE-objekt - eller ta et Excel-regneark som et OLE-objekt - og legg det i en Crystal-rapport.
Crystal Reports kan også fungere som et OLE-serverprogram. Du kan definere en rapport som et OLE-objekt og plassere det i en Word-tekstfil, et Excel-regneark eller et annet OLE-kompatibelt containertillatelse.
OLE tilbyr en uvanlig fordel: Når du tar med et OLE-objekt i Crystal Reports og legger det i en rapport, opprettholder objektet et forhold med programmet som opprettet det. Naturen til det forholdet avhenger av om OLE-objektet er statisk, innebygd eller koblet.
Statiske OLE-objekter
A statisk OLE-objekt er et øyeblikksbilde av et objekt som er kopiert fra det opprinnelige programmet til containerprogrammet. Du kan plassere et statisk OLE-objekt i en Crystal-rapport, men etter at du har lagt det der, kan du ikke redigere det eller endre det på noen måte (unntatt for å slette det). Et statisk OLE-objekt opprettholder ikke noen forbindelse til programmet som opprettet det.
Embedded objekter og koblede objekter
Som med et statisk OLE-objekt, lastes et innebygd OLE-objekt helt til beholderprogrammet, med en viktig forskjell: En innebygd objekt er ikke et øyeblikksbilde. Den har en "bevissthet" av hvilken serverapplikasjon den kommer fra, og du kan redigere den i containerprogrammet. Når du dobbeltklikker på et innebygd OLE-objekt, blir det redigerbart. Serverprogrammet tar over menyene og verktøylinjene for å tillate redigering. Hvis du for eksempel legger inn et Excel-regneark i en rapport, kan du redigere regnearket fra Crystal Reports - ved hjelp av Excel-menyer og verktøylinjer.
Eventuelle modifikasjoner du lager til et innebygd OLE-objekt, vises ikke i den opprinnelige filen i OLE-serverprogrammet. Hvis du vil endre originalen, må du gjøre det separat.
Tilknyttede objekter er som besøkende; de flytter egentlig ikke til containerapplikasjonen. Hva beholderprogrammet inneholder, er en peker til det koblede objektet (som forblir i serverprogrammet). Denne koblingen betyr at når det opprinnelige objektet i serverprogrammet er oppdatert, oppdateres også det koblede objektet i containerprogrammet. Anta for eksempel at serverprogrammet ditt er Excel, og du oppdaterer dataene i det koblede regnearket. Neste gang du kjører rapporten i Crystal Reports, trekker den de nyeste dataene fra Excel-filen som vises i rapporten.
Kobling er best hvis rapporten din alltid skal gjenspeile de nyeste dataene - og hvis du vil at dataene i flere programmer skal forbli synkroniserte. Pekeren tar også opp mindre plass enn å legge inn et stort regneark eller Word-dokument, noe som gjør rapporten raskere å laste. Rapporter som inneholder koblede objekter er imidlertid mindre bærbare enn rapporter som inneholder innebygde objekter. For koblingen til arbeid må det opprinnelige serverprogrammet være tilstede på maskinen som kjører Crystal Reports. Derimot er en innebygd gjenstand helt selvstendig, uten å ha noen link til kildefilen eller applikasjonen.