Ich habe in zwei Berichten zugegriffen auf das gleiche Memo-Feld (kbesuch) auf der Tabelle ,,Kunden"
Rufe ich den Bericht ,,Kundenliste" auf, dann habe ich in dem Memo-Feld sämtliche Informationen.
Rufe ich den Bericht ,,KundenAbfrageMitNotizen" auf, dann bekomme ich in dem Memo-Feld nur ca. 50 % der Informationen angezeigt.
Wenn ich die Eigenschaften des Memo-Feldes ,,kbesuch" vergleiche, dann gibt es Unterschiede, ich weiß aber nicht warum, weil ich bei der Erstellung des Berichts nichts geändert habe.
Ich füge mal Screenschots von beiden ,,Eigenschaften" bei.
Wo liegt das Problem?
Axel
Hallo,
vermutlich trifft dieses zu:
http://www.donkarl.com/?FAQ5.18
Hallo,
ich möchte mal folgendes behaupten: Das eine ("KundenAbfrageMitNotizen") ist ein Textfeld im Bericht und das andere ("Kundenliste") in einem Formular.
Falls das nicht zutrifft, stimmt etwas grundsätzliches nicht mit dem Bericht "Kundenliste"(!) und das dortige Textfeld (oder der ganze Bericht) sollte neu erstellt werden.
Was das Abschneiden des Textes betrifft, so zeig doch mal die Abfrage (-> SQL-Code), die hinter dem Bericht steht.
Wird dort sortiert oder gefiltert? Findet eine Gruppierung im Bericht statt?
MaggieMae hat es richtig erkannt. Das eine Memo ist innnerhalb eines Formulars, das andere ist in einem Bericht.
SQL wird in der Abfrage angezeigt.
SELECT Kunden.ksort, Kunden.status, Kunden.kname1, Kunden.kname2, Kunden.kpostfach, Kunden.kland, Kunden.kort, Kunden.kplz, Kunden.ktel, Kunden.anrede, Kunden.kpartner, Kunden.kmodem, Kunden.kkenn, Kunden.kbesuch, Kunden.OEMs, Kunden.internet
FROM Kunden
WHERE (((Kunden.ksort) Like "*" & [welcher Kunde] & "*"));
Es wird nicht gruppiert und auch nicht gefiltert.
Axel
Und wenn du diese Abfrage direkt öffnest, siehst du das Memofeld verkürzt oder vollständig?
Und FAQ 5.18 hast du gelesen?
Ja, 5.18 habe ich gelesen.
Aber zu Deiner Frage: in dem Feld kbesuch in der Abfrage steht NICHTS!!!
Und das Verrückte ist, dass einige Felder "gefüllt" sind, also Text haben, aber andere sind leer, obwohl in kbesuch der Tabelle der komplette Text steht!!!!
Da stimmt doch irgendetwas nicht!!!
Hallo,
solche mysteriösen Sachen (--> Db ist zerschossen) lassen sich oft beheben, indem man alles (alle Objekte) in eine neue leere DB-Datei importiert...
sofern die Beschreibung authentisch ist.
Believe it or not: ich habe alle Eure Tipps nachvollzogen, hat leider ncihts geholfen, auch Franz' letzter Hinweis hat keine Lösung gebracht.
Also habe ich statt eines Bericht ein Formular mit den gleichen Feldern erstellt, und siehe da, plötzlich habe ich den gesamten Text aus dem Feld kbesuch!!
Aber jetzt kommst's: nachdem ich in der DB weiter gearbeitet habe und dann erneut, das neue Formular aufrief, war wieder nur der Anfang des Textes da - möglicherweise die ominösen 255 Zeichen, ich habe sie nicht gezählt - und der Rest verschwunden.
Wenn ich allerdings das Formular "Kundenformular" aufrufe, welches ja auf das gleiche Feld "kbesuch" zugreift, dort ist dann wieder alles drin
Axel
Hallo,
es hängt ganz sicher am Memofeld. Da man aber den exakten Aufbau nicht kennt, ist es schwer etwas zu raten.
Was steht denn in dem Memofeld?
Der Name kbesuch lässt darauf schließen, dass hier Infos zu Kundenbesuchen gespeichert werden.
Was wiederum darauf schließen lässt, dass das Memo hier fehl am Platz ist. Eine zusätzliche Tabelle für die Besuche wäre hier zweckmäßiger.
Ja, Du hast recht: kbesuch enthält einfach Informationen zu GEsprächen usw.
Ich muss aber da mal dumm zurückfragen: ich mache also eine neue Tabelle mit den Feldern
- id
- ksort (das ist das Schlüsselwort aus Tabelle Kunden)
- kbesuch
und verknüpfe das dann mit der Tabelle Kunden?
Sehe ich das so richtig?
Axel
Hallo,
nur aus Interesse - was passiert wenn du die folgende Abfrage ausführst und das Feld splittKBesuch in den Bericht einbaust?
SELECT Kunden.ksort, Kunden.status, Kunden.kname1, Kunden.kname2, Kunden.kpostfach, Kunden.kland, Kunden.kort,
Kunden.kplz, Kunden.ktel, Kunden.anrede, Kunden.kpartner, Kunden.kmodem, Kunden.kkenn, splittKBesuch:Mid([kbesuch],1,200) & Mid([kbesuch],201,400), Kunden.OEMs, Kunden.internet
FROM Kunden
WHERE (((Kunden.ksort) Like "*" & [welcher Kunde] & "*"));
Werden dann mögliche 400 Zeichen im Bericht angezeigt - oder in der Abfrage?
Hallo,
noch ein anderer Vorschlag:
Schreib in die Datenherkunft des Berichtes nicht eine Abfrage, sondern nur den Tabellennamen ("Kunde").
Nimm ein x-beliebiges Formular, füge dort eine Schaltfläche ("btnTestDruck") und ein ungebundenes Textfeld ("txtKunde") ein.
Die Schaltfläche erhält folgende Prozedur für Ereignis ("Beim Klicken")
Sub btnTestDruck_Click()
Docmd.OpenReport "KundenAbfrageMitNotizen" acPreview,,,"ksort Like "'*" & Me!txtKunde & "*'"
End Sub
In das Feld "txtKunde" gibst Du einen gültigen Text ein und klickst die Schaltfläche.
Lässt sich dadurch das ominöse Verhalten nicht beseitigen, komprimiere/repariere die DB und lad sie hier gezippt hoch. (vielleicht auch reduziert auf ein paar lauffähige Spieldaten).
Ist "ksort" (Datentyp "Text") tatsächlich das Primärschlüssel-Feld in Tabelle "Kunden"?
Ich beantworte aus Zeitgründen im Moment nur den Hinweis von database:
Sorry, aber jetzt kommt eine Fehlermeldung: Syntaxfehler (fehlender Operator) im Abfrageausdruck"'split........."
Hallo,
extra Tabelle wie Du es bereits genannt hast zusätzlich noch ein Feld mit dem Dateum.
Jeder Kontakt/jedes Gespräch wäre dann ein eigener Datensatz. Recherchen werden zum Kinderspiel. Das Memofeld entfällt ersatzlos und damit hast Du auch dessen Probleme los.
Das wäre auch datenbankkonform. Das Memofeld verstößt bereits gegen die 1.Normalform (atomare Inhalte), das heißt, immer nur eine Information in einem Feld.
Hi,
der AusdrucksplittKBesuch:Mid([kbesuch],1,200) & Mid([kbesuch],201,400)sollte im SQL-Code so aussehenMid([kbesuch],1,200) & Mid([kbesuch],201,400) AS splittKBesuch
Zunächst einmal Dank an alle, die sich für mich Gedanken gemacht haben. Ich glaube aber, ich habe das Problem gefunden:
Die Abfrage ,,KundenAbfrageMitNotizen" hat eine Gruppierung, da hier Umsätze aus einer anderen Tabelle summiert wurden.
Jetzt habe ich eine andere Abfrage gestaltet, die schon die kumulierten Summen beinhalten. Jetzt brauche ich hier keine Gruppierungen mehr. Die Felder dieser Abfrage habe ich mit ,,KundenAbfrageMitNotizen" verknüpft.
Und siehe da, plötzlich habe ich im Memo-Feld den ganzen, langen Text.
Nochmals Dank an alle, ich komme bestimmt mit weiteren Problemen auf Euch zu.
Axel
Schön, dass du die Ursache des Fehlers gefunden hast. Das Stichwort "Gruppierung" fiel allerdings bereits in der ersten Antwort.
ZitatEs wird nicht gruppiert und auch nicht gefiltert.
Das hat dann wohl nicht so ganz gestimmt.
Hallo,
und meine Antwort in #13 wäre trotzdem der bessere Weg.
Wollte ich als Normalisierungsfan noch anmerken. ;D