TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Lorca
Beiträge: 196
Registriert: Di 3. Nov 2020, 12:25

TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von Lorca »

Hallo zusammen,

Der TDBNavigator Button "Insert" ist aktiv wenn ich im Modus dsEdit bin.
Dies dürfte eigentlich nicht sein, da ich mich ja bereits dazu entschieden habe einen aktuellen Datensatz zu ändern.

Daher meine Fragen:
- Wird eine besondere Einstellung benötigt um dies zu verhindern?
- Liegt dahinter evtl. ein besonderes kalkühl der Entwickler?
- Kann dies ein BUG im Laz. 2.0.12?
- Kann ich dies manuell im Coding ändern?

Kann mich hier jemand "aufschlauen"?

Viele Grüße
Lorca

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von theo »

Lorca hat geschrieben:
Do 14. Jul 2022, 09:55
Kann dies ein BUG im Laz. 2.0.12?
Ich weiss es nicht, aber vielleicht solltest du einfach mal updaten und schauen, ob das Problem noch besteht?
Aktuell ist die Version 2.2.2

Joh
Lazarusforum e. V.
Beiträge: 176
Registriert: Sa 26. Mai 2012, 17:31
OS, Lazarus, FPC: Win 10 (L 2.2.6 x64 FPC 3.2.2)
CPU-Target: 64Bit

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von Joh »

Über das Verhalten habe ich mich auch schon gewundert...
Auch Back und For sind aktiv...

PS: hier Version 2.2.2
just my two Beer

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von wp_xyz »

Bitte einen Bugreport schreiben (mit kleiner Test-Anwendung), damit sich jemand der Sache annimmt.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von af0815 »

Vielleicht die Testanwendung hier mal reinstellen, vor dem Bugreport, vielleicht ist nur was nicht so verknüpft wie es der TDBNavigator gern hätte
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Soner
Beiträge: 623
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von Soner »

Ihr braucht kein Bugreport zu schreiben, das ist normales Verhalten von TDBNavigator. Es ist unter Delphi genauso.
Ich habe bei mir dieses Verhalten bis zum letzten Lazarusversion immer geändert und bei Bearbeitungsmodus nur Übernehmen- und Abbrechenknöpfe aktiviert gelassen (Man muss Quelltexte bearbeiten). Obwohl es für den Benutzer gut ist, lohnt es den Aufwand nicht.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von af0815 »

Ok, ist unter Delphi auch so, ist sowieso das Killerargument. Wenn das Auftaucht so ist jede Diskussion und Bugreport sinnlos.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

sstvmaster
Beiträge: 575
Registriert: Sa 22. Okt 2016, 23:12
OS, Lazarus, FPC: W10, L 2.2.6
CPU-Target: 32+64bit
Wohnort: Dresden

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von sstvmaster »

Schade eigentlich, das sich Lazarus nicht abheben kann gegenüber Delphi.

Es kommt mir so vor als würden die Delphi Leute, die Lazarus Leute dazu Zwingen
genauso schlecht und unangepasst zu sein, wie sie selbst.

Aber ja, mit Delphi kann man ja Geld verdienen mit Lazarus nicht.

Lazarus könnte so viel besser sein.
LG Maik

Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)

Soner
Beiträge: 623
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von Soner »

Falls ihr mal sehen wollt, wie es aussehen würde, dann nimmt meine Änderungen und entpackt es in Lazarus/lcl-Ordner.
Vorher die Dateien lcl/dbctrls.pp und lcl/include/dbcustomnavigator.inc umbenennen, damit ihr die Änderungen rückgängig machen könnt.

Um meine Änderungen zu sehen sucht nach dem Kommentar "soner", ich markiere immer meine Änderungen so, damit ich später weiß, was ich geändert habe.

Es sind zwei andere Eigenschaften wie ContinueAction und LeaveInsertBtnEnabled, die beiden haben mit Edit-Status nichts zu zu tun. Mit LeaveInsertBtnEnabled kann man '+'-Button aktiviert lassen, auch wenn die DB inaktiv ist.

Die beiden Dateien sind aus Lazarus 2.0.11 Revision 64267 (2021-07-17) mit meiner Änderungen.
Dateianhänge
dbnavigator-son.zip
(13.6 KiB) 52-mal heruntergeladen

Ich934
Lazarusforum e. V.
Beiträge: 316
Registriert: So 5. Mai 2019, 16:52
OS, Lazarus, FPC: ArchLinux und Windows mit FPCUPdeluxe (L: 2.0.X, FPC 3.2.0)
CPU-Target: x86_64, i386
Wohnort: Bayreuth

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von Ich934 »

Guten Morgen,

ich habe hier aus einem Testreport von einer Anwendung auch mehrere Meldungen, auf unlogisches Verhalten des DBNavigators für User. Den Beschreibungen nach kann ich das nachvollziehen, hab es aber noch nicht ausgetestet. Teile scheinen sich aber auch mit dem hier beschriebenen Verhalten zu decken.

Die Frage ist, wo und wie weit bleibt die Delphi-Kompatibilität, wenn es dann für einen Benutzer nicht mehr nachvollziehbar ist? Oder sollte/muss es eine bessere/logische Lazarus-Komponente geben, welche bewusst auf eine Kompatibilität verzichtet, aber dann definitiv sich so verhält, wie es erwartet wird?

cu tb
Tipp für PostgreSQL: www.pg-forum.de

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von MacWomble »

Manchmal ist es nicht verständlich, warum man nicht besser sein möchte als Delphi. :shock:
Auf Grund der Kompatibilität auf Logik zu verzichten ist bestimmt nicht der beste Weg.
Vielmehr sollte FPC/Lazarus nicht alle Fehler von Delphi kopieren, sondern besser sein.
Gerade bei dem hier beschriebenen Verhalten des DBNavigators stellt es kein technisches
Problem dar, sondern ein logisches.
Was nutzt es, wenn der Anwender verwirrt ist?
Ich verwende den DBNavigator genau aus diesem Grund überhaupt nicht in meinen Projekten. :twisted:

Das ewige Kompatibilitätsgehabe ist meines Erachtens eine massive Innovationsbremse
und somit absolut kontraproduktiv. Was wäre doch alles möglich, wenn ... :cry:
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

Lorca
Beiträge: 196
Registriert: Di 3. Nov 2020, 12:25

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von Lorca »

Hallo zusammen,

erst einmal ganz herzlichen Dank für den "Zunami" an Antworten. :D
OK, ich habe verstanden das es müßig ist, darüber weiter zu reden.

Nur eines, da bin ich dakor mit vielen von Euch:
Mittlerweile sollte LAZARUS den Standard setzen, und Delphi sich nach Lazarus richten.
Wenn man mit Delphi Geld verdienen möchte, und dem gegenüber eine kostenlose Entwicklerplattform zur Verfügung steht, die um ein vielfaches mächtiger ist als Delphi, sollte man sich überlegen was man Falsch macht wenn sich alle für Lazarus entscheiden, und damit viele Tausend Euro sparen.
Aber so sind die meisten Menschen nun einmal. Nur das, was wirklich richtig viel Geld kostet, kann auch nur gut sein. Was kostenlos ist, kann nichts taugen.

Mein Votum: LAZARUS

Gruß
Lorca

sstvmaster
Beiträge: 575
Registriert: Sa 22. Okt 2016, 23:12
OS, Lazarus, FPC: W10, L 2.2.6
CPU-Target: 32+64bit
Wohnort: Dresden

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von sstvmaster »

Ja so ist es.

Wenn es wirklich gewollt wäre müsste man aus Lazarus und dem FPC die, ganzen Delphi und auch Turbo Pascal usw., Abhängigkeiten entfernen.
Somit müsste ein Fork entstehen. Aber wer hat dann von dem Entwicklern wirklich Lust 2 Systeme zu pflegen. Ich denke das wird der Grund sein.

Dann können wir nur versuchen die Entwickler zu überzeugen.
LG Maik

Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von wp_xyz »

Ihr macht es euch mit der Verteufelung der Delphi-Kompatibilität zu leicht. Wenn Lazarus völlig inkompatibel zu Delphi wäre, dann wäre Lazarus nicht da, wo es heute ist. Wer schon einmal ein Delphi-Projekt nach Lazarus portiert hat, hat schon darüber geflucht, dass die Lazarus-Version nicht kompiliert oder gar abstürzt, weil etwas völlig anders funktioniert.

Natürlich darf die Delphi-Kompatibilität kein Selbstzweck sein. Delphi ist nicht fehlerfrei, und es besteht seitens der Lazarus-Entwicklung kein Zwang, die Fehler zu kopieren. Die Frage ist halt: Was ist ein Fehler? Es gibt Fehler, die sind eindeutig Bugs - und dazu würde ich auch das Verhalten der DBNavigator-Buttons zählen -, und da gibt es keinen Grund, sie nicht zu beheben, auch wenn Delphi sich anders verhält. Dann gibt es Fehler, wo man streiten kann, ob es überhaupt Fehler sind - in diesem Fall wird die Delphi-Kompatibilität häufig als Entscheidungskriterium genommen. Andererseits könnten diese Pseudo-Fehler schon lange in Lazarus existieren, so dass man in Kauf nehmen müsste, bei einer Behebung existierenden Lazarus-Code zu brechen, dann bliebe eine Delphi-Inkompatibilität außer Acht. Es ist eine schwierige Entscheidung, bei der in der Regel immer jemand mit der Lösung unzufrieden ist.

Generell aber, wenn ihr hier schon entscheidet, der Fehler würde wegen des Delphi-Kompatibilitäts-Arguments eh nicht behoben, und ihn deshalb nicht an den Bug-Tracker meldet, wird sich SICHER nichts ändern. Es ist nun mal so, dass die meisten Entwickler nicht im Forum mitlesen, und im deutschen schon gleich gar nicht. Ich selbst könnte es zwar beheben, will mir aber nicht auch noch die DB-Komponenten auf den Rücken binden.

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: TDBNavigator: Insert ist aktiv im Modus "dsEdit"

Beitrag von theo »

@wp_xyz; Sehe ich auch so.
Ich kann mir auch vorstellen, dass die "Reparatur" des TDBNavigator ein idealer Fall ist, um direkt einen Patch in den Bugtracker zu legen.
U.u. könnte man das ja konfigurierbar machen in den "Options" (navAutoUpdateButtons oder so), damit es keine Diskussionen über die Kompatibilität gibt.
Ich denke, der Aufwand wäre überschaubar für jemanden, der dieses Problem behoben haben möchte.
Die eigentlichen Lazarus Entwickler sehen da vielleicht nicht so eine Priorität.
Also Patch ab! :lol:

Antworten