AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

SQL Query erweitern?

Ein Thema von HCB · begonnen am 9. Jan 2025 · letzter Beitrag vom 10. Jan 2025
 
HCB

Registriert seit: 12. Feb 2020
216 Beiträge
 
Delphi 12 Athens
 
#1

SQL Query erweitern?

  Alt 9. Jan 2025, 17:09
Datenbank: Access mdb • Version: 2003 • Zugriff über: SQL / Delphi FireDac
Hallo Profis,
ich habe dank euerer Hilfe diese funktionierende SQL Abfrage:
Delphi-Quellcode:
SELECT
    Dok.ABFDocAuftragNr,
    Dok.ABFDocDatum,
    Dok.ABFDocKundeKurzbez,
    Dok.ABFDocNetto,
    Pos.ABFPosBuchNetto,
    Pos.ABFPosEKPreis,
    Pos.ABFPosBuchNetto / Pos.ABFPosMenge as EPreis,
    EPreis- Pos.ABFPosEKPreis as Erloes,
    Pos.ABFPosMenge as bestellt,
    Pos.ABFPosArtNr,
    Pos.ABFPosName1,
    (SELECT
       SUM(subPos.ABFPosMenge)
     FROM
       ABFDok subDok
     INNER JOIN
       ABFPos subPos ON subDok.ABFDocID = subPos.ABFPosdocID
     WHERE
       subDok.ABFDocAuftragNr = Dok.ABFDocAuftragNr AND
       subPos.ABFPosArtNr = Pos.ABFPosArtNr AND
       subDok.ABFDocOptFertig = false AND
       subDok.ABFDocVisType = 2 AND
       subPos.ABFPosEPreis > 0 AND
       subPos.ABFPosType IN (0,7) AND
       subPos.ABFPosNr <> ''
    ) AS geliefert
FROM
    ABFDok Dok
INNER JOIN
    ABFPos Pos ON Dok.ABFDocAuftragID = Pos.ABFPosDocID
WHERE
    Dok.ABFDocOptFertig = false AND
    Dok.ABFDocVisType = 1 AND
    Pos.ABFPosEPreis > 0 AND
    Pos.ABFPosType IN (0, 7) AND
    Pos.ABFPosNr <> ''
order by Dok.ABFDocAuftragNr;
'
nun möchte ich noch den aktuellen Lagerbestand 'ArtBestand' aus der Tabelle 'ArtMenge' in die Abfrage einfügen, was mir nicht gelingt. Ich habe ein zusätzliches inner join eingefügt wie hier zusehen ist:
Delphi-Quellcode:
SELECT
    Dok.ABFDocAuftragNr,
    Dok.ABFDocDatum,
    Dok.ABFDocKundeKurzbez,
    Dok.ABFDocNetto,
    Pos.ABFPosBuchNetto,
    Pos.ABFPosEKPreis,
    Pos.ABFPosBuchNetto / Pos.ABFPosMenge AS EPreis,
    EPreis - Pos.ABFPosEKPreis AS Erloes,
    Pos.ABFPosMenge AS bestellt,
    Pos.ABFPosArtNr,
    Pos.ABFPosName1,
    (SELECT SUM(subPos.ABFPosMenge)
     FROM ABFDok subDok
     INNER JOIN ABFPos subPos ON subDok.ABFDocID = subPos.ABFPosdocID
     WHERE subDok.ABFDocAuftragNr = Dok.ABFDocAuftragNr
       AND subPos.ABFPosArtNr = Pos.ABFPosArtNr
       AND subDok.ABFDocOptFertig = False
       AND subDok.ABFDocVisType = 2
       AND subPos.ABFPosEPreis > 0
       AND subPos.ABFPosType IN (0, 7)
       AND subPos.ABFPosNr <> '') AS geliefert,
    
    ArtMenge.ArtBestand

FROM
    ABFDok Dok
INNER JOIN
    ABFPos Pos ON Dok.ABFDocAuftragID = Pos.ABFPosDocID

    INNER JOIN
    ArtMenge ON Pos.ABFPosArtNr = ArtMenge.ArtMengeNr

WHERE
    Dok.ABFDocOptFertig = False
    AND Dok.ABFDocVisType = 1
    AND Pos.ABFPosEPreis > 0
    AND Pos.ABFPosType IN (0, 7)
    AND Pos.ABFPosNr <> ''
ORDER BY
    Dok.ABFDocAuftragNr;
Ich erhalte hier die folgende Fehlermeldung:
Delphi-Quellcode:
Syntaxfehler (fehlender Operator) in Abfrageausdruck 'Dok.ABFDocAuftragID = Pos.ABFPosDocID
INNER JOIN
ArtMenge ON Pos.ABFPosArtNr = ArtMenge.ArtMengeNr
'
Kann mir hier wieder jemand helfen? Ich freue mich.

LG Harry
P.S. Irgendwie lassen sich die Zeilen innerhalb des Delphi Codes nicht farblich markieren.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz