Einzelnen Beitrag anzeigen

d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#5

Re: Abfrageergebnis zwischenspeichern

  Alt 9. Apr 2008, 07:00
Zitat von hoika:
Hallo,

eine Query ist auch ein DataSet,
also könntest du deine Query als Ausgangspunkt für den Report nehmen.

Dein Problem "Felder nicht bekannt",
wie willst du dann einen Report designen ?


Heiko
In Access werden die Reports für crossqry's dynamisch erzeugt. Da funktioniert das automatisch.

Da ich aber weiß mit welchen Feldern zu rechnen ist, wollte ich die Feldliste, welche von der CQry zurückgegeben wird, einlesen, die Felder zu den im Report definierten umbenennen und dann ein neues DataSet füllen und dem Report zur Verfügung stellen.
Der Report ist ein Export nach Excel. Für den Export wird ein Excel-Template eingelesen und in diesem befindet sich die Definition der zu erwartenden Felder/Feldnamen.
Die Exceldatei jedesmal neu generieren, also ohne Template, würde die durch diese Templatefunktion gewonnene Flexibilität eben gerade zunichte machen. Die Daten werden in den ExcelSheets weiterverbreitet und die Reports werden mit Conditional Formats entsprechend gestaltet.
Mit normalen Qry's funktioniert das schon perfekt - allerdings sind dort zur Laufzeit die Feldnamen und deren Anzahl schon bekannt.

Die CrossQry liefert als Ergebnis eine Datenmenge für jeden Tag eines Monats. Da die Monate eine unterschiedliche Anzahl von Tagen haben (Schaltjahr/Februar) ist die Anzahl der Spalten unterschiedlich.

Ich habe die Feldnamen ausgelesen und wollte sie jetzt umbenennen, allerdings weiß ich noch nicht wie ich den Schreibschutz des aktivierten DataSets umgehen kann bzw. die Datenmenge für das andere Dataset zusammenstellen kann.
Ich hatte in der Hilfe etwas gefunden, wie man ein DataSet in ein anderes kopieren kann. Ich dachte nun bei diesem Kopiervorgang kann man die Felder entsprechend umbenennen.

Bin also noch am knobeln...
Dirk
  Mit Zitat antworten Zitat