[Gelöst] Es wurden zuviele Schlüsselfelder spezifiziert

13. März 2008 09:50

Ich bins mal wieder mit meinem hoffentlich letzten Problem...

Ich bin immer noch an meiner Main/Subform, aus irgend einem Grund arbeitet meine Kopierfunktion nicht mehr. Ich erhalten die Fehlermeldung aus dem Screenshot.

[glow=red]Weiss jemand was diese Fehlermeldung bedeutet?[/glow]

Die FEhlermeldung kommt wenn ich meine Kopierfunktion starten will (ONPush Trigger eines Buttons in der Form):

Code:
IF NOT rec_LAGE000014.GET(ARTIKELNR,rec_LAGE000014.ARTIKELNR) THEN BEGIN
  rec_LAGE000014.ARTIKELNR := ARTIKELNR;
  rec_LAGE000014.VERKAUF1 := VERKAUF1;
  rec_LAGE000014.BEZ1 := BEZ1;
  rec_LAGE000014.BEZ2 := BEZ2;
  rec_LAGE000014.VERKAUF := VERKAUF;
  rec_LAGE000014.BESTAND := BESTAND;
  rec_LAGE000014.LIEFERANT_NR := LIEFERANT_NR;
  rec_LAGE000014.FWEINKAUF := FWEINKAUF;
rec_LAGE000014.INSERT(TRUE);
CurrForm.UPDATE;
END;


das hatte so schon funktioniert, nur ich verstehe nicht warum das plötzlich nicht mehr geht.

Es soll von der Tabelle LAGE0000 in Tabelle LAGE000014 kopiert werden.

Ein Bild vom Debugger habe ich auch noch reingemacht falls das noch was bringt... Bin echt ratlos, war heilfroh das die Funktion ging und nun diese komische FEhlermeldung... HILFE! :-)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von tesarolle am 13. März 2008 11:02, insgesamt 1-mal geändert.

13. März 2008 09:55

Die Tabelle hat als Primärschlüssel (zumindest im Standard) nur ein Feld.

Du bildest den Schlüssel aber mit zwei Feldern:
rec_LAGE000014.GET(ARTIKELNR,rec_LAGE000014.ARTIKELNR) .

Ich glaube, so müsste es richtig sein:
rec_LAGE000014.GET(rec_LAGE000014.ARTIKELNR);

Scheint mir so, als hättest du GET mit SETRANGE ein bisschen durcheinander gewürfelt ;-)

13. März 2008 10:10

Mir scheint so, als wäre ich ohne Deine Hilfe heute mal wieder ausgeflippt auf der Suche nach dem Fehler!

Nun gehts!

Noch eine Anmerkung,

Der Witz ist halt, wenn ich Deine Zeile nehme:

Code:
rec_LAGE000014.GET(rec_LAGE000014.ARTIKELNR);


Dann funktioniert mein Command Button nur 1x! Also das kopieren funzt dann nur 1x.

Nehme ich den Code von Michael der mir in nem anderen Thread geholfen hat

Code:
rec_LAGE000014.GET(ARTIKELNR)


dann funktioniert er beliebig oft, verstehen tue ich das nicht. Ist doch dasselbe?

13. März 2008 10:45

tesarolle hat geschrieben:Ist doch dasselbe?


Nein :-)
Version 1 greift auf den Wert ARTIKELNR der Tabelle rec_LAGE000014 zu.
Version 2 greift auf den Wert ARTIKELNR der Tabelle REc zu - das ist der Record, der im Augenblick auf deiner Form angezeigt wird.

Das sind völlig unterschiedliche Datenquellen.

13. März 2008 11:02

OK, aber warum funktioniert die Kopierfunktion beim ersten mal, obwohl Sie ja eigentlich die Falsche Datenquelle abgreift? Eigentlich dürfte das da gar nicht funktionieren. Es funktioniert aber jedesmal genau 1x wenn ich den Navision Client neu starte.

Naja ist ja nicht weiter tragisch, dank Deiner Hilfe funktioniert es jetzt immer!

Vielen lieben Dank nochmal!