15. November 2008 16:34
Hallo liebe Navision-Gemeinde,
für ein Projekt an der Uni müssen wir in Navision einige Tabellen und Formulare erstellen, die unter anderem auch in Beziehung stehen.
Nachdem wir schon zich Probleme gelöst haben, stehen wir erneut vor einem scheinbar unüberwindbarem Problem und sind dieses mal echt ratlos.
Wir haben in Navision zwei Tabellen angelegt, von denen die Primärschlüsselspalten der ersten Tabelle im Fremd- und Primärschlüssel der zweiten Tabelle vorkommt. Dazu haben wir in der zweiten Tabelle bei den Fremdschlüsselspalten die Eigenschaft TableRelation verwendet. ValidateTableRelation steht auf Yes.
Insgesamt haben wir einen fünfteiligen Schlüssel in der ersten Tabelle (5 Integer Werte) und einen sechsteiligen Schlüssel in der zweiten Tabelle (die 5 Primärschlüssel aus Tabelle 1 plus einen weiteren Primärschlüssel aus Tabelle x, somit ensteht eine m:n-Beziehung zwischen Tablle 1 und Tabelle x).
Alles funktioniert wunderbar, außer:
1. Wenn wir in Tabelle 1 einen neuen Datensatz z.B. mit den Schlüsselwerten <10000, 0, 0, 0, 0> eintragen und diesen nun in z.B. <10000,20000,0,0,0> umbenennen möchten, kommt eine Fehlermeldung:
"You cannot rename a record because the old value of the field below is '0',
Field: g2
Table: Table1"
Oder zu Deutsch: "Sie können einen Datensatz nicht umbenennen, da der alte Wert des folgenden Feldes '0' beträgt."
2. Wenn wir in Tabelle 1 einen neuen Datensatz z.B. mit den Schlüsselwerten <20,30,0,0,0> eintragen und diesen nun z.B. in <20,0,0,0,0> umbenennen möchten, kommt eine analoge Fehlermeldung:
"Sie können einen Datensatz nicht umbenennen, da der
neue Wert des folgenden Feldes '0' beträgt." bzw "You cannot rename a record because the
new value of the field below is '0'".
Das erstmalige Eintragen der Datensätze klappt. Auch das Ändern eines Datensatzes mit Schlüssel <20,30,0,0,0> in <20,100,0,0,0> oder eines Datensatzes mit Schlüssel <50,0,0,0,0> in <60,0,0,0,0> klappt problemlos.
Bei den anderen Primärschlüsselspalten haben wir das gleiche Problem, dass sich der Schlüssel von 0 nicht in eine Zahl>0 und von einer Zahl>0 nicht in 0 ändern lässt.
Das Problem konnten wir eingrenzen: Wenn wir ValidateTableRelation in der Tabelle 2 auf No setzen, funktioniert das Umbenennen. Natürlich ändert er aber dann die Datensatze in der Detailtabelle nicht entsprechend um.
Jemand 'ne Idee?
Gruß,
Christoph
Zuletzt geändert von Cepe am 25. November 2008 15:40, insgesamt 1-mal geändert.