Neuigkeiten:

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

Mobiles Hauptmenü

Kombifeld Wert aus Tabelle zuweisen, wenn neuer Datensatz geht nicht

Begonnen von derilzemer, Juli 12, 2017, 21:19:56

⏪ vorheriges - nächstes ⏩

derilzemer

Hallo,
ich wollte 5 Kombifeldern einen Wert zuweisen, wenn ein neuer Datensatz angelegt wird.
Dazu gibt es ja die Möglichkeit mit ItemData. Beispiel:
Ich habe cboSprache, da habe ich in den Eigenschaften des Kombifeldes unter Standardwert =[cboSprache].[itemdata](12) eingegeben. 12 ist die ID des Datensatzes in der zu befüllenden tblSprache, ein "-". Wenn ich Formular nun einen neuen Datensatz anlege, dann steht der Wert so auch im Kombifeld cboSprache.
Genau nach dem gleichen Muster habe ich nun noch 4 weitere Kombifelder, identische Eigenschaften, gleiche gebundene Spalten etc. Ich habe dann den =[cboSprache].[itemdata](12) dem anderen Kombifeld und Tabelle entsprechend  angepasst z.B. =[cboDrucktechnik].[itemdata](6). Aber ich bekomme nur im Kombifeld cboSprache den Standardwert eingetragen. Der Standardwert an sich für alle diese Kombifelder ist übrigens auch "-". Ich habe schon gedacht, ich habe eventuell eine falsche ID, aber, dem ist nicht so. Was läuft da schief, oder übersehe ich schon wieder eine Kleinigkeit?



Grüße und Dank im voraus
Andreas

el_gomero

Hallo Andreas,

hatten wir das nicht schon mal ... Kombifelder sind zum Auswählen von Werten da. Denen wird kein Wert zugewiesen. Die Datenquelle sollte aus einer Tabelle / Abfrage kommen, deren Werte, sprich Datensätze durchaus erweitert werden können.
Gruß
Jürgen


Hilfe nach bestem Wissen, ohne Anspruch auf Richtigkeit und Vollständigkeit.
*feedback erwünscht*
Bitte Tipps lesen

derilzemer

Hi Jürgen,
das stimmt. Ich drücke es wahrscheinlich wieder mal falsch aus.
Ich will nur, dass beim erstellen eines neuen Datensatzes eben ein Wert aus der Tabelle (welchen man normal durch das Kombifeld auswählen kann) im Kombifeld drin steht. Da ist wohl der Ausdruck Standardwert von mir falsch gewählt. Hintergrund ist ja nur, wenn man nichts auswählt, hat man nie die Gewissheit, ob man es vergessen hat im Kombifeld etwas auszuwählen.
Nichts anderes habe ich ja im mit dem Standardwert für das Kombi cboSprache gemacht und dort funktioniert es ja auch :(. Oder verwechsel ich da mal wieder etwas oder denke falsch?
Grüße und Dank im voraus
Andreas

el_gomero

dann reicht es doch in das Textfeld den gewünschten Wert vor zu belegen. Das Kombifeld kann genutzt werden, falls ein anderer Wert gewählt werden soll. 
Gruß
Jürgen


Hilfe nach bestem Wissen, ohne Anspruch auf Richtigkeit und Vollständigkeit.
*feedback erwünscht*
Bitte Tipps lesen

Beaker s.a.

Hallo Andreas,
Wenn du die Standardwerte (IDs) für die Kombis doch kennst, warum
trägst du die dann nicht auch gleich in die Eigenschaft "Standardwert"
(DefaultValue) ein?
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

derilzemer

Hi,
wenn du damit meinst, im Standardwert der Feldeigenschaften ="-", dann nein, das reicht nicht. Zumindest habe ich nach dem einrichten dieser Option keinen Eintrag "-" im Kombifeld, wenn ich einen neuen Datensatz erstelle. Es bleibt leer und meckert auch weiterhin, dass der Datensatz kann nicht hinzugefügt oder geändert werden, da ein Datensatz in der Tabelle tblRSMotive mit diesem Datensatz in Verbindung stehen muss.

Grüße und Dank im voraus
Andreas

derilzemer

Hi,
Zitat von: Beaker s.a. am Juli 12, 2017, 22:46:34
Wenn du die Standardwerte (IDs) für die Kombis doch kennst, warum
trägst du die dann nicht auch gleich in die Eigenschaft "Standardwert"
(DefaultValue) ein?
gruss ekkehard
Das habe ich auch versucht =[cboRSMotive].[Standardwert](305)
Ich habe dann auch aus Unkenntnis heruas =[tblRSMotive].[Standardwert](305) versucht. Aber auch da bleibt dsa Feld leer. Ich mache sicher wieder einen kleinen Fehler, der so lapidar ist, dass ich danach wieder den Kopf schütteln werde.
Grüße und Dank im voraus
Andreas

Beaker s.a.

Hallo Andreas,
1. die Eigenschaft heisst .DefaultValue
2. wenn der sich nicht alle paar DS ändert brauchst du den aber nicht per
VBA zuweisen, sondern einfach eintragen, - siehe Anlage.
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

derilzemer

Hi,

wenn ich defaultValue eingegeben habe, dann hat er es automatisch auf Standardwert abgeändert :). Aber, die ID wechselt janciht wirklich, höchstens man würde irgendwie alles umbauen und komplett neu struktiriern oder was weiss ich. Ich habe jetzt die ID eingetragen und gut, alles funzt. Resumé:
Das war eigentlich wieder mal zu einfach bzw. ich zu kompliziert, habe da wohl Raketenwissenschaft dahinter vermutet ::)
Danke dafür.
Grüße und Dank im voraus
Andreas