SQL-Selektionen

Mehr
9 Jahre 8 Monate her - 9 Jahre 1 Woche her #1313 von ASefrin
SQL-Selektionen wurde erstellt von ASefrin
An vielen Stellen in Orgasoft.NET können mit Selektionen Daten eingegrenzt oder selektiert werden (ReportingCenter, Bestellautomatik, etc.).

Man kann einfach nur Parameter auswählen und diese einschränken und/oder eine SQL-Abfrage hinterlegen. Wenn in einer Selektion ein SQL-Statement hinterlegt wird, dann müssen allerdings unbedingt einige Regeln eingehalten werden:

1. Es muss darauf geachtet werden, dass man im SELECT-Teil keine Aliase verwendet.
2. Der vorgeschlagene Tabellenname im SELECT darf nicht geändert werden, bei Artikel-Selektionen steht also immer HandelsArtikel im SELECT
3. Es müssen alle Felder dieser Tabelle selektiert werden ("*"). Etwaige Einschränkungen bei den Feldern nimmt Orgasoft.NET selbständig vor.
4. Es darf kein DISTINCT, TOP x oder etwas ähnliches im SELECT verwendet werden. Solche Einschränkungen müssen ggf. im hinteren Teil der Abfrage über Sub-Selects vorgenommen werden.

Beispiel:
Code:
SELECT DISTINCT -- unzulässig: DISTINCT HA.ArtikelNr -- unzulässig: Einschränkung der Felder! FROM HandelsArtikel HA -- unzulässig: Alias! INNER JOIN ArtikelFilialBestand AFB ON HA.ArtikelNr = AFB.ArtikelNr AND HA.Einheit = AFB.Einheit WHERE AFB.Filialnummer = 1 AND AFB.Bestand > 0

Dieses SQL-Statement muss wie folgt abgeändert werden:
Code:
SELECT HandelsArtikel.* FROM HandelsArtikel INNER JOIN ArtikelFilialBestand AFB ON HandelsArtikel.ArtikelNr = AFB.ArtikelNr AND HandelsArtikel.Einheit = AFB.Einheit WHERE AFB.Filialnummer = 1 AND AFB.Bestand > 0
Letzte Änderung: 9 Jahre 1 Woche her von jerhardt. Begründung: Erweiterung um Feldeinschränkung und DISTINCT

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Signum Warenwirtschaftssysteme AG
Kasinostraße 2
DE-64293 Darmstadt

Tel: +49 (6151) 15 18 - 0
Fax: +49 (6151) 15 18 - 100
info@signum.ag