Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Dynamischen Bericht erstellen

Begonnen von X-ess, September 25, 2017, 15:46:17

⏪ vorheriges - nächstes ⏩

jagger

Hallo Ekkehard,
Zitat
Wenn da Luftcode drübersteht sollte man den Code auch schon mal selber
auf solche Fehler überprüfen (können).

...können! Das ist ja mein Problem.  :(
Ich bin da nicht so fit. Gelegenheitsbastler eben.
Aber wenn ich das Leerzeichen hinter DISTINCT mache, bleibt der Fehler trotzdem.
Durch das "&" war es nicht mehr rot. Aber leider nicht richtig. :'(
LG
jagger

jagger

Hallo Lachtaube,

Zitat
Die Tabellen gehören dringend in eine gute Normalisierungswerkstatt.
Wie meinst Du das? Sind die Tabellennamen nicht gut?

Zitat
Ansonsten lässt sich das Beispiel auch nicht wie angesagt starten, weil Formularbezüge aus den Abfragen fehlen. :(
Bei mir läuft das. Ich kann das ganz normal aufrufen.
Hab die nochmal als .accdb angehängt. Vielleicht ist ja beim Speichern als .mdb was verloren gegangen.

LG
jagger

Beaker s.a.

Hallo,
Warum watscht mich eigentlich keiner ab, wenn ich solchen Mist verzapfe?  ;)
Der String muss zusätzlich noch in Klammern gesetzt werden
Set rs = CurrentDb.OpenRecordset _
                         ("SELECT DISTINCT[Kollkürzel] " _
                      & "FROM tab_ex_Lieferanten")


Zitat...können! Das ist ja mein Problem.
Was du aber können solltest ist die Taste F1 zu drücken.
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

Lachtaube

#48
Die Funktion IsParent ist nicht definiert (Zeile 37 in Modul_mKalender). fct_Schicht (Zeile 169 in Modul_mKalender) fehlt. Dito für IsLoaded, DoPopup.

Der Rest hat sich geklärt (ich verwende englische Einstellungen).

Der Grund, warum keine Daten angezeigt werden, dürfte in der falschen Parameterdeklaration für das Datumsfeld liegen, welchen Du in der Abfrage als Text ausweist.
Grüße von der (⌒▽⌒)

jagger

Hallo Lachtaube,
Zitat
Die Funktion IsParent ist nicht definiert (Zeile 37 in Modul_mKalender). fct_Schicht (Zeile 169 in Modul_mKalender) fehlt. Dito für IsLoaded, DoPopup.

Oops, das kann sein dass da noch diverse Reste von Programmierversuchen rumliegen. Auch habe ich ja die DB ordentlich ausgemistet, um nur das eigentliche "Kalenderzubehör" zu erhalten.
Sorry.  :-[

Na Hauptsache, es läuft jetzt ers einmal.

LG
jagger

jagger

Ein fröhliches "Hallo" in die Runde,

da es ja leider keine Lösung für den Einsatz (frm_Kalender_UF_Uebersicht_Tag_Kollektionen)
als UFO gibt habe ich mir gedacht,
das Formular eben als PopUp (Rahmen: Dialog) zu verwenden.
Den Haken bei "Termine pro Kollektion anzeigen" (im frm_Kalender)
rein und das Formular wir angezeigt.

Noch mal kurz zur Erklärung:
Der Kalender (frm_Kalender) zeigt auf der linken Seite wie viele Termine
am jeweiligen Tag (vom 20. bis 26.11.17 gibt es Fake Termine)
in der jeweiligen Stunde vergeben sind (iLdT = im Laufe des Tages).

Klickt man in eine Spalte, so sollen auf der rechten Seite (im frm_Kalender_UF_Uebersicht_Tag_Kollektionen)
die dazugehörigen "Termine pro Kollektion anzeigen" angezeigt.

Wenn man das Formular (im frm_Kalender_UF_Uebersicht_Tag_Kollektionen) öffnet,
zeigt es auch die entsprechenden Daten an.
Leider bekomme ich es nicht hin, dass das Formular beim Datumswechsel (auf der linken Seite)
akzualisiert wird. Ich habe schon viel probiert. .Refresh, .Requery, auch wenn ich die Funktion,
die beim beim Laden des Formulars benutzt wird, ausführe, passiert leider nix.
Er führt die Abfrage (Kreuztabellenabfrage ohne Fixierte Spaltenüberschriften) einfach nicht wieder aus.
Es kommt auch keine Fehlermeldung.
Wenn man der Abfrage Fixierte Spaltenüberschriften zuweist klappt es.
Zum Testen habe ich eine Refresh-Taste eingebaut.
Wenn ich das Formular schließe und gleich wieder öffne funktioniert es auch.

Hat jemand eine Idee, wie man das Formular dazu bringt, sich komplett zu aktualisiern?

Die Beispieldatenbank habe ich angehängt.

Mit besten Grüßen und Dank im Voraus
jagger

Lachtaube

Ich habe wie gesagt nur den Parametertyp auf Datum festgelegt. Hier mal die DB, wie ich sie verwendet habe.
Grüße von der (⌒▽⌒)

jagger

#52
Hallo Lachtaube,

die Synchronisation mit dem UFO "frm_Kalender_UF_Uebersicht_Tag_kurz" (Dein .gif) hat ja bei mir auch schon funktioniert.

Mir geht es darum, dass das PopUp-Formular
"frm_Kalender_UF_Uebersicht_Tag_Kollektionen" synchronisiert wird.
Aber das tut es leider nicht.
Natürlich soll nach jedem Klick in der entsprechenden Datumsspalte auf der linken Seite (bei Datumsänderung), dann das Formular "frm_Kalender_UF_Uebersicht_Tag_Kollektionen" synchronisiert werden.

Bis es eine funzende Lösung geben wird,
benutze ich zum Testen den "refrech-Button".
Also auf den linken Seite das Datum ändern und dann auf den "refrech-Button" klicken. Dann sollte das Formular "frm_Kalender_UF_Uebersicht_Tag_Kollektionen"
aktualisiert werden.
Aber ich finde keine Lösung. Nur eben schließen und wieder öffnen.
Da muss es doch noch eine elegantere Lösung geben.

In meinem Beispiel öffnet es sich, wenn man im "frm_Kalender"
bei "Termine pro Kollektion anzeigen" das Häkchen setzt.
Durch Enfernen des Häkchens wird es wieder geschlossen.
Du hast dort den Code verändert, so dass das nicht mehr funktioniert.

Egal, man kann es ja "per hand" aufrufen.

Es muss doch möglich sein, ein Formular welches eine Kreuztabellen-Abfrage ohne
Fixierte Spaltenübersichten als Datenquelle hat, zu aktualisieren.
Es ist für mich ja schon nicht nachvollziehbar, warum man so ein Formular nicht als UFO verwenden kann.  :o :o :o

Allen Helfern Dank im Voraus.
LG
jagger









jagger

Hallo,

ich habe die Lösung gefunden.  :)
Mit Me.RecordSource = "qry_Kalender_Wochenübersicht_mit_Kollektionen_02"
wird das Formular bzw. die Datensatzquelle neu eingelesen.

Danke an alle Helfer.
Einen guten Rutsch!
LG
jagger

jagger

...auch wenn das letzte Update zu diesen Thema schon über ein Jahr her ist, besteht immer noch der Wunsch, das als Popup funktionierende Formular als Ufo einzubinden.
Leider will Access das nicht. :-(
Gibt es denn da nicht einen Kniff?

Die Datensatzquelle für das Formular "frm_Kalender_UF_Uebersicht_Tag_Kollektionen" ist
PARAMETERS [Formulare]![frm_Kalender]![WJ] Text ( 255 ), [Formulare]![frm_Kalender]![tfldDatum] DateTime;
TRANSFORM Count(qry_Kalender_Wochenübersicht_mit_Kollektionen_01.tAGKDNR) AS AnzahlvontAGKDNR
SELECT IIf([Stunden]="iLdT","iLdT",[Stunden] & ":00") AS h
FROM tab_int_Stunden_Kalender LEFT JOIN qry_Kalender_Wochenübersicht_mit_Kollektionen_01 ON tab_int_Stunden_Kalender.Stunden = qry_Kalender_Wochenübersicht_mit_Kollektionen_01.Stundenkey
GROUP BY tab_int_Stunden_Kalender.Sortierung, IIf([Stunden]="iLdT","iLdT",[Stunden] & ":00")
ORDER BY tab_int_Stunden_Kalender.Sortierung
PIVOT IIf([tCaption]="Neukunde","NeuK",IIf([Kollkürzel] Is Null,"alle",[Kollkürzel]));


Ereignis im Formular "beim Laden"

Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K0].ControlSource = Nz(DLookup("K0Koll", "tab_ex_Daten"), "")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K0].BackColor = Nz(DLookup("FB0", "tab_ex_Daten"), "111111")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K0K0].BackColor = Nz(DLookup("FB0", "tab_ex_Daten"), "111111")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K0].ForeColor = Nz(DLookup("FB0F", "tab_ex_Daten"), "")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K0K0].ForeColor = Nz(DLookup("FB0F", "tab_ex_Daten"), "")

Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K1].ControlSource = Nz(DLookup("K1Koll", "tab_ex_Daten"), "")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K1].BackColor = Nz(DLookup("FB1", "tab_ex_Daten"), "")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K1K1].BackColor = Nz(DLookup("FB1", "tab_ex_Daten"), "")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K1].ForeColor = Nz(DLookup("FB1F", "tab_ex_Daten"), "")
Forms![frm_Kalender_UF_Uebersicht_Tag_Kollektionen]![K1K1].ForeColor = Nz(DLookup("FB1F", "tab_ex_Daten"), "")
gekürzte Fassung

Die Fehlermeldung:
"Sie können weder eine SQL Pass-Through-Abfrage noch eine
Kreuztabellenabfrage, für die keine Spaltenüberschriften festgelegt sind, als
Datensatzquelle eines Unterfomulars oder Unterberichts verwenden. Bevor Sie
das Unterformular oder den Unterbericht an eine Kreuztabellenabfrage binden,
müssen Sie die Eigenschaft FixierteSpaltenüberschriften der
Abfrage festlegen."

Gibt es denn keine Möglichkeit, dass das Formular auch als Ufo und ohne fixierte Spaltenüberschriften funktioniert?
Es soll ja weiterhin dynamisch bleiben.

Wenn noch Informationen fehlen, dann will ich die gerne nachtragen.

Mit Dank im Voraus
jagger




Lachtaube

Hallo,

mit Rogers Beispiel wäre auch eine Dynamik möglich - vorausgesetzt Du hältst genügend Felder zur Verfügung und blendest nicht benötigte Felder aus.
Grüße von der (⌒▽⌒)