Outer Joins mit ODBC in Navision

23. November 2006 13:53

Hallo ,

gibt es eine möglichkeit mit dem ODBC-Treiber für Navision ein SQL-Statement mit einem Outer Join abzusetzten ? Irgendwie scheint mir da nicht so wirklich zu funktionieren.

SELECT * FROM ItemLedgerEntries as ILE
LEFT OUTER JOIN Item as IT on IT."NO." <> ILE."No."

Hat jemand eine Idee ??

Gruß

Daniel

23. November 2006 15:10

probier mal

on IT."NO." = ILE."No." ich glaube du hast Ungleich mit dem Gleich-Zeichen verwechselt

23. November 2006 17:34

Aja, war auch ein Fehler, aber er kann schon mit dem Left Outer nichts anfangen..... Meine Frage war, ob es eine andere Schreibweise dafür gibt. Irgendwie kann der ODBC damit nicht umgehen

23. November 2006 17:42

Probiers mal ohne den zwei "as"

23. November 2006 17:56

hab ich zudem hab ich es mnal so probiert :

SELECT * FROM Item,Itemledgerentries WHERE (ItemLedgerentries.No = Item.No (+) )
Dies soll laut Internet auch ein Left Outer Join darstellen ..

dort kommt aber folgende Fehlermeldung :
Error: Expected lexical element not found: ) (State:37000, Native Code: 3F7)

23. November 2006 17:59

zu Deinem ersten Eintag - was meinst du genau damit mit "rgendwie scheint mir da nicht so wirklich zu funktionieren" - Wo ist denn genau das Problem?

- bekommst du eine Fehlermeldung
- bekommst kein Ergebnis?

23. November 2006 18:08

ICh bekomme die Fehlermeldung wie Sie in meinem letzten Eintrag zu lesen war. Weiters hab ich irgendwo gelesen, dass der ODBC-Treiber von Navision kein LEFT OUTER JOIN unterstützt...

24. November 2006 04:23

Verstehe ich das richtig, dass du alle Artikelposten ausgeben willst und im gleichen Datensatz die Felder des Artikels aus der Artikeltabelle holen willst?
wenn ja, dann mach doch einfach
Code:
select * from "Item Ledger Entry",Item where "Item Ledger Entry"."No."=Item."No."

denn Artikelposten ohne zugehörigen artikel kann's ja eigentlich nicht geben.
Wenn du hingegen alle Artikel und wenn vorhanden auch die Posten dazu ausgeben willst, wirst du wohl nicht um eine schleifenprogrammierung herumkommen.