Änderungen an den SLE's in einer Dialog-Fenster feststellen [erledigt]

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Änderungen an den SLE's in einer Dialog-Fenster feststellen [erledigt]

Beitrag von Wolfgang_B »

Hi,

gibt es irgendwas Schlaues, das feststellt, ob sich in irgendeiner SLE in der Dialogbox geändert hat?

Problem: Ich möchte einen Stammsatz, der in einer Dialogbox angezeigt wird nur in der DB updaten, wenn sich irgendwas geändert hat.
Zuletzt geändert von Wolfgang_B am Mo, 30. Jul 2018 14:48, insgesamt 1-mal geändert.
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Jan »

Wolfgang,

versuch es doch mal mit :changed.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Wolfgang_B »

Jan,
d
as bezieht sich ja nur auf ein SLE. Ich meinte alle SLE in einer Dialogbox mit einer Abfrage ..., so daß z.B. nur ein Button "SPEICHERN" eingeblendet wird wenn irgendwo in der Dialogbox Daten geändert wurden, oder die Abfrage, daß noch nicht gespeichert wurde.
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Manfred »

dann durchläufst Du eben alle SLE und fragst ab. Benutze dafür ein Array, in das nacheinander alle abzufragenden Objekte stehen. Dann gehst Du sie jedesmal mit Aeval durch und prüfst, ob eins geändert wurde. Wenn ja, dann Abbruch und Reaktion darauf.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Wolfgang_B »

hm, ok. Dachte, daß das vielleicht eleganter geht.
Aber erstmal Danke!
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Jan »

Wolfgang,

Du kannst natürlich auch eine Variable lChanged := .F. setzen. Und im :killInputFocus der einzelnen SLE fragst Du jeweils das :changed ab. Und wenn ja, setzt Du lChanged auf .T. . Dann mußt Du für den gesamten Dialog nur die eine Variable berücksichtigen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Wolfgang_B »

dummerweise frage ich die SLE nicht mit Killinputfocus ab. Aber der Hinweis ist vielleicht trotzdem hilfreich. Ich muß mir mein Knotenkonstrukt (Eingabemaske) mal näher anschauen.

Danke
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Muecke
1000 working lines a day
1000 working lines a day
Beiträge: 623
Registriert: Di, 24. Okt 2006 7:19
Wohnort: Samstagern CH
Hat sich bedankt: 3 Mal
Danksagung erhalten: 9 Mal
Kontaktdaten:

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Muecke »

Hallo Wolfgang

Schau dir mal :notify() an.


Gruss
Thomas
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von brandelh »

Ich führe im Fenster eine Flag mit, die bei Änderungen aus der Keyboard Methode gesetzt wird (egal wo was eingegeben wird, setzt die Flag Variable auf .t.),
nur wenn diese Variable .t. ist, wird geprüft, welches SLE changed ist und Speicher Button wird aktiv.
Gruß
Hubert
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Wolfgang_B »

erstmal Danke an alle. Ich werde die Methode von Manfred probieren, nachdem ich alle SLE's im Array habe.

@Thomas: Mit :notify konnte ich leider nichts anfangen. Die XBase++-Hilfe war in diesem Fall auch nicht hilfreich ...
@Hubert: die Keyboard Methode muss ich mir anschauen. Ich habe damit noch nichts gemacht (ist aber vielleicht empfehlenswert ..)
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Tom »

Ich verwende das - aus reinem Xbase++-Code bestehende - Entwicklungsframework eXpress++ von Roger Donnay, dessen vorgefertigte Dialogklassen und dessen Eierlegendewollmilchsau-Eventhandling so gestaltet sind, dass man mit sehr einfachen Funktionen exzellente Kontrolle über Dialogelemente, ihren Status, Datenzuordnungen und die Datenhistorie hat (aktualisiert ja/nein, Wert vor/nach der Aktualisierung usw.). Dazu kann man mit einfachen Funktionen Abhängigkeiten aktualisieren (Elemente sind verfügbar oder nicht abhängig vom Inhalt anderer Elemente usw.) und vieles, vieles, VIELES mehr. Das ganze für schlappe 99 Dollar. Die beste Softwareinvestition, die ich je getätigt habe. Mit einer Einarbeitungszeit von weniger als zwei Stunden: www.donnay-software.com

Im Übrigen gibt es keinen Plural-Apostroph, nicht einmal im Englischen. Der Plural von SLE schreibt sich so: SLEs.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Manfred »

da müßte sich Wolfgang kurz erinnern, das hatte ich ihm auch schon bei dem letzten Treffen vorgeschlagen express++ ins Auge zu fassen. Für Dich Wolfgang sicherlich das nonplusultra.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Wolfgang_B »

danke Tom für den Hinweis mit dem Plural -> mein Abitur ist schone eine Weile her, damals gabs noch keine SLEs :D

@Manfred - ich wollte eigentlich nichts mehr in die XBASE-Welt investieren. Ich überleg es mir aber nochmal. Vielleicht ist es doch ganz sinnvoll. Gibt es dazu irgendwelche Literatur?
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Manfred »

nur die Hilfe und die Beispiele dazu. Und, natürlich nicht zu vergessen, dieses hervorragende Forum.... :D
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: Änderungen an den SLE's in einer Dialog-Fenster feststellen

Beitrag von Wolfgang_B »

selbstverständlich :D
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Antworten