Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Iwanai am Mai 25, 2015, 18:17:13

Titel: Recordsource, Unterformular, Daten eingeben
Beitrag von: Iwanai am Mai 25, 2015, 18:17:13
Hallo zusammen,

langsam bin ich am verzweifeln: Für ein Unterformular möchte ich mit einer SQL-Abfrage aus einer Tabelle Daten anzeigen. Auch das Eingeben von neuen Datensätzen soll in diesem Unterformular möglich sein.

Mein Ansatz:

strSql = "select feld1, feld2... from tabelle;"
Mein.Formular.Recordsource = strSql

(Zusatzinfo: Die SQL-Abfrage enthält zwei globale Variablen in der Where-Klausel.)

Die Lösung funktioniert nur, wenn das Attribut des Unterformulars "Daten eingeben" auf "Nein" gesetzt ist. Wenn "Daten eingeben" auf "ja" steht, werden die Daten im Unterformular nicht aktualisiert/angezeigt.

Wo liegt mein Fehler?

Access Version: 2010

Vielen Dank im Voraus

Iwanai
Titel: Re: Recordsource, Unterformular, Daten eingeben
Beitrag von: MzKlMu am Mai 25, 2015, 18:22:52
Hallo,
ZitatWenn "Daten eingeben" auf "ja" steht,
das ist dann normal. Wenn das auf Ja steht werden grundsätzlich keine vorhanden Datensätze angezeigt.
Titel: Re: Recordsource, Unterformular, Daten eingeben
Beitrag von: Iwanai am Mai 25, 2015, 18:29:36
Wenn "Daten eingeben" auf "Nein" steht, ist die Option "Neuer (leerer) Datensatz" ausgeblendet.
Titel: Re: Recordsource, Unterformular, Daten eingeben
Beitrag von: MzKlMu am Mai 25, 2015, 18:32:35
Hallo,
zeige bitte mal die Abfrage komplett.
Titel: Re: Recordsource, Unterformular, Daten eingeben
Beitrag von: Iwanai am Mai 25, 2015, 18:46:52
Hallo Klaus,

hier die Abfrage:

"select  candidates.candidate, candidates.candidate_state, candidates.candidate_date, candidates.samid, candidates.itemid from candidates where candidates.itemid = gbl_itemid and candidates.samid = gbl_samid;"

(gbl_itemid und gbl_samid = globale Variablen). Tabelle Candidates ist eine Oracle-Tabelle mit Auto-PK (+1 sequnce und trigger) definiert.

Danke und Gruß
Titel: Re: Recordsource, Unterformular, Daten eingeben
Beitrag von: MzKlMu am Mai 25, 2015, 18:51:59
Hallo,
Variable müssen verkettet werden.
"select  candidate, candidate_state, candidate_date, samid, itemid from candidates where itemid = " & gbl_itemid & " and samid = " & gbl_samid
Welcher Datentyp haben denn die Variablen ?
Titel: Re: Recordsource, Unterformular, Daten eingeben
Beitrag von: Iwanai am Mai 25, 2015, 19:03:55
Hallo Klaus,

den Sinn der Variablenverkettung habe ich nicht ganz verstanden. Allerdings habe ich soeben mit "select * from ..." statt der Nennung einzelner Attribute experimentiert und die Aktualisierung des Unterformulars scheint zu funktionieren; auch die Option "Neuer (leerer) Datensatz" ist nun aktiv. Allerdings bekomme ich jetzt einen ODBC-Fehler beim Versuch, neuen Datensatz einzugeben:

Einfügen in einer verknüpften Tabelle "CANDIDATES" fehlgeschlagen. Oracle: cannot insert NULL into ("CANDIDATES"."ITEMID") (#1400).
Titel: Re: Recordsource, Unterformular, Daten eingeben
Beitrag von: MzKlMu am Mai 25, 2015, 19:07:54
Hallo,
lasse Dir im Direktbereich mal den Inhalt von strSql ausgeben, dann siehst Du was entstanden ist. Und siehst auch ob die Variablen Inhalt haben.