Neu Seriennummer und Chargennummer in der Artikelübersicht

Philipp Laumen

Gesperrter Benutzer
16. Juli 2018
260
84
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
364
130
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.292
395
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
364
130
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.292
395
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
37
17
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
100
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
81
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
81
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
31
3
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
SQL Abfrage via Ameise: Seriennummer u. weitere Daten JTL-Wawi 1.8 0
Neu Filtereinstellungen: wenn Sonderpreis bei Vater- oder Kindartikeln, Anzeige von Vater- UND Kindartikeln User helfen Usern - Fragen zu JTL-Wawi 5
Neu Sprachvariablen nicht in korrekter Groß- und Kleinschreibung JTL-Shop - Fehler und Bugs 4
Neu Gewicht auf Rechnung (Artikelgewicht und Zusatzgewicht) Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Neues Plugin: Google Translate / Übersetzer (DSGVO-konform und weitere Features) Plugins für JTL-Shop 1
Neu Workflow Aktion E-Mail senden kann nicht Plain und HTML Email zusammen versenden Arbeitsabläufe in JTL-Wawi 6
Neu JTL Shopify Connector und Billbee frage Shopify-Connector 0
Neu Neues Plugin: Instagram-Feed Portlet (Als Galerie- oder Slideransicht und weitere Features) + 3x kostenlose Lizenzen Plugins für JTL-Shop 3
In Bearbeitung Startschwierigkeiten Scanner und Bon Drucker Allgemeine Fragen zu JTL-POS 2
Neu JTL Worker 2.0 und tinetbestellung Technische Fragen zu den JTL-Connectoren 0
Neu Position Versandkosten und Versandkostenname in PositionTable ausblenden - neuen Vorlagen. Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Neu Liste aller Namespaces und dessen Aufgabe Allgemeine Fragen zu JTL-Shop 0
Kundenattribute aus Shop übernehmen und aus Wawi zurück an Shop übermitteln Einrichtung JTL-Shop5 1
Neu Warenkorb Hinweise bei Bestandsänderung und Preisänderung Allgemeine Fragen zu JTL-Shop 2
In Bearbeitung Artikel über csv-Datei bearbeiten und importieren Allgemeine Fragen zu JTL-POS 3
Verbindung zu Kundencenter geht verloren und Lizenz muss erneut abgteglichen werden JTL-Wawi 1.8 16
Landingpage Header und Footer erstellen zwecks Vorbestellung Einrichtung JTL-Shop5 0
Neu klare Warnung vor den Bausteinen und der PDF in Vorlagen User helfen Usern - Fragen zu JTL-Wawi 4
Neu JTL erstellt falsche Rechnungskorrekturen für Amazon.co.uk Aufträge und verweigert den Support Amazon-Anbindung - Fehler und Bugs 5
Neu Und ewig grüsst das Murmeltier. "The EntityManager is closed" Shopware-Connector 0
Alternativpositionen und gültig von bis JTL-Wawi 1.8 0
Debitorennummern für bestehende und neue Kunden anlegen JTL-Wawi 1.8 2
In Diskussion Bondrucker - im Allgemeinen und Speziellen (Metapace T 25) JTL-POS - Fragen zu Hardware 4
Neu Eigener (Home-) Server mit Windows UND Linux Starten mit JTL: Projektabwicklung & Migration 23
Neu Microsoft Remote Desktop Fehler Cloutapp Desktop und Lauscher JTL-Wawi - Fehler und Bugs 3
Auftrag und Rechnung Ausgabe funktioniert nicht Client JTL 1.8.10.0 JTL-Wawi 1.8 9
Zahlungsarten und Versandarten ERROR 500 Einrichtung JTL-Shop5 7
Gelöst Hardware für häufige Konstellationen mit USB und Swissbit TSE-Problem ab Android 11 JTL-POS - Fragen zu Hardware 5
Neu Eingangsrechnung und Gewinn rückwirkend ermitteln User helfen Usern - Fragen zu JTL-Wawi 1
Neu 💡Umsatzsteuer- und Internationalisierungs-Expertise von unserem neuen Partner countX News, Events und Umfragen 4
Neu JTL-Ameise Kontaktdaten-Export und in Greyhound importieren plus Zuweisen User helfen Usern 1
Neu PayPal Checkout mit Apple Pay und Google Pay Plugins für JTL-Shop 1
Neu isAdmin und Kundenlogin stehen sich im Weg.. Templates für JTL-Shop 0
Neu JTL Shipping Labels mit DHL Unterschied Versenden, Versenden 3.0 und Intraship User helfen Usern - Fragen zu JTL-Wawi 8
Neu Error beim öffnen von Artikeln und Unterkategorien in zweiter Sprache JTL-Shop - Fehler und Bugs 1
Bilder Upload und Fehlermeldung WooCommerce-Connector 0
Neu Lieferscheine digital unterschreiben und automatisch an Kunden senden Eigene Übersichten in der JTL-Wawi 1
Neu Zusammenführen / Konsolidieren von Artikeln aus 2 Quellen (Amazon / Shopify) und zentrale Bestands-Verteilung an beide Systeme User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL 1.5.55.8 Statistik - durschnittlicher Verkaufspreis - Mengen und Position User helfen Usern - Fragen zu JTL-Wawi 0
Neu Umlaute und Sonderzeichen WooCommerce-Connector 2
KI Textvorschläge und Übersetzung JTL-Wawi 1.8 0
Neu Conrad Marketplace / SCX Fragen und Antworten Einrichtung und Installation von JTL-eazyAuction 2
Neu wnm Hinweisfenster - Weisser Abstand zwischen Banner und Header Plugins für JTL-Shop 3
Workflow für Versandart Wenn/Und JTL-Wawi 1.7 0
Neu Anzeige von Neuheiten und Topsellern im JTL Shop 5 Allgemeine Fragen zu JTL-Shop 2
Neu SQL-Fehler bei Volltextsuche und Sonderzeichen JTL-Shop - Fehler und Bugs 0
Neu Suchen Mitarbeiter für 40h Festanstellung gern auch 100% Homeoffice für Produkt und Kategorie Pflege mit der Wawi Dienstleistung, Jobs und Ähnliches 0
Auftrag bezahlt und freigegeben - erscheint aber nicht in WMS JTL-Wawi 1.7 4
Frage zu Verkauf Kaufland Tschechien und Slowakei - Anbindung notwendig oder auch durch Kaufland realisierbar ? kaufland.de - Anbindung (SCX) 0
Neu Artikel mit 2 Lagerorten (Regal und Palette) Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1

Ähnliche Themen