Neu Seriennummer und Chargennummer in der Artikelübersicht

Philipp Laumen

Gesperrter Benutzer
16. Juli 2018
260
86
Hallo,

da die Nachfrage in einem anderen Thread kam, hier mal zwei Eigene Ansichten für Chargen und Seriennummer Artikel.

Seriennummer:

Code:
SELECT cSeriennr AS Seriennummer,
COUNT(1) AS Menge
FROM dbo.tLagerArtikel
WHERE kArtikel = @Key
AND kBestellPos = 0
GROUP BY cSeriennr

Charge:

Code:
SELECT cChargenNr  AS 'Chargen Nummer',SUM (fAnzahlAktuell) AS  'Menge aktuell'
FROM dbo.tWarenLagerEingang
WHERE kArtikel = @Key
AND cChargenNr IS NOT NULL
GROUP BY cChargenNr

Es wird jeweils nur der aktuelle Bestand angezeigt. Bitte beachtet, das die Seriennummer Artikel keine direkte Verknüpfung zum Wareneingang haben.
 
  • Gefällt mir
Reaktionen: BerndX

sjk

Sehr aktives Mitglied
16. Januar 2019
613
272
Hallo,

leider kenne ich mich in der Datenbank noch zu wenig gut aus, um das für MHDs umzusetzen.

Eine eigene Übersicht mit Artikel, Menge, MHD würde uns einige Klicks sparen. Würde mich sehr freuen, wenn du den Post noch damit ergänzen könntest!
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.295
407
Hallo Samuel,

die MHD Daten stehen auch in der Tabelle tWarenLagerEingang und lassen sich ganz analog zu den Chargennummern behandeln. Da wir sehr viele Artikel haben, die eine Chargennummer haben UND dann dazu ein MHD, habe ich die SQL Abfrage von Philip Laumen von oben einmal so abgeändert, dass sie für mich passt und vermutlich/hoffentlich auch für Dich.
SQL:
SELECT ISNULL(cChargenNr,'--') AS 'Chargen Nummer', ISNULL(CONVERT(VARCHAR(10),t1.dMHD,104),'--') AS 'MHD', t2.cName AS 'Warenlager',
 CONVERT(DECIMAL(10,2),SUM(fAnzahlAktuell)) AS 'Anzahl aktuell' FROM dbo.tWarenLagerEingang t1
 JOIN tWarenLager t2 ON t2.kWarenLager=t1.kWarenLagerPlatz
 WHERE kArtikel=@Key AND cChargenNr IS NOT NULL
 GROUP BY t2.cName, t1.dMHD, t1.cChargenNr
 HAVING SUM(fAnzahlAktuell)>0
 ORDER BY t2.cName DESC, t1.dMHD ASC, SUM(fAnzahlAktuell) ASC

Gruppiert werden die Einträge erst einmal nach Lager und dann innerhalb des Lagers nach der MHD. Ich denke, das macht so Sinn und ich habe dann noch "verfügt", dass die globale Sortierung der Lagernamen absteigend sein soll, damit das "Standardlager" nicht ganz unten am Ende gezeigt wird, während das uninteressante "Ablauflager" für meine abgelaufene MHD-Artikel immer schön im Blick ist.

Und auch wenn ein Artikel nur eines der beiden Merkmale hat, wird in der Tabelle für das fehlende Merkmal einfach ein '--' gezeigt. Die Abfrage versagt also nicht, wenn ein Wert nicht existiert oder gesetzt ist.

Gruß,
Ingmar
 
  • Gefällt mir
Reaktionen: mitscho

sjk

Sehr aktives Mitglied
16. Januar 2019
613
272
Hallo Ingmar, vielen Dank! Genau so etwas habe ich mir vorgestellt.

Weil wir keine Chargen in der Wawi führen hat es zuerst nicht funktioniert, da musste ich noch cChargenNr IS NOT NULL rauslöschen.
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.295
407
Hallo Samuel,

das cChargenNr IS NOT NULL musste nicht nur bei Dir raus, sondern das ist schlicht falsch und ich habe es nur versehentlich bei der Änderung von Philip Laumens Code stehen gelassen. Hier also noch einmal der korrekte Code, damit sich andere Leute nicht erst durch den Thread quälen müssen, um eine rundum funktionierende Version zu bekommen.
SQL:
SELECT ISNULL(cChargenNr,'--') AS 'Chargen Nummer', ISNULL(CONVERT(VARCHAR(10),t1.dMHD,104),'--') AS 'MHD', t2.cName AS 'Warenlager',
 CONVERT(DECIMAL(10,2),SUM(fAnzahlAktuell)) AS 'Anzahl aktuell' FROM dbo.tWarenLagerEingang t1
 JOIN tWarenLager t2 ON t2.kWarenLager=t1.kWarenLagerPlatz
 WHERE kArtikel=@Key
 GROUP BY t2.cName, t1.dMHD, t1.cChargenNr
 HAVING SUM(fAnzahlAktuell)>0
 ORDER BY t2.cName DESC, t1.dMHD ASC, SUM(fAnzahlAktuell) ASC

P.S. Wie hast Du die Formatierung des "cChargenNr IS NOT NULL" in Deiner Antwort hinbekommen. Das sieht gut und wie ein Inline-Zitat aus, gefällt mir.

Gruß,
Ingmar
 

Derdiedas

Aktives Mitglied
9. Oktober 2019
39
20
Super, vielen Dank. Genau das haben wir auch gebraucht. Ist es bei dieser Abfrage denn auch möglich mitzugeben welche der Charegn denn noch in Aufträgen vorliegen und welche quasi davon noch frei verfügbar sind?

Ich danke schon mal für jede Hilfe!
 

BerndX

Aktives Mitglied
22. Mai 2020
5
0
Code:
Code:
SELECT cSeriennr AS Seriennummer,
COUNT(1) AS Menge
FROM dbo.tLagerArtikel
WHERE kArtikel = @Key
AND kBestellPos = 0
GROUP BY cSeriennr

Danke, Herr Laumen, das ist toll! Es wäre noch hilfsreicher, wenn der Lagername auch mit aufgenommen werden könnte. Ich kenne mich zu wening in SQL aus, um diese Modifizierung zu machen. Was muss man in Codes noch eintragen, um die Lagernamen zu zeigen?
 

samllkartoffelpuffer

Gut bekanntes Mitglied
28. August 2018
106
6
Hallo Samuel,

die MHD Daten stehen auch in der Tabelle tWarenLagerEingang und lassen sich ganz analog zu den Chargennummern behandeln. Da wir sehr viele Artikel haben, die eine Chargennummer haben UND dann dazu ein MHD, habe ich die SQL Abfrage von Philip Laumen von oben einmal so abgeändert, dass sie für mich passt und vermutlich/hoffentlich auch für Dich.
SQL:
SELECT ISNULL(cChargenNr,'--') AS 'Chargen Nummer', ISNULL(CONVERT(VARCHAR(10),t1.dMHD,104),'--') AS 'MHD', t2.cName AS 'Warenlager',
 CONVERT(DECIMAL(10,2),SUM(fAnzahlAktuell)) AS 'Anzahl aktuell' FROM dbo.tWarenLagerEingang t1
 JOIN tWarenLager t2 ON t2.kWarenLager=t1.kWarenLagerPlatz
 WHERE kArtikel=@Key AND cChargenNr IS NOT NULL
 GROUP BY t2.cName, t1.dMHD, t1.cChargenNr
 HAVING SUM(fAnzahlAktuell)>0
 ORDER BY t2.cName DESC, t1.dMHD ASC, SUM(fAnzahlAktuell) ASC

Gruppiert werden die Einträge erst einmal nach Lager und dann innerhalb des Lagers nach der MHD. Ich denke, das macht so Sinn und ich habe dann noch "verfügt", dass die globale Sortierung der Lagernamen absteigend sein soll, damit das "Standardlager" nicht ganz unten am Ende gezeigt wird, während das uninteressante "Ablauflager" für meine abgelaufene MHD-Artikel immer schön im Blick ist.

Und auch wenn ein Artikel nur eines der beiden Merkmale hat, wird in der Tabelle für das fehlende Merkmal einfach ein '--' gezeigt. Die Abfrage versagt also nicht, wenn ein Wert nicht existiert oder gesetzt ist.

Gruß,
Ingmar
Hallo Ingmar,

bisher haben wir deinen Code im Einsatz. Aber dieser zeigt nur die Menge von Waren mit jeweiligem MHD & Charge von einem Lager. Wir haben insgesamt 3 Lager. Wie können wir die Abfrage erweitern, damit die Daten von allen Lagern angezeigt werden?

Vorab Tausend Dank!
 

Palimklimbim

Aktives Mitglied
28. Mai 2021
1
0
Moin Herr Laumann,
die Abfrage in der Artikelübersicht ist wirklich toll.
Kann man das eventuell auch auf einem Artikeletikett darstellen?
Sodass man den Bestand je Charge auf einem Ausdruck erkennt?
z.B.:
" MH23 5 Pakete
MG12 9 Pakete"
oder:
" MHD 12.06.2022 5 Stück
MHD 24.08.2024 8 Stück"

Über eine Lösung würde ich mich sehr Freuen. Vielen Dank im Voraus.
 

nweber

Aktives Mitglied
8. Juni 2020
83
9
Hallo,

da die Nachfrage in einem anderen Thread kam, hier mal zwei Eigene Ansichten für Chargen und Seriennummer Artikel.

Seriennummer:

Code:
SELECT cSeriennr AS Seriennummer,
COUNT(1) AS Menge
FROM dbo.tLagerArtikel
WHERE kArtikel = @Key
AND kBestellPos = 0
GROUP BY cSeriennr

Charge:

Code:
SELECT cChargenNr  AS 'Chargen Nummer',SUM (fAnzahlAktuell) AS  'Menge aktuell'
FROM dbo.tWarenLagerEingang
WHERE kArtikel = @Key
AND cChargenNr IS NOT NULL
GROUP BY cChargenNr

Es wird jeweils nur der aktuelle Bestand angezeigt. Bitte beachtet, das die Seriennummer Artikel keine direkte Verknüpfung zum Wareneingang haben.
Hi!


Kann ich die Charge auch irgendwie in der Eigenen Übersicht unter Versand WMS Picklisten anzeigen lassen?
Damit ich sehen kann, welche Charge welchem Auftrag zugeordnet ist?

Bzw. wie müsste die Erweiterung zu diesem SQL aussehen, welches wir bereits benutzen?

SQL:
SELECT
 Versand.lvPicklistenposition.kPickliste AS 'Pickliste',
 Versand.lvPicklistenposition.cBestellNr AS 'Auftragsnummer',
 Versand.lvPicklistenposition.cLieferscheinNr 'Lieferscheinnummer',
 Versand.lvPicklistenposition.cAuftragArtNr AS 'Artikelnummer',
 Versand.lvPicklistenposition.cString AS 'Beschreibung',
 CAST(Versand.lvPicklistenposition.fAnzahl AS INT) AS 'Menge',
 Versand.lvPicklistenposition.nIstStueckliste AS 'Stückliste',
 Versand.lvPicklistenposition.nStatus AS 'Status',
 CONVERT(varchar,tPicklistePosStatus.dZeitstempel,121) AS 'Zeitstempel',
 tbenutzer.cName AS 'Benutzer',
 tWarenlagerPlatz.cName AS 'Lagerplatz'
FROM Versand.lvPicklistenposition
 LEFT JOIN tPicklistePosStatus ON tPicklistePosStatus.kPicklistePos = Versand.lvPicklistenposition.kPicklistePos
 LEFT JOIN tbenutzer ON tbenutzer.kBenutzer = tPicklistePosStatus.kbenutzer
 LEFT JOIN tPicklistePos ON tPicklistePos.kPicklistePos = Versand.lvPicklistenposition.kPicklistePos
 LEFT JOIN tWarenlagerPlatz ON tWarenlagerPlatz.kWarenlagerPlatz = tPicklistePos.kWarenlagerPlatz
WHERE
 Versand.lvPicklistenposition.kPickliste = @Key AND
 (tPicklistePosStatus.nStatus = '20' OR tPicklistePosStatus.nStatus = '30')
ORDER BY tPicklistePosStatus.dZeitstempel ASC;
 

nweber

Aktives Mitglied
8. Juni 2020
83
9
Hi!


Kann ich die Charge auch irgendwie in der Eigenen Übersicht unter Versand WMS Picklisten anzeigen lassen?
Damit ich sehen kann, welche Charge welchem Auftrag zugeordnet ist?

Bzw. wie müsste die Erweiterung zu diesem SQL aussehen, welches wir bereits benutzen?

SQL:
SELECT
 Versand.lvPicklistenposition.kPickliste AS 'Pickliste',
 Versand.lvPicklistenposition.cBestellNr AS 'Auftragsnummer',
 Versand.lvPicklistenposition.cLieferscheinNr 'Lieferscheinnummer',
 Versand.lvPicklistenposition.cAuftragArtNr AS 'Artikelnummer',
 Versand.lvPicklistenposition.cString AS 'Beschreibung',
 CAST(Versand.lvPicklistenposition.fAnzahl AS INT) AS 'Menge',
 Versand.lvPicklistenposition.nIstStueckliste AS 'Stückliste',
 Versand.lvPicklistenposition.nStatus AS 'Status',
 CONVERT(varchar,tPicklistePosStatus.dZeitstempel,121) AS 'Zeitstempel',
 tbenutzer.cName AS 'Benutzer',
 tWarenlagerPlatz.cName AS 'Lagerplatz'
FROM Versand.lvPicklistenposition
 LEFT JOIN tPicklistePosStatus ON tPicklistePosStatus.kPicklistePos = Versand.lvPicklistenposition.kPicklistePos
 LEFT JOIN tbenutzer ON tbenutzer.kBenutzer = tPicklistePosStatus.kbenutzer
 LEFT JOIN tPicklistePos ON tPicklistePos.kPicklistePos = Versand.lvPicklistenposition.kPicklistePos
 LEFT JOIN tWarenlagerPlatz ON tWarenlagerPlatz.kWarenlagerPlatz = tPicklistePos.kWarenlagerPlatz
WHERE
 Versand.lvPicklistenposition.kPickliste = @Key AND
 (tPicklistePosStatus.nStatus = '20' OR tPicklistePosStatus.nStatus = '30')
ORDER BY tPicklistePosStatus.dZeitstempel ASC;

Für alle, die noch Bedarf an dieser Art von Ansicht* haben.

SQL:
SELECT
CAST(Versand.lvPicklistenposition.fAnzahl AS INT) AS 'Menge',
 Versand.lvPicklistenposition.cBestellNr AS 'Auftragsnummer',
Versand.lvPicklistenposition.cString AS 'Beschreibung',
CAST(tWarenLagerEingang.dMHD AS date) AS 'MHD',
tWarenLagerEingang.cChargenNr AS 'Charge'
FROM Versand.lvPicklistenposition
LEFT JOIN tPicklistePosStatus ON tPicklistePosStatus.kPicklistePos = Versand.lvPicklistenposition.kPicklistePos
LEFT JOIN tbenutzer ON tbenutzer.kBenutzer = tPicklistePosStatus.kbenutzer
LEFT JOIN tPicklistePos ON tPicklistePos.kPicklistePos = Versand.lvPicklistenposition.kPicklistePos
LEFT JOIN tWarenlagerPlatz ON tWarenlagerPlatz.kWarenlagerPlatz = tPicklistePos.kWarenlagerPlatz
LEFT JOIN tWarenLagerEingang ON tPicklistePos.kWarenLagerEingang = tWarenLagerEingang.kWarenLagerEingang
WHERE
Versand.lvPicklistenposition.kPickliste = @Key AND
(tPicklistePosStatus.nStatus = '20' OR tPicklistePosStatus.nStatus = '30') AND
Versand.lvPicklistenposition.cLieferscheinNr is NULL
ORDER BY tPicklistePosStatus.dZeitstempel ASC;



*Inhalte in der Ansicht leicht verändert zum ersten Code.
 

Maria HD

Aktives Mitglied
17. Oktober 2015
43
4
Hallo Samuel,

das cChargenNr IS NOT NULL musste nicht nur bei Dir raus, sondern das ist schlicht falsch und ich habe es nur versehentlich bei der Änderung von Philip Laumens Code stehen gelassen. Hier also noch einmal der korrekte Code, damit sich andere Leute nicht erst durch den Thread quälen müssen, um eine rundum funktionierende Version zu bekommen.
SQL:
SELECT ISNULL(cChargenNr,'--') AS 'Chargen Nummer', ISNULL(CONVERT(VARCHAR(10),t1.dMHD,104),'--') AS 'MHD', t2.cName AS 'Warenlager',
 CONVERT(DECIMAL(10,2),SUM(fAnzahlAktuell)) AS 'Anzahl aktuell' FROM dbo.tWarenLagerEingang t1
 JOIN tWarenLager t2 ON t2.kWarenLager=t1.kWarenLagerPlatz
 WHERE kArtikel=@Key
 GROUP BY t2.cName, t1.dMHD, t1.cChargenNr
 HAVING SUM(fAnzahlAktuell)>0
 ORDER BY t2.cName DESC, t1.dMHD ASC, SUM(fAnzahlAktuell) ASC

P.S. Wie hast Du die Formatierung des "cChargenNr IS NOT NULL" in Deiner Antwort hinbekommen. Das sieht gut und wie ein Inline-Zitat aus, gefällt mir.

Gruß,
Ingmar
Hallo, erst mal danke für den Code.
bei mir wird immer das Standard Lager angezeigt. Wie kann ich da ein anderes wählen?
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Webinar „Shipping 2.0“ am Dienstag, 14.07.2026 – über 500 Anmeldungen, was es Neues gibt und wie ihr das Beste daraus macht News, Events und Umfragen 1
Seit dem Update meines JTL-Shops auf Version 5.7.1 funktioniert die Verbindung zwischen JTL-Wawi 2.0.4.0 und dem Shop nicht mehr. JTL-Wawi 2.0 5
Neu JTL-WMS und JTL-POS... Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Neu Versandart nach Volumengewicht und Lieferland Allgemeine Fragen zu JTL-Shop 2
Neu SUNMI V3 MIX – Touchscreen und USB-Maus frieren nach einigen Minuten ein JTL-POS - Fehler und Bugs 1
Beantwortet [Shop 5.7.2 / Wawi 2.0.5] GPSR-Daten werden am Artikel nicht angezeigt trotz korrekter Übertragung und installiertem Plugin Allgemeine Fragen zu JTL-Shop 1
Amazon VCS-Lite und Externe Belege JTL-Wawi 1.11 1
Neu PPWR und Versandetikett Business Jungle 5
Neu DSVGO konform 1000 Kunden in WaWi und Shop löschen! User helfen Usern - Fragen zu JTL-Wawi 4
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu Rechte-Fehler im J10n Modul und Auswirkung auf base.mo.php in div. Plugins (Shop 5.7.1) JTL-Shop - Fehler und Bugs 0
Neu Kundengruppeneinstellungen für Mindestabnahme und Abnahmeintervall löschen User helfen Usern - Fragen zu JTL-Wawi 0
Neu Shop 5.7.1 und Downloadmodul Allgemeine Fragen zu JTL-Shop 1
Neu Plugin: JTL Exportformat Google Shopping gibt <g:google_product_category> unter Shop 5.7.1 und Wawi 2.0.4 nicht aus Plugins für JTL-Shop 1
Neu Widerrufbutton und Handy JTL-Shop - Fehler und Bugs 1
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
Neu Neues Tool - eBay Penner finden, beenden und neu listen Schnittstellen Import / Export 0
Neu Arbeiten mit Lieferanten EKs - Workflows und SQL User helfen Usern - Fragen zu JTL-Wawi 6
Angebliche externe Aufträge "für Rechnungserstellung freigeben" und Rechnungen erstellen. Gibt es dazu eine akzeptable Erklärung von JTL? JTL-Wawi 1.11 1
Fehlermeldungen bei Einrichtung DHL 4.0 "Objektverweis" und "Konfiguration Versandart" JTL-Wawi 1.11 2
Fehler nach Update auf Version 1.11.11 und 2.0.4 JTL-Wawi 2.0 7
Neu Es werden keine Marken ausgedruckt und die Portokasse lässt keine Anmeldung zu. Smalltalk 5
Neu Newsletter Problem und Fragen Allgemeine Fragen zu JTL-Shop 2
Neu MS Server und MS SQL Installation von JTL-Wawi 5
Neu Seller2Go – Mobile App & JTL-Plugin für Bestellungen, Support und Produktmanagement Plugins für JTL-Shop 0
Keine Datenübertragung trotz bestehender Verbindung und funktionierendem Server JTL-Wawi 2.0 35
Neu buersten.de stellt sich vor (und lädt euch ein!) Shops stellen sich vor 4
Neu Bestellabgleich Shopify - JTL | Point of Sales und Online Stores Shopify-Connector 2
Dashboard lädt nicht und Umsatzanzeige rechnet falsch seit Update auf 1.11.8 JTL-Wawi 1.11 8
Neu Falsch erzeugte Ausgangszahlung bei Teilzahlungen und Retoure (Kauf auf Rechnung) Arbeitsabläufe in JTL-Wawi 0
Neu Kritisches Problem bei DHL 4.0: Handelsstücklisten brechen EU- und Exportversand JTL-ShippingLabels - Fehler und Bugs 25
Neu Besucher und Kampagnen Statistik Konfiguration Betrieb / Pflege von JTL-Shop 0
Bestellabgleich mit JTL Wawi und WooCommerce 1h verzögert JTL-Wawi 2.0 0
JTL-Worker 2.0 - Einrichtung als Dienst - Auffälligkeiten und Problemlösungen für manche JTL-Wawi 2.0 3
Neu Summenanzeige in Zahlungen (F7) und Beschaffung (F3) JTL-Wawi - Ideen, Lob und Kritik 0
Neu jtl POS und wawi 1.11.9 Bestände User helfen Usern - Fragen zu JTL-Wawi 3
Neu Custom Checkout - Conversion optimiert mit Speicherung von Standard-Versandart und Zahlungsart am Kunden JTL-Shop - Ideen, Lob und Kritik 1
In Diskussion Workflow mit UND / ODER - Bedingung erstellen JTL-Workflows - Ideen, Lob und Kritik 7
Ameise-Export: Umsatzsteuer stimmt nicht mit Differenz aus Netto und Brutto überein (insbesondere bei mehreren Steuersätzen) JTL-Wawi 1.11 0
Neu Amazon DIVID- und Lucid-Nummer User helfen Usern 0
Neu Bestände in-house und beim Lieferanten + Proforma-Rechnungen, wie? Arbeitsabläufe in JTL-Wawi 3
Neu Vater und Kinderartikel User helfen Usern - Fragen zu JTL-Wawi 11
Neu product_visibility bei JTL-Wawi und Shopware 6 Shopware-Connector 1
Probleme mit Worker und JTL-App JTL-Wawi 2.0 5
Neu Shopware 5 connector und WawI 1.11.06 bis 1.11.8 Shopware-Connector 1
Bilder unter Versand- und Zahlungsart unterschiedlich groß Einrichtung JTL-Shop5 0
Neu Widerrufsbutton: Jeder, der den Button betätigt, kann das Widerrufsformular ausfüllen und absenden - auch ohne Bestellung? Allgemeine Fragen zu JTL-Shop 94
Neu Problem mit Dantezeile und fehlerhafte Angebotsgültigkeit. Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu JTL Pro Edition – Lizenzumstellungen und Abrechnungsfragen Smalltalk 42
Neu JTL Shop 5 und Klarna Plugins für JTL-Shop 0

Ähnliche Themen