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