Rekursive Abfrage mit Pervasive SQL

  • Hallo,


    ich habe das Problem das in Pervasive SQL die With Rekursion - Syntax nicht unterstützt wird .... vl hat jemand eine Idee wie ich dennoch ein Ergebnis bekomme :confused::confused::confused::confused:


    Folgendes Beispiel:



    Ist eine Artikelnummer mit dem Lieferanten „GFI“ enthalten (Testartikel1), so soll diese nicht mehr angezeigt werden. Ist dieser Artikel einem verbundenem Hauptartikel zugeordnet, so darf der Hauptartikel auch nicht mehr ausgewertet werden (Testartikel 2). Diesem Hauptartikel (Testartikel 2), der jetzt in Verbindung mit dem „GFI“ Artikel steht, können auch noch weitere Artikel zugeordnet werden die dann auch nicht mehr angezeigt werden sollen (Testartikel 6).


    Überbleiben sollte jetzt nur der Testartikel 3,4 und 5 (da diese nicht in Verbindung mit dem GFI Artikel stehen).


    Mann sollte alle Artikel Auswerten können die das Hauptartikelkenzeichen auf „J“ haben und nicht in Verbindung mit dem Lieferanten „GFI“ stehen.
    In dem Fall also Testartikel 4 + 5.


    With-Syntax wird nicht unterstütz (Pervasive SQL!)
    Ist so etwas möglich mit einem SQL Query???



    Select


    sart.nr,
    sart.lfkz,
    sart.kzhauptart,
    sart.hautpartnr


    from sart


    ..............................?????



    Bitte um eure Unterstützung!

  • Hallo,


    Dein Testartikel 2 steht aber auch in Verbindung zum Artikel 6, der an den Lieferanten "SCH" gebunden ist.
    Wie gehst Du damit um?


    Eigentlich sollte das in etwa dem nahe kommen, was Du willst:

    Code
    1. select s.*, v.*
    2. from sars s
    3. left join ( select Lieferant, Verbunden from sars ) v on v.Verbunden = s.Artikelnummer
    4. where 'GFI' not in ( s.Lieferant, ifnull(v.Lieferant, s.Lieferant) )

    sofern Pervasive not in kennt.
    Die angesprochene Thematik mit Testartikel 2 besteht natürlich noch.

  • Der Testartikel6 sollte nicht enthalten sein, da dieser mit dem Testartikel 2 in Verbindung steht.
    Ich habe im Hintergrund ja eine Datenbank mit ca. 100.000 Artikeln.
    Einem Hauptartikel können mehrere SUB-Artikel zugeordnet werden, es könnte wenn mann einen Testartikel 7 mit dem Lieferanten 'FOE' hat, auch dem Testartikel 2 zugeordnet sein. Dieser sollte dann auch nicht enthalten sein.


    Nimmt man eine Lampe als Beispiel: 1 Lampe vom Hersteller SCH, diese gibt es auch vom Lieferanten 'FOE' und 'GFI' mit anderen Artikelnummern. Mann erstellt einen eigenen Hauptartikel 'Intern' um diese zusammenzufassen da es derselbe ist. Man möchte dann wissen in welchen Hauptartikeln dieser Lieferanten 'GFI' nicht enthalten ist.


    Habe hier das Problem das ich nicht weis wie ich das in Verbindung bringe in meinem Querie....


    Not in wird unterstützt im Pervasiv.