Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Optionsfeld in Listenansicht des Formulares

Begonnen von dolpho, August 13, 2020, 10:46:10

⏪ vorheriges - nächstes ⏩

MzKlMu

#15
Hallo,
Zitat von: undefined(Oh je - ich fürchte, dass diese Aussage auf Kritik stoßen wird.)
natürlich stößt diese Aussage auf Kritik. Mir jedenfalls ist ein solcher Bug nicht bekannt.
Wenn der VBA Code in einem Endlosformular das richtige Feld referenziert und im VBA Code auch auf den richtigen Datensatz verwiesen wird, wird auch nur der richtige Datensatz geändert. Es gibt nicht den geringsten Grund in Endlosformularen auf VBA Zuweisungen und Berechnungen zu verzichten.

@dolpho
Das Feld muss zwingend gebunden sein, sonst funktioniert das nicht.
Es wäre also erst mal zu prüfen, warum sich der Haken nicht setzen lässt, wenn das Feld gebunden wird.

Eine Datenbank kannst Du über den Button "Attachments and other options" ganz unten hochladen.
Die Datenbank sollte vorher komprimiert/repariert (Access Dienstprogramm) werden und dann muss diese noch gezippt werden.
Gruß Klaus

dolpho

Sie dürfen in diesem Board keine Dateianhänge sehen.

crystal

Hallo dolpho,
genau das ist ja das Problem.
der Status wird zwar für den einen DS geändert (weil der Status gebunden ist), aber die ungebundenen Optionsfelder ändern sich "überall", weil sie eben nicht gebunden sind.
Quasi nach dem Schema
- wenn gebunden: mach was im aktuellen Datensatz
- wenn nicht gebunden: mach was in allen Instanzen des Formulars (also eigentlich nur optisch).

Bitte probiere, den Status im Endlos-Formular bzw. in der Listen-Darstellung direkt zu binden (s. vorige Antwort) und auf eine "Berechnung" bzw. Zuweisung per VBA zu verzichten.

Ich habe dieses Problem selbst schon oft gehabt und bin manchmal schier verzweifelt. Ich hatte nie vernünftigen Erfolg, es sei denn, ich habe die zu "berechnenden" Felder gebunden und eine möglicht einfache/direkte Darstellung gewählt.

Gruß nochmal,
crystal
Wer Fehler in meinen Antworten findet, darf sie behalten, muss sie aber kommentieren. ;-)
Dies ist keineswegs arrogant gemeint, sondern soll nur unterstreichen, dass meine Antworten - natürlich - nicht immer fehlerfrei sind und sein können.
Devise: bitte immer erst selbst probieren!

Aus gesundheitlichen Gründen nur noch selten dabei...

DF6GL

#18
Hallo,

-- das Kontrollkästchen im Formular muss an das Tabellenfeld "Teststaus" gebunden werden. (Leider wiederholt ignoriert)

-- Der Datentyp des Tabellenfeldes "Teststatus" muss in "Ja/Nein" geändert werden. (KKs sind nun mal vom Datentyp "Boolean")

-- Die filternde Datenherkunft des Formulars ist kontraproduktiv.  Datenherkunft auf Tabellenamen einstellen.



Wenn

ZitatIm Hintergrund möchte ich für den angeklickten Datensatz den Status von "2" auf "3" ändern.

der Status mehr als zwei Zustände hat, so ist dies mit einer zusätzlichen "Nachschlage"-Tabelle (tbl_Status) und einem (gebundenen) Kombifeld in Formular zu realisieren, das seine Listenfeld-Daten aus der tbl_Status bezieht.


Alternativ kann auch eine Optionsgruppe  mit entspr. vielen Optionsfeldern (hier 4 ,  0 bis 3) eingesetzt werden, wobei auch die Optionsgruppe an das Statusfeld (in diesem Fall Datentyp Long) gebunden und die einzelnen Optionsfelder auf den Statuswert gesetzt werden müssen.

Und was heißt "Im Hintergrund"?
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

MzKlMu

#19
Hallo,
Dein Vorhaben ist in dieser Form schlichtweg unmöglich. Mit dem Klick in das Ja/Nein Feld setzt Du ja direkt das Feld "Teststatus" des Datensatzes der den Fokus hat.
Das Ja/Nein Feld gibt es aber nicht in der Tabelle also muss es ungebunden bleiben, was dann in allen Datensätzen angezeigt wird.

Du musst Dir eine andere Vorgehensweise überlegen, so geht es definitiv nicht.

Du kannst eine Optiongruppe verwenden wie von crystal vorgeschlagen oder Du verwendest ein Kombinationsfeld für den Status. Mit dem Ja/Nein Feld geht es jedenfall nicht.
Ich habe Dein Beispiel mal mit der Optionsgruppe erweitert und angehängt.

Ist der Status eigenlich nur die Zahl, oder gibt es auch einen Text zum Status ?
Gruß Klaus

crystal

@MzKlMu
Ja genau: WENN das Feld gebunden ist...

Ungebundene Felder werden in Access leider (nach Änderung) in allen DS des Endlos- oder Listen-Formulars dargestellt.
Das betrachte ich weiterhin als Bug in Access (oder zumindest als nicht durchdachte/inkonsequente Implementierung), zumal es keine Möglichkeit gibt, explizit nur den einen (von mehreren) dargestellten Datensätzen zu referenzieren (z. B. durch Me oder ActualRecord oder sowas. Access trennt hier m. E. nicht sauber und wendet Änderungen, die in einer einzelnen Instanz eines Endlos-Formulars gemacht werden, ungewollt und unerwartet auf alle Instanzen an. Wenn das kein Bug ist...

Gruß,
crystal
Gruß,
crystal
Wer Fehler in meinen Antworten findet, darf sie behalten, muss sie aber kommentieren. ;-)
Dies ist keineswegs arrogant gemeint, sondern soll nur unterstreichen, dass meine Antworten - natürlich - nicht immer fehlerfrei sind und sein können.
Devise: bitte immer erst selbst probieren!

Aus gesundheitlichen Gründen nur noch selten dabei...

MzKlMu

Hallo,
@crystal
In einem Endlosformular gibt es die Steuerelelement nur 1x, die werden nur entsprechend der Datensatzzahl mehrfach dargestellt. Wenn nun ein ungebundenes Feld eingefügt wird, so hat das ja keinen Bezug zu einem Datensatz und muss demzufolge in allen Zeilen den gleichen Inhalt zeige. Das ist völlig logisch und ist mit Sicherheit kein Bug.
Wenn Du in einem ungebunden Feld Änderungen machts, werden diese niemals auf Datensätze angewendet, das ist einfach unmöglich.
dolpho setzt ja mit dem ungebunden Hakenfeld ein ganz anderes gebundenes Feld des Datensatzes der den Fokus hat, also dort wo der Haken geklickt wird. Das Verhalten des Ja/Nein Feldes ist völlig logisch und richtig und kein Bug. Der vorgesehene Ablauf ist falsch und muss angepasst werden.
Du hast ja mit dem Hinweis auf die Optionsgruppe schon einen Weg aufgezeigt.
Gruß Klaus

DF6GL

Hallo,

ich will nicht auch noch ellenlange Blogs hier animieren, aber:

Zitat von: undefinedUngebundene Felder werden in Access leider (nach Änderung) in allen DS des Endlos- oder Listen-Formulars dargestellt.

Ungebundene Steuerelemente zeigen das an, mit dem sie initialisiert werden/wurden. Anzeige-Änderungen können nicht passieren, weil niemand "da" ist, der die Anzeigewerte beeinflusst.  Und das ist kein Fehler, sondern logische Konsequenz des Entwicklungskonzepts.  Wenn in einem Endlosform ein ungebundenes Steuerelement im Detailbereich (!) steht, dann existiert dieses Steuerelement insgesamt nur einmal, obwohl es bei/mit jedem DS angezeigt wird, also lediglich Klone seiner selbst darstellt.


Zitat von: undefinedDas betrachte ich weiterhin als Bug in Access

Das kannst Du schon so betrachten, ist aber eher die Ignoranz der Access-Funktionalität, bzw. Spezifikationen.


Zitat von: undefinedAccess trennt hier m. E. nicht sauber und wendet Änderungen, die in einer einzelnen Instanz eines Endlos-Formulars gemacht werden, ungewollt und unerwartet auf alle Instanzen an

Quatsch. 

Zitat von: undefinedDatensätzen zu referenzieren

Derjenige Datensatz ist referenziert, der den Fokus besitzt. Wenn ein anderer DS im Formular angesprochen werden soll, muss der Focus auf den entspr. gesetzt werden oder man bemüht das Form-Recodset(clone), um Datenänderungen an bestimmter Stelle zu erreichen.



Das soll jetzt aber jetzt reichen..

Ich empfehle eh, solche Grundsatzdiskussionen in Zukunft in der Rubrik "Smalltalk" zu führen...
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

dolpho

Guten Morgen zusammen,
vielen Dank für die eifrige Diskussion, die ich hier entfacht habe.
Das Steuerelement Optionsgruppe war mir bisher nicht geläufig, dazu arbeite ich einfach zu wenig an der Erstellung von Datenbanken.
Dieses genügt aber meinen Ansprüchen und ich werde das Beispiel von Klaus (Vielen Dank dafür!) für meine Zwecke einsetzen.
Viele Grüße aus Mittelfranken
Dolpho