Ich arbeite mich gerade neu in AvERP ein und wollte den Query-Builder ausprobieren, da ich SQL nicht perfekt beherrsche.
Mein Ziel: Eine Statistik über die Anzahl der bisher verkauften Produkte einer bestimmten Bezeichnung an eine bestimmte Kundengruppe in einem bestimmten Zeitraum. Die Kundengruppe ist über BADRINFO als Gruppe 1 markiert, die Artikelgruppe leider bisher nur über "Bez.".
Ich habe es zunächst direkt über ein Skript versucht, scheine da aber wichtige Parameter zu übersehen oder falsche IDs gewählt zu haben, denn ich bekomme nie das gewünschte Ergebnis (es fehlen etliche Einträge). Falls mir da jemand direkt helfen kann, hier das Skript:
Code: Alles auswählen
select
C.MASKENKEY as "Artikel Nr.",
C.ARTBEZ as "Artikel Bez.",
C.ARTBEZ2 as "Artikel Bez. 2",
SUM(A.MENGE) as "Anzahl"
from BRRCP A
left outer join BSA C on C.ID = A.BSA_ID_ARTNR
left outer join BADR B on B.ID = A.BKUNDE_ID
left outer join BRRC D on D.ID = A.BRRC_ID_RGNR
left outer join BADRINFO E on B.ID = E.BADR_ID_LINKKEY
where (C.ARTBEZ starting with 'target') and
(BKUNDENFOK_ID = 1) and
(D.RECHDATUM >= :VON_DATUM) and
(D.RECHDATUM <= :BIS_DATUM)
group by C.MASKENKEY, C.ARTBEZ, C.ARTBEZ2
order by C.MASKENKEY, C.ARTBEZ, C.ARTBEZ2 desc
Mein zweiter Ansatz war dann, den QueryBuilder zu verwenden. Leider auch erfolglos.
Ich habe alle oben erwähnten Felder ausgewählt, meine sum-Funktion und die Suchbedingungen eingegeben und markiert, was angezeigt werden soll.
Das Problem liegt im Verbinden der Tabellen.
Wenn ich BRRCP als Haupttabelle wähle, kann ich sie mit BRRC und BSA verbinden, aber danach ist Schluss. Ich kann weder BADR mit BADRINFO verbinden noch BRRCP mit BADR. "Verbindungsfelder suchen" gibt keine Treffer, "Alle Möglichkeiten anzeigen" hingegen gibt mir Optionen wie z.B. "V_BRRCP.BRLS_ID_LSNR = V_BRLS.ID", was nichts mit den zu verbindenden Tabellen in "Von Tabelle" und "Zu Tabelle" zu tun hat.
Wo ist der Denkfehler? Gibt es tatsächlich keine Verbindung zwischen BRRCP und BADR (wenn ja, welcher Umweg ist der Sinnvollste?)? Kann ich nur Verbindungen mit der Haupttabelle, in diesem Fall BRRCP, eingeben und keine zwischen BADR und BADRINFO? Was habe ich übersehen?
Für einen Hinweis zu Skript oder QueryBuilder wäre ich dankbar.