0
Ein bestimmtes Feld aus einer anderen Tabelle kopieren
Hallo,
ich komme mal wieder nicht weiter. Bitte um Hilfe.
Ich habe eine Tabelle "Druckpreiskalkulation" mit einem Feld DruckartikelFront mit dem Wert "S01001" (also eine Artikel-Nr).
In einer anderen Tabelle "PreisePP" habe ich das Feld "Druckartikel" (Artikel-Nr.) und ein Zahlenfeld "Preis". Also eine einfache Artikelliste.
Nun möchte ich in der ersten Tabelle den passenden Preis zum Feld DruckartikelFront darstellen. Über eine Verknüpfung möchte ich nicht gehen, da sich die Artikel-Nr. in der ersten Tabelle durch diverse Eingaben selbst berechnet.
Mit select bekomme ich es nicht hin, da ninox mir dann sagt: der Ausdruck liefert mehrere Ergebnisse zurück.
let myArtF := DruckartikelFront;
DruckpreisFront := select PreisePP where Druckartikel = myArtF).Preis
Wenn jemand eine Idee hat, wäre das toll :-)
Gruss
Frauke
Kleine Beispieldatenbank hier als link:
ich komme mal wieder nicht weiter. Bitte um Hilfe.
Ich habe eine Tabelle "Druckpreiskalkulation" mit einem Feld DruckartikelFront mit dem Wert "S01001" (also eine Artikel-Nr).
In einer anderen Tabelle "PreisePP" habe ich das Feld "Druckartikel" (Artikel-Nr.) und ein Zahlenfeld "Preis". Also eine einfache Artikelliste.
Nun möchte ich in der ersten Tabelle den passenden Preis zum Feld DruckartikelFront darstellen. Über eine Verknüpfung möchte ich nicht gehen, da sich die Artikel-Nr. in der ersten Tabelle durch diverse Eingaben selbst berechnet.
Mit select bekomme ich es nicht hin, da ninox mir dann sagt: der Ausdruck liefert mehrere Ergebnisse zurück.
let myArtF := DruckartikelFront;
DruckpreisFront := select PreisePP where Druckartikel = myArtF).Preis
Wenn jemand eine Idee hat, wäre das toll :-)
Gruss
Frauke
Kleine Beispieldatenbank hier als link:
9 Antworten
-
Auf die Schnelle: Ich sehe in der select-Zeile hinter myArtF eine Klammer, die m. E. nicht dahin gehört.
-
Versuch doch mal ...
let myArtF := DruckartikelFront;
DruckpreisFront := first(select PreisePP where Druckartikel = myArtF).Preis -
Nein schreib bei der Tabelle Druckpreiskalkulation nach datensatzänderung aber bitte nicht auf das Feld Preis sondern nach der änderung von dem feld Druckartikel den Trigger setzen
let myArtF := DruckartikelFront;
for p in select PreisePP where Druckartikel = myArtF do
let myPreis := p.Preis;
DruckpreisFront := myPreis
end -
Oh Axel war schneller so gehts natürlich auch.
-
Scheint zu funktionieren! Werde jetzt mal alle Felder die ich brauche so definieren.
Ganz herzlichen Dank!!! -
Es funktionieren beide Lösungen :-)
-
Wobei magics Lösung wohl effizienter ist, wenn man mehrere Datenfelder auslesen und übertragen will. Allerdings ist mir nicht klar, wozu in dem Beispiel p.Preis erst in die Variable myPreis übertragen und dann von dort in das Datenfeld DruckpreisFront eingelesen wird:
let myPreis := p.Preis;
DruckpreisFront := myPreis
Das müsste m. E. auch direkt gehen:
DruckpreisFront = p.Preis
Also, im gegebenen Zusammenhang:
let MyArtF := DruckartikelFront;
for SatzNr in select PreisePP where Druckartikel = myArtF do
DruckpreisFront := SatzNr.Preis;
DatenfeldX := SatzNr.FeldX;
NocheinFeld := SatzNr.NochnFeld;
[...]
end
Ich will keineswegs klugscheißen, würde das aber gerne klären, da ich mir selbst nie ganz sicher bin, ob ich nicht vielleicht einen Denkfehler begangen oder etwas übersehen habe.
Content aside
- vor 6 JahrenZuletzt aktiv
- 9Antworten
- 4824Ansichten