Ich habe einen Report, in dem ich ein Feld habe mit dem Datum.
Habe in dieses Feld aus der Datenbank bereits ein Datum_von eingetragen.
Nun möchte ich in das gleiche Feld das Datum_bis eintragen.
Beim Report erzeugen werden aber die Werte von Datum_bis aus der Datenbank nicht übernommen.
Um zu testen, an was es liegen könnte, habe ich einen neuen Report hergestellt.
In diesem funktioniert es. Wo ist des Teufels trick?
Arbeite mit Mac OS Ventura 13.2.1 und Papyrus 11.07.
Ich muss raten: Um ein Feld zusätzlich im Report einzufügen, müsste über Rechtsklick der Befehl Einfügen > Datenfeld… mit Auswahl des Feldes (hier: „Datum_bis“) gegeben werden. Hast du das so gemacht?
Ja, das habe ich so gemacht! Ich mache das schon lange so, hat immer funktioniert. Aber auf einmal nicht mehr. Gebe ich das Datenfeld datum_bis im Report in ein anderes Feld ein, dann funktioniert es. Nich aber in dem Feld, wo das Datenfeld datum_von enthalten ist. Keine Ahnung was da los ist.
Ich muss noch ergänzend sagen, dass, wenn ich nur das Datenfeld datum_bis im Report einpflege, dann werden die Daten eingetragen. D.h. Ein Datenfeld wird im Feld des Reports übernommen aber keine zwei. Habe mal die Datei anbei. Ob es ohne Datenbank etwas bringt, weiß ich ncht.
Wenn ich eine rudimentäre Tabelle nachbaue mit den beiden fraglichen Feldern in einer Tabellenzelle, funktioniert es auch, sie vertragen sich soweit problemlos.
Und du hast recht: Wenn ich dein Formular benutze, wird tatsächlich nur datum_von übernommen! (Weil es als erstes kommt.)
Also keine Ahnung, welche Nebeneffekte da am Werke sein mögen.
Der Grund für die Übernahme nur eines Datums ist, dass sich beide Datenfelder in einem einzigen Tabellenfeld mit dem Typ „Datum“ befinden. Dadurch kann das Tabellenfeld aber nur ein einziges Datum darstellen, sodass immer das zuletzt eingetragene Datum „gewinnt“.
Abhilfe 1:
Ändere den Typ des Tabellenfeldes auf „Text“. Danach wird das Datum aber nach dem Schema YYYYMMDD dargestellt. Das kann mit einer Formel anstelle des Datenfeldes behoben werden:
TAG(datum_bis) + "." + MONAT(datum_bis) + "." + JAHR(datum_bis)
Für das datum_von kann die Formel entsprechend angepasst werden.
Abhilfe 2:
Teile das Tabellenfeld für die beiden Daten, sodass jedes Datumsfeld in seinem eigenen Tabellenfeld steht.
Ihr habt recht, es hat so funktioniert. Brauchte aber keine Formel. Ich habe als Typ Text oder Zahl ausgewählt und wurde dann original eingetragen, also (14.03.2021). Es gibt allerdings noch ein aber. Ich habe ja, bevor ich ins Forum ging, einen minimierten Testreport nur mit datum_von und datum_bis erstellt. In diesem, ist das Feld, wo diese beiden Daten rein sollen, ebenfalls Typ „Datum“ ausgewählt, und da funktioniert es bestens. Hier ist der Teufel im Detail. Habe sogar in dieses Datumsfeld ein Datenfeld mit Text, (z.B. Art_der_Invest) eingefügt, und wurde trotz Datumstyp übernommen.
Ob die Entwickler wohl dazu eine Erklärung haben???
Wenn es gar, nicht so aufwändig wäre, würde ich am liebsten einen neuen Report erstellen um herauszufineden ob ich veilleicht irgendwo im Report etwas eingestellt habe, Formel, eine Bedingung oder des gleichen, was dieses Phänomen sperrt.
Aber trotz allem eine plausible Erklärung. Besten Dank Euch beiden.
Das hängt manchmal von der Reihenfolge der Datenfelder ab. Wenn das erste Feld ein Textfeld ist, dann versucht Papyrus auch den Rest in dem Tabellenfeld als Text einzufügen und ignoriert dabei die Formatierung.
Bei Rechenformeln mit gemischten Strings und Zahlenwerten passiert das auch gerne, z.T. mit Nebenwirkungen. Wenn man also ganz sicher sein will, muss man Papyrus anweisen, alles in Text zu wandeln und dann zu verketten.
Du bist ja vom feinsten. Habe die beiden Datenfelder datum_von und datum_bis in der Tabelle nebeneinander angeordnet, und siehe da, alles bestens. Das muss man ja auch wissen. Warum nicht gleich so. Viele Recherchestunden doch noch gerettet.
Wenn ich jetzt alles richtig verstanden habe, ist es so, dass beim Report erzeugen die Daten von der Tabelle von links nach rechts, bzw. von vorne nach hinten, in den Report übernommen werden. Oder?
Mit dem Verketten bin ich allerdings nicht so bewandert. Vielleicht hast Du mir da noch eine Beschreibung parad? Habe den Report mal anbei, damit Du sehen kannst wie das ganze aussieht.
Die Ergebnisse sind natülich nicht korrekt, da die Datensätze nur ein geringer Anteil der Datenbank sind.
Bei der Gelegenheit hätte ich noch eine andere Frage:
Gibt es in Papyrus eine Funktion oder Hilfe, mit der man einsehen kann, welche Felder miteinander über eine Formel/Syntax in Abhängikeit stehen. Also so eine Art Liste oder ähnliches?
Ermittlung km_Preis.pap (46,3 KB)