Berechnung mit Datenbank

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

RobertG
********
Beiträge: 2057
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Berechnung mit Datenbank

Beitrag von RobertG »

Hallo Newbie,

Warum ist die Artikelnummer nicht der Primärschlüssel der Tabelle?
Du brauchst für die Datenbank natürlich jetzt eine weitere Tabelle. In der Tabelle werden neben einem Primärschlüssel der Primärschlüssel "ID" der Tabelle "Artikelliste" als Fremdschlüssel und ein numerische Feld ("Anzahl") geführt.

In einer Abfrage kannst Du natürlich Felder multiplizieren. Nur leider gibt es da einen Aktualisierungsbug, wenn die Felder aus zwei verschiedenen Tabellen kommen. Und das ist bei Dir der Fall. Deshalb musst Du den Einkaufspreis über eine gesonderte Unterabfrage (korrelative Unterabfrage) ermitteln.

Wenn Du das zusammen hast, dann kannst Du in einem Formular die Werte für Anzahl und ID aus der Tabelle "Artikelliste" wählen und erhältst den Preis. Die Artikel kannst Du besser über ein Listenfeld eingeben. Dann werden die Namen angezeigt und die Schlüsselnummern an die darunterliegende Tabelle weiter gegeben.

Angenommen die 2. Tabelle heißt "Kauf" und enthält die Felder "ID", "Anzahl" und "Artikelliste_ID".
Die Abfrage müsste dann so laufen:

Code: Alles auswählen

SELECT "a".*, (SELECT "a"."Anzahl" * "EP" FROM "Artikellsite" WHERE "ID" = "a"."Artikelliste_ID") AS "GPreis" FROM "Kauf" AS "a"
Das ist leider für den Start in die Materie gleich etwas undurchsichtig, geht aber zur Zeit nicht über eine normal zusammenklickbare Abfrage mit gleichzeitiger Möglichkeit zur Dateneingabe.

Gruß

Robert