Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Sortierung des Berichtes auswählen

Begonnen von Beate1953, September 27, 2012, 14:15:24

⏪ vorheriges - nächstes ⏩

Beate1953

Hallo,

ich habe eine Abfrage (ohne Sortierung) und einen darauf basierenden Bericht. Nun soll der User beim Öffnen des Berichtes auswählen können, nach welchem Feld sortiert werden soll. Ich stelle mir das so vor, daß beim Klicken auf den Button "Bericht" erst ein Formular aufgeht auf dem eine Optionsgruppe die möglichen Felder zur Auswahl stellt. Mit dem Optionswert wird dann das entsprechende ORDER BY an den SqlString angehängt. Meine Frage ist ob man das in der Abfrage irgendwie bewerkstelligen kann? Oder soll ich das beim Öffnen des Berichtes irgendwie machen?

PS: Der Bericht hat ja die Eigenschaft Datenquelle. Wenn ich die Datenquelle per VBA definieren will, welches Codewort brauche ich da? Bei me. stellt er keine DataSource o.ä. in der Liste zur Verfügung.

Vielen Dank im Voraus für Eure Hilfe
Gruß
Beate1953

DF6GL

Hallo,

Ein Bericht hat die Eigenschaften Orderby und Orderbyon, die Du im Berichtsereignis "Beim Öffnen " ("Report_Open")  setzen kannst:


Private Sub Report_Open(Cancel As Integer)
Me.OrderBy = "Feldname1 Desc "
Me.OrderByOn = True
End Sub


In der Abfrage würde ich das nicht machen, es könnte sein, dass der Bericht sich um eine Sortierung dort nicht kümmert...


Stell mal den Cursor im Berichtsentwurf im Eigenschaftenfenster in die Eigenschaft "Datenherkunft" und drück F1....

Beate1953

Hallo,

Entschuldigung, daß ich mich jetzt erst zurückmelde. War leider durch einen Umzug verhindert.

Das mit dem OrderBy funktioniert bei mir leider nicht. Ich habe
Me.OrderBy = "Bezeichnung"
Me.OrderByOn = True
eingegeben. Im Eigenschaftenblatt zeigt Access unter "Sortieren nach:" auch wirklich "Bezeichnung" an. Aber wenn ich in die Berichtsansicht wechsle, ist der Bericht immer noch nach Barcode sortiert.

Was mache ich falsch?

Viele Grüße
Beate1953

DF6GL

Hallo,


leg die Sortierungen im Berichtsfenster "Gruppieren/Sortieren" fest.. 

Beate1953

Hallo,

im "Gruppieren und Sortieren" kann ich doch m.E. nur in der Entwurfsansicht die Sortierung festlegen. Ich möchte aber, daß der User während seiner Arbeit die Sortierung auswählen kann.
Dazu habe ich ein Formular, das in einer Optionsgruppe alle verfügbaren Felder anbietet. Je nach Wahl soll dann der Bericht beim Öffnen nach diesem Feld sortiert werden.

Viele Grüße
Beate1953

DF6GL

Hllo,

habe ja schon erwähnt, das sich der Bericht evtl. nicht um die angebene Sortierung in der Abfrage schert.
Es kommt darauf an, wie der Bericht in seinen Eigenschaften eingestellt , bzw. was sonst alles im Bericht per VBA passiert.



Ansonsten habe ich Dir schon gezeigt, wie man den Bericht beim Öffnen sortieren kann.   Wenn das nicht funktoniert, muss man der Ursache auf den Grund gehen.. 


ZitatAber wenn ich in die Berichtsansicht wechsle
lässt zudem auf Acc-Version 2007/2010 schliessen.   Öffne  mal den Bericht in Seitenansicht....


Beate1953

Hallo,

ich komme immer noch nicht klar.

Ich habe im Bericht als VBA lediglich
Private Sub Report_Open(Cancel As Integer)
Me.OrderBy = "Bezeichnung"
Me.OrderByOn = True
End Sub
Eine variable Einstellung über die Optionsgruppe habe ich noch gar nicht probiert, wenn schon obiger einfacher Code nicht klappt.

Und trotzdem sortiert Access beharrlich nach Barcode, obwohl dies nirgends eingestellt ist. Die Ursachensuche ist an ihre Grenzen gestoßen, da ich alles untersucht und ausprobiert habe, was mir als mögliche Ursache eingefallen ist.

Ich habe in der Hilfe viel über OrderBy und OrderByOn gelesen. Dabei habe ich u.a. folgende Sätze gefunden: 1. "Sie (OrderBy-Werte) werden automatisch geladen, wenn das Objekt geöffnet wird, sie werden jedoch nicht automatisch angewandt." Meine Frage: Von woher werden die geladen und wie bringe ich sie zur Anwendung?
2. "Nachdem ein Formular oder Bericht geöffnet ist, können Sie den Filter oder die Sortierreihenfolge....ändern..." Ich habe versucht, die OrderBY- und OrderByOn in ein anderes Ereignis zu platzieren, das nach dem Öffnen ausgeführt wird - hat aber auch nicht geholfen.

Ich bin am Ende meiner Weisheit angelangt.
Für weitere Tipps wäre ich sehr dankbar!!!

Grüße
Beate1953

DF6GL

Hallo,

dann lad die DB hier hoch, damit überhaupt nachgesehen werden kann... (evt. datenreduziert und gezippt)

Beate1953

Hallo,

ich weiß jetzt, wo der Fehler lag: Ich hatte den Bericht mit dem Assistenten erstellt und darin bei Sortierung Barcode eingegeben. Dies hat sich anscheinend später nicht mehr umstellen lassen.

Als ich den Bericht neu machte und keine Sortierung vorgab, konnte ich die Sortierung über ORDERBY verändern.

Vielen Dank für Eure Hilfe

Beate1953