-
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Objekte mit Formular wählen und filtern (QGIS 3.22/3.28) #112
Comments
Ja, ich denke das ist so. Ich glaube zwar, dass dies gehen würde: Dennoch ist das to:date stabiler. Dort kannst du auch das Format angeben so: ("Ausstellungsdatum">=to_date('01.01.2022','dd.MM.yyyy') AND "Ausstellungsdatum"<=to_date('31.12.2022','dd.MM.yyyy') |
Leider filtert diese Formel keine Daten und gibt wieder den gesamten Inhalt aus : Kann man dies nicht als Bug deklarieren? Der User erwartet natürlich aus dem oben definierten Filter eine korrekte Auswertung und nicht erst bei der nachträglichen Modifizierung in der unteren Ausdruckszeile. |
Du übergibst halt einen String. Ich dachte das "amerikanische" Format wird irgendwie erkannt aber offenbar nicht. Ein Bug ist es meiner Meinung nach nicht. Aber natürlich schon etwas umständlich so. |
Du benutzt die Filterfunktion im GUI und die generiert eine "falsche" Expression. Sorry, jetzt begreif ichs. Habs am Handy nicht gesehen (Nachteil, wenn man beim Frühstück am Handy Issue trackt. Response time top - Qualität flop. Wenigstens gratis ;-)) Ja, das scheint mir schon ein Bug zu sein. |
Ich hätte es auch klarer formulieren können. Das tut Eurer super Qualität nichts ab. Könntest Du bitte an Romedi eine Aufwandschätzung für das Bug Fixing mitteilen. Je nach Grösse des Aufwandes würden wir den Bug gerne beheben lassen. Vorab besten Dank. |
Also das hier würde ja gehen Das heisst irgendwo hier https://github.com/qgis/QGIS/blob/master/src/gui/editorwidgets/qgsdatetimesearchwidgetwrapper.cpp#L86-L97 müssten wir das
Vielleicht ist es das schon. Allerdings wird hier von QVariant konvertiert. Ist das immer |
Btw. hier der Issue auf QGIS qgis/QGIS#43177 |
Gegenüber dem QDate wird es mit QDateTime etwas komplexer. Die Zeit oder und Zeitzone ist im nachstehenden Filter nicht unterstützt. Bsp. ("test">='2022-12-19 05:00:00' AND "test"<='2022-12-21 20:00:00') |
Kannst du das testen: ("test">='2022-12-19T05:00:00' AND "test"<='2022-12-21T20:00:00') |
So würde es klappen. |
Hab mir das gerade codemässig angeschaut und etwas bemerkt, dass mir vorhin noch nicht aufgefallen ist. Der Wert wird immer in das Feldformat konvertiert. Was hast du dort eingetragen? Sofern das Feld ein |
Zu meiner Info: Das Format wird bereits ermittelt. Und zwar hier https://github.com/qgis/QGIS/blob/master/src/gui/editorwidgets/qgsdatetimesearchwidgetwrapper.cpp#L49-L59 Anhand des genannten Settings. Ich werd mal noch in die Implementierung dieses Settings schauen. Eventuell ist es eher für den Fall, dass das Feld kein spezifischer Datumstyp hat... |
Dieses Setting ist aber wahrlich verwirrend. Ein PR sollte diese Verwirrung lösen und Fehlkonfigurationen vermeiden. |
Jetzt bin ich total verwirrt. In meinem Beispiel sieht das Setting folgendermassen aus: Das Feldformat und die Customanzeige sind hier identisch und wurden aus einem SQL mit folgender Umformung definiert: Als User würde ich in diesem Beispiel mindestens das Format erwarten, in dem es ursprünglich definiert ist, aber hier muss trotzdem das amerikanische Format für den Filter angewendet werden. Wird die angebliche Lösung für 3.30 auch auf 3.28 backported? |
Ich denke nicht dass es gebackportet wird, da es nur hilft Fehlkonfigurationen zu vermeiden. Aber dein Fall hier scheint noch etwas anderes zu benötigen. Ich schau mal weiter und melde mich. |
Habn noch was gefunden Habe ich ein Dies ist gefixt worden (vor zwei Wochen) für 3.30 qgis/QGIS#51471 Hier wird das technische Datumsformat beibehalten und die Anzeige gemäss Systemsprache angepasst: Ich denke, das würde auch dein Problem lösen. Dennoch schau ich noch dein SQL Case an... |
@signedav Herzlichen Dank für deine Abklärungen und deinen Service. |
kein ZOHO ticket, warten auf die Version 3.30 |
Das Filtern zwischen zwei Datümer (Typ QDate) ergibt falsches Ergebnis.
("Ausstellungsdatum">='01.01.2022' AND "Ausstellungsdatum"<='31.12.2022')
Wird wahrscheinlich nicht als Datum erkannt und funktioniert leider nur per Korrektur mit folgendem Ausdruck.
("Ausstellungsdatum">=to_date('2022-01-01') AND "Ausstellungsdatum"<=to_date('2022-12-31'))
The text was updated successfully, but these errors were encountered: