[Crystal Reports] Flexibele DB-connectie opslaan *

Pagina: 1
Acties:

  • Blizard
  • Registratie: September 2001
  • Niet online
Ik zoek een goede mogelijkheid om mn data te laten outputten, en was op Crystal Reports gekomen. Dit werkt allemaal aardig, maar ik krijg het niet voor elkaar om er een relatief path aan mee te geven. Hij bakt de database-connectie altijd in het report in, met als gevolg > prog ergens anders runnen > error.
Is hier een oplossing voor (de walktrough op MSDN werkt met fixed path). Of zijn er andere tools op de markt ?! (Crystal Reports is blijkbaar niet van MS zelf ? Raar dat ze daar zelf nog nix leuks voor hebben dan ?)

  • treslem
  • Registratie: Mei 2001
  • Laatst online: 25-05 10:19
Ik gebruik diverse oplossingen...

De meest gebruike is een ODBC koppeling aan te maken, die een generieke naam te geven (pakket - data bv) zodat je op elke willekeurige locatie (met een afwijkend datapath) de rapporten kan 'runnen'.

Tevens gebruik ik af en toe het subst commando (good old) waardoor ik, indien er alleen een afwijking is in de driveletter maar het path verder klopt, toch de rapporten kan draaien, veranderen en updaten.

(en Crystal is niet van MS, maar van Visual Objects volgens mij, hoewel ik laatst weer geluiden hoorde dat deze weer doorverkocht was aan ?? )

[ Voor 16% gewijzigd door treslem op 11-03-2004 23:59 ]

La dolce vita - non farmi ridere


Verwijderd

Het is gewoon mogelijk om de connection string van een crystal report te zetten vanuit code, alleen weet ik het niet zo uit mijn hoofd ( kan morgen wel ff kijken op het werk )

Wel moet ik zeggen dat mijn ervaringen met Crystal Reports als rapportgenerator voor VB niet al te best zijn. De distributie van het Crystal OCX component gaat niet altijd even vlekkeloos, en ook zijn de mogelijkheden van uit vb ( met de ocx ) beperkt. Wil je echt diepgaand gebruik van CR in VB maken, dan moet je al snel terugvallen op de API.

We zijn onlangs overgestapt op VSView reporting edition van ComponentOne, en tot nu toe bevatl die echt goed. Echt een aanrader !

  • Blizard
  • Registratie: September 2001
  • Niet online
Verwijderd schreef op 12 maart 2004 @ 00:20:
Het is gewoon mogelijk om de connection string van een crystal report te zetten vanuit code, alleen weet ik het niet zo uit mijn hoofd ( kan morgen wel ff kijken op het werk )
Heb je even de tijd gehad om te kijken op je werk ? :)

Verwijderd

Blizard schreef op 12 maart 2004 @ 16:13:
[...]

Heb je even de tijd gehad om te kijken op je werk ? :)
Oeps, was het bijna vergeten |:(
Maar ik heb net ff gekeken, en je kunt in de connect property van de CR-ocx gewoon iedere ODBC connectionstring invullen die je wilt.

code:
1
Rapport.Connect = "DSN=C:\blaat\blaat.mdb;UID=;PWD="


Of ieder andere connectstring die je ook maar wilt gebruiken, en dat kan dus ook een DSN-less connectstring zijn.

  • Blizard
  • Registratie: September 2001
  • Niet online
Heb het kunnen oplossen met het te koppelen aan een code-dataset. (die de connection kan meekrijgen die ikzelf ergens opgeef)

Maar ik krijg het niet voor elkaar om een "dynamisch" rapport te maken (ik krijg trouwens geen .connect, maar ook geen .sortFields etc .. wat wel handig zou zijn).

code:
1
Private crReportDocument As New reportTest


Ik maak dus een rapport aan met velden op en ga deze dan koppelen aan een dataset. Maar eigenlijk wil ik de velden op het rapport dynamisch kunnen toevoegen. Dit zou moeten lukken met een .Formulas maar deze kan ik niet aanspreken ?!

  • jopie1983
  • Registratie: November 2003
  • Laatst online: 25-02-2024
...

[ Voor 99% gewijzigd door jopie1983 op 22-03-2004 13:33 . Reden: Verkeerde Login ]


  • BestTested!
  • Registratie: Oktober 2003
  • Laatst online: 08:50
Ik had dit probleem ook. Nu heb ik dat op de volgende manier opgelost.

1) Open je rapport in Crystal Report
2) Ga naar Database --> Set Database Location
3) Expand je rapport
4) Ga naar de proporties van je database
5) Rechts-klik op Data-Source
6) Selecteer Same as Report

Nu gebruik je de datasbase die in hetzelfde path zit als je applicatie. Ik weet niet hoe dit werkt met ODBC, misschien kan je een File-DSN aanmaken. En deze DSN dan ik gebruiken.

  • Blizard
  • Registratie: September 2001
  • Niet online
Nu werkt het al (op nog een iets andere manier, maar het werkt redelijk) om de db-conn beetje flexibel te maken. Maar nu wil CrystalDecisions.Windows.Forms weer niet meewerken :( Op pc's waar visual studio (+crystal) niet geiinstalled is wil het programma geen lijsten weergeven (error dus). Moet ik nog een nodige dll meegeven ? (er is zo bar weinig te vinden op internet over Crystal :/)

Verwijderd

Blizard schreef op 28 maart 2004 @ 17:54:
Nu werkt het al (op nog een iets andere manier, maar het werkt redelijk) om de db-conn beetje flexibel te maken. Maar nu wil CrystalDecisions.Windows.Forms weer niet meewerken :( Op pc's waar visual studio (+crystal) niet geiinstalled is wil het programma geen lijsten weergeven (error dus). Moet ik nog een nodige dll meegeven ? (er is zo bar weinig te vinden op internet over Crystal :/)
Natuurlijk moet je de Crystal componenten die je gebruikt ook installeren op de target-pc. Kijk eens in de helpfile van Crystal, in het topic over "deployment"
Pagina: 1