WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 08.10.2003, 15:40   #1
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard MS Access Bericht öffnet im Hintergrund...

Ich hab da grad ein Programm in Access, welches ich ein wenig überarbeiten soll.

Ein Teil davon ist, dass ein Bericht in VBA docmd.openreport "Bericht", acViewPreview geöffnet wird.

Jetzt öffnet sich dieser Bericht leider im "Hintergrund", da ein Formular im Vollbildmudus ist.
Bei Formularen kann man das ganze mit dem Parameter "acDialog" öffnen, dann öffnet sich das Formular als Dialogfenster im Vordergrund.

Gibts die Möglichkeit beim Bericht auch irgendwie.

Oder müsste ich das "Hauptforular" auch als Dialogfenster verkleinern und dann Bericht öffnen, weil es keine andere Möglichkeit gibt?

Hoffentlich könnts mir da helfen, weil eine Recherche mit Google und in der MSDN hat noch nix gebracht...
renew ist offline   Mit Zitat antworten
Alt 08.10.2003, 16:22   #2
Seidl
Veteran
 
Registriert seit: 10.01.2001
Beiträge: 478


Standard

acDialog gibt's natürlich auch für "OpenReport".

DoCmd.OpenReport "repMyReport", acViewPreview, , , acDialog

Ich kann mir aber eigentlich nicht vorstellen, das der Report grundlos in den Hintergrund wandert. Die einzige Ursache, die mir dafür auf die Schnelle einfällt, wäre das das Formular als PopUp geöffnet ist.
Seidl ist offline   Mit Zitat antworten
Alt 08.10.2003, 16:55   #3
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Zitat:
Original geschrieben von Seidl
acDialog gibt's natürlich auch für "OpenReport".

DoCmd.OpenReport "repMyReport", acViewPreview, , , acDialog

Ich kann mir aber eigentlich nicht vorstellen, das der Report grundlos in den Hintergrund wandert. Die einzige Ursache, die mir dafür auf die Schnelle einfällt, wäre das das Formular als PopUp geöffnet ist.
danke...

Aso das gibts auch - hmm cool. Ich hab mir das Ding nur mit dem Objektinspektor (oder wie das Ding heißt, wenn man F2 drück) angeschaut. Und da war nix.

Und ja, das Ding wird als "PopUp" geöffnet, wenn Access gestartet wird.
Aber jetzt sollte das ganze ja kein Problem mehr sein.
renew ist offline   Mit Zitat antworten
Alt 08.10.2003, 23:47   #4
Seidl
Veteran
 
Registriert seit: 10.01.2001
Beiträge: 478


Standard

Ehm... das muss ich aber jetzt energisch bestreiten

Im Objektkatalog findet man für "OpenReport" unter anderem folgendes:

Sub OpenReport(ReportName, [View As AcView = acViewNormal], [FilterName], [WhereCondition], [WindowMode As AcWindowMode = acWindowNormal], [OpenArgs])
Element von Access.DoCmd

Diese Info kriegt man aber auch, wenn man mit dem Cursor auf OpenReport die Tastenkombination STRG+i drückt.
Seidl ist offline   Mit Zitat antworten
Alt 09.10.2003, 08:01   #5
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Leider nein.

Auf jeden Fall nicht auf dem Rechner den ich da hab.
Kannst dir ja meinen Anhang anschaun.

Aber danke für das STRG+I - das kannte ich noch nicht.

Vielleicht liegts daran, dass du eine Developer Edition installiert hast...!? (ich denk zumindest, dass du die installiert hast)
renew ist offline   Mit Zitat antworten
Alt 09.10.2003, 08:14   #6
Seidl
Veteran
 
Registriert seit: 10.01.2001
Beiträge: 478


Standard

Nein. Ich arbeite zwar auch mit einer Developer-Version aber die betreffende Info habe ich aus einer normalen XP-Version. Dein Screenshot sieht so aus, als würde er aus ACC97 stammen. Dort hat es diesen Parameter meines Wissens noch nicht gegeben.
Seidl ist offline   Mit Zitat antworten
Alt 09.10.2003, 08:33   #7
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Zitat:
Original geschrieben von Seidl
Nein. Ich arbeite zwar auch mit einer Developer-Version aber die betreffende Info habe ich aus einer normalen XP-Version. Dein Screenshot sieht so aus, als würde er aus ACC97 stammen. Dort hat es diesen Parameter meines Wissens noch nicht gegeben.
dann kommen wir der Sache schon auf die Spur...

Ich denke auch, dass das ganze in Access 97 gemacht wurde - das ist sicher schon älter.
Weil das ganze ist in einem Verwaltungsprogramm meiner (ex-)Schule. (hab ja schon maturiert).
Ich bin jetzt nur als Zivi dort. Und das is eigentlich eine recht gemütliche Hacken (wie du dir sicher vorstellen kannst)

Hab grad in einer "neuen" Access 2000 DB ausprobiert: dort schreibt er mir die Parameter auch nicht hin. Also wirds wahrscheinlich erst ab Access XP dort stehen.

BTW: gehst du auf einen der BigDays Events von Microsoft? (ich denke, du wirst auch eine Einladung bekommen haben - oder?)
renew ist offline   Mit Zitat antworten
Alt 09.10.2003, 08:41   #8
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Aja, gleich noch was:

Gibts noch eine andere Möglichkeit in einem Bericht eine Sortierung und Gruppierung mit VB einzurichten, als mit CreateGroupLevel(...)?
Weil das Ding funktioniert nur in der Entwurfsansicht.

Oder muss ich zuerst den Bericht in der Entwurfsansicht öffnen, dann die Methode mit meinen Parametern aufrufen, und dann umschalten?

Ich will nämlich für die Frage, keinen eigenen Thread aufmachen.
renew ist offline   Mit Zitat antworten
Alt 09.10.2003, 08:51   #9
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Hmm, ich sollt vielleicht länger überlegen/probieren, bevor ich was post - weil dann ists auch vollständiger.

Ich bin da jetzt ein wenig am Basteln. Und natürlich wenn ich den Bericht kurz im Design Modus aufmache, die Sortierung eintrage und dann in die Preview umschalte, wird die Sortierung als Veränderung gesehen.
Und wenn man den Bericht schließen möchte, dann kommt natürlich die Meldung, ob man den Bericht speichern möchte (weil die Sortierung hat sich ja geändert) oder nicht.

Nur das kann man net umgehen - oder? Weil der Event: Close wird erst nach der Meldung ob man speichern möchte oder nicht ausgelöst (das man das evt. wieder rückgängig macht).

Und jetzt bin ich natürlich wieder in einer schönen Zwickmühle, das ganze elegant zu lösen....

Vielleicht hast ja du (als VB/VBA "Guru" - das wirst du bei mir nicht mehr los... ) od. auch jemand anderer eine Idee...
renew ist offline   Mit Zitat antworten
Alt 09.10.2003, 20:20   #10
Seidl
Veteran
 
Registriert seit: 10.01.2001
Beiträge: 478


Standard

@ LLR: Hat ein wenig gedauert aber ich hatte heute ziemlich zu tun.

Zu "Events von Microsoft":
-------------------------------
Jepp, bin ich dabei! Den Office-Launch habe ich schon seit einiger Zeit mit Spannung erwartet. Mal sehen wie die Sache mit .NET zusammenspielt. Ich geb' mir die Aktion am 18.11.2003 im Grazer Congress.

Zu Gruppierung / Sortierung:
-------------------------------
Die Sortierung ist kein Problem.

Public Sub DOWN()
Sort "repMy", "fldMy", False
End Sub

Public Sub UP()
Sort "repMy", "fldMy"
End Sub

Public Sub Sort(strReport As String, strFieldList As String, Optional Ascending)
Dim strSort As String
strSort = "ASC"
If Not IsMissing(Ascending) Then
If Not Ascending Then
strSort = "DESC"
End If
End If
DoCmd.OpenReport strReport, acViewDesign
With Reports.Item(strReport)
.OrderByOn = False
.OrderBy = strFieldList & " " & strSort
.OrderByOn = True
End With
DoCmd.Close acReport, strReport, acSaveYes
End Sub

Was die Gruppierung betrifft, so macht die ja ohne Anpassung des Layouts ja ohnehin nicht viel Sinn, oder? Wenn es dir nur darum geht die Speicherabfrage zu umgehen, dann kannst du ja das Open Event verwenden. Das wird ausgelöst, wenn du aus der Design- in die Preview-Ansicht wechselst. Allerdings ist das (wie du selbst bemerkt hast) wahrscheinlich auch nicht besonders clever. Immerhin hat ja so eine Abfrage auch ihren Sinn.
Falls du allerdings die Gruppierung wirklich per Code ändern willst, so funktioniert das natürlich nach dem selben Schema, wie das ändern der Sortierung.

Zum Thema STRG+I:
-------------------------------
Such' mal in der Hilfe nach "Shortcuts für das Code-Fenster"
Seidl ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:57 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag