Gelöst SQL Abfrage: Artikelnummer aller Stücklisten in denen Artikel Komponenten ist

SebiW

Sehr aktives Mitglied
2. September 2015
2.877
1.412
Hallo zusammen,
um unsere Stücklisten bei Änderungen an Komponenten automatisch nachkalkulieren zu lassen benötige ich noch eine Möglichkeit, die Artikelnummern der Stücklisten auszugeben, in denen ein Artikel als Komponente enthalten ist.

Als Beispiel:
Artikel 12345 ist in Stückliste ST-1, ST-2 und ST-3 enthalten.

Ich möchte damit im Endeffekt nichts anderes tun als diese Werte nacheinander in eine csv schreiben und sie dann via Ameise wieder einlesen lassen um eine Neukalkulation der betroffenen Stücklisten auszulösen. Dafür behelfe ich mir mit einem Hilfsfeld, das ich via Import ändere und dann am Ende der Kalkulation zurückschreibe.

Hat vielleicht jemand eine Idee wie die Datenabfrage dazu aussehen müsste? Ich bin da leider etwas überfordert.
 

fav-hosting.online

Sehr aktives Mitglied
16. Oktober 2012
780
60
Weiterstadt
Firma
FaV-Hosting
Siehe unten. Falls du noch zusätzliche Angaben brauchst bitte melden.

Code:
SELECT
   A2.cArtNr
FROM
   tArtikel A1
JOIN tStueckliste S1 ON A1.kArtikel = S1.kArtikel
JOIN tArtikel A2 ON S1.kStueckliste = A2.kStueckliste
WHERE
   A1.cArtNr = '### DEINE ARTIKELNUMMER ###'
 

SebiW

Sehr aktives Mitglied
2. September 2015
2.877
1.412
Hi Mike,
schonmal danke für Deine Hilfe. Ich habe das jetzt mal so umgesetzt:

{% capture query -%}
SELECT
A2.cArtNr
FROM
tArtikel A1
JOIN tStueckliste S1 ON A1.kArtikel = S1.kArtikel
JOIN tArtikel A2 ON S1.kStueckliste = A2.kStueckliste
WHERE A1.cArtNr = '{{ Vorgang.Allgemein.Stammdaten.ArtNrSku }}'
{% endcapture -%}
{% assign Stücklisten = query | DirectQueryScalar -%}
{{ Stücklisten }}

Leider gibt er mir nur die erste Stückliste aus, ich vermute mal, dass ich wieder irgendeinen Parameter falsch gesetzt habe.
Wenn Du da noch eine Idee hättest wie ich in der Ausgabe sämtliche Stücklisten herbekomme wäre ich Dir unendlich dankbar.
Ich schulde @gutberle zwar schon ne Kaffeeplantage, aber vielleicht reicht das Marketingbudget ja noch für ein Weingut in der Bretagne :D
 

fav-hosting.online

Sehr aktives Mitglied
16. Oktober 2012
780
60
Weiterstadt
Firma
FaV-Hosting
DirectQueryScalar wird in dem Fall nicht funktionieren da du mehr als einen Wert erhälst.
Folgender Snippet sollte funktionieren.

Code:
{% capture query -%}
SELECT
A2.cArtNr
FROM
tArtikel A1
JOIN tStueckliste S1 ON A1.kArtikel = S1.kArtikel
JOIN tArtikel A2 ON S1.kStueckliste = A2.kStueckliste
WHERE A1.cArtNr = '{{ Vorgang.Allgemein.Stammdaten.ArtNrSku }}'
{% endcapture -%}
{% assign Stücklisten = query | DirectQuery -%}
{% for Artikel in Stücklisten.Daten %}
{{ Artikel.cArtNr }}
{% endfor %}
 

SebiW

Sehr aktives Mitglied
2. September 2015
2.877
1.412
Hallo Mike,
Wunderbar, perfekt, Großartig! Vielen Dank :) Damit kann ich meine Autokalku jetzt endlich abschließen, ein Traum.
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
402
@SebiW - Apropos Kaffeeplantage ... ;)

Nee, Flachs beiseite, wenn Du Code einfügen willst, klick mal auf den Button, der so aussieht wie ein Dokument, rechts neben den beiden Filmstreifen, dann Code auswählen und Deinen Code rein-pasten. Hilft wirklich sehr bei der Übersicht und beim Lesen des Codes.
 

Ähnliche Themen