cancel
Showing results for 
Search instead for 
Did you mean: 

Verbindung Produktionsauftrag zu Lieferung über Batchnummer?

Former Member
0 Kudos

Guten Morgen zusammen,

da quäl ich mir gestern in englisch einen ab und dann find ich doch noch ein deutsches Forum hier-ja fein 🙂

Zum Problem...

Ich habe eine Abfrage erstellt die mir quasi den Verknüpfungsplan in Tabellenform bietet.

Sie enthält alle Vorgänge vom Produktionsauftrag oder Bestellung, Kundenauftrag, Lieferung,

Rechnung und ggf. Ausgangsgutschrift.

In meiner Abfrage besteht nun das Problem das in manchen Fällen der Produktionsauftrag

nicht eindeutig einer Lieferung zugeordnet werden kann.

Beispiel:

Ein Kundenauftrag enthält 2 Positionen des gleichen Artikels aber mit unterschiedlichen Versanddaten.

Für die 2 Positionen gibt es auch 2 Produktionsaufträge (unterschiedliche Fertigungstage), die

jeweils das gleiche Produkt und die gleiche Artikelanzahl enthalten.

Meine Abfrage kann nun nicht zuordnen ob die Lieferung A mit Produktionsauftrag 1 oder 2 erzeugt wurde

und gibt mir somit alle möglichen Lösungen raus: LFS A mit PA 1, LFS A mit PA 2, LFS B mit PA 1 und LFS B mit PA 2.

Das ist natürlich mist. Über die Batchnummer könnte man das ja eindeutig klären aber ich finde einfach keine

Verbindung. Die Batchnummer wird beim Anlegen des Produktionsauftrages vergeben.

Beim Erstellen des Lieferscheins muss eine Batchnummer für der zu versendende Produkt ausgewählt werden.

Wäre also einfach die Festlegung Produktionsauftrag.Batchnummer = Lieferschein.Batchnummer

(ein Vergleich der Mengen ist nicht möglich, da ggf. auch mehr produziert wird als mit der Lieferung verschickt wird, Rest geht auf Lager)

Bitte helft mir...eine Sinnvollere Verbindung von Produktionsauftrag zu Kundenauftrag als

ORDR.DocNum = OWOR.OriginNum   hab ich nicht gefunden 😞

Schöne Grüße aus der Mitte Deutschlands

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Oder einfacher gefragt:

Wo kann ich die Batchnummer, die ich vor dem Buchen des LFS angeben muss, auslesen? In welcher auslesbaren Tabelle ist eine eudeutige Zuordnung von LFS zu Batchnummer gegeben?


Bei allen anderen Geschäftsfällen krieg ich verschiedene und vor allem sinnvolle Verbindungen zwischen den einzellnen Verkaufsschritten hin aber die Anbindung der Produktion an den Verkauf...der hängt nur an dieser kleinen Verbindung

ORDR.DocNum = OWOR.OriginNum  and ORDR.ItemCode=OWOR.ItemCode

das ist ein bisschen sehr mau 😞

Former Member
0 Kudos

Hallo Katharina,

wenn du die IBT1 mit einbindest kannst Du die Chargen Zu- und Abgänge zuordnen.

Mit einem

SELECT ItemCode, BatchNum, BaseType, BaseEntry, Direction From IBT1

Solltest Du eigentlich alles was Du brauchst vor Dir haben um dies in deine Abfrage mit einzubauen

Viele Grüße

Heiko

Former Member
0 Kudos

Oh Danke danke danke danke danke :-)))))

Die OIBT kannte ich noch gar nicht. Ach herrlich, ja so stell ich mir das vor 🙂

Weil einfach (manchmal) einfach ist 😉

viele Liebe Grüße und ein schönes Wochenende!

Former Member
0 Kudos

Blöder Mist, jetzt liegt die Lösung vor mir aber ich kriegs trotzdem nicht hin 😞

Ich hab jetzt wie folgt angebunden:

LEFT OUTER JOIN IBT1 T14 on T14.BaseNum=ODLN.DocNum and T14.Quantity=DLN1.Quantity and T14.BaseEntry=DLN1.DocEntry and T14.BatchNum=OWOR.U_UO_BATCHNR

and T14.BsDocType='17'

Im Select hab ich jetzt auch die IBT1.BatchNum drin. Eine Anbindung nur zum Lieferschein ist ok, Kundenaufträge ohne bisherige Lieferung brauchen auch keine Batch. Leider ergibt das für meine Abfrage mit einem LEFT OUTER  JOIN immer noch eine nicht eindeutige Zuordnung (siehe Bild "LEFT OUTER JOIN).

Mache ich einen INNER JOIN auf die IBT1 so kriegt er die richtige Zuordnung 🙂 aber schmeisst mir natürlich meine Kundenaufträge mit Lagerware raus 😞

Mache ich einen RIGHT OUTER JOIN ist alles jenseits von Gut und Böse.

Och menno-das kann doch nicht so schwer sein 😞

Könnte ich nochmal um einen kleinen Gedankenanstoß bitten?

Schöne Grüße

katharina

Former Member
0 Kudos

Grundsätzlich lautet meine erste Empfehlung - nutze immer DocEntry und nicht DocNum

(es könnten meherer Belegnummernserien geben, dann ist DocNum nicht mehr eindeutig, DocEntry ist hingegen immer eindeutig).

Beide zu verwenden (DocEntry und DocNum) macht aus meiner Sicht gar keinene Sinn ?!

Weshalb referenzierst Du in der IBT1 auf "BsDocType" ?

Die Zu- und Abgänge werden durch die Objekte aus BaseType defniert, und nicht aus deren Ursprungsbeleg. Hast Du bei einem Abgang per Lieferschein - im "BaseType" also den Wert "15" stehen - , fragst Du hingegen den "BsDocType" mit dem Wert "17" ab - also den Kundenauftrag, der dem Lieferschein vorangestellt war.

Ob es ein Zu- oder Abgang ist, kannst Du wiederum aus der "Direction" auslesen

Kann es in einem Beleg zweimal den gleichen Artikel mit der gleichen Chargennummer geben ?

Falls nicht, würde ich weiter vereinfachen und die nicht benötigte "Quantity" weglassen.

Falls doch der gleiche Artikel mit der selben Chargennummer mehrfach in einem Beleg vorkommen kann, wer sagt uns dass die Menge nicht auch identisch ist ?

Dann wäre eine eindeutige Eingrenzung anhand der "LineNum"

Eigentlich sollte ein LeftJoin "On T14.BaseEntry = T13.DocEntry" oder T2 das kann ich nicht erkennen) reichen ... ggf. mit vorangestelltem "On T14.DocType=15" (oder 20 oder whatever)

Hoffe das hilft die Lösung für Deine Abfrage

daraus abzuleiten

Gruß,

Heiko

Former Member
0 Kudos

Danke dir vielmals für deine erneute Hilfe 🙂

Funzt 🙂

Answers (0)