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 Workflow - Stücklisten im Auftrag abfragen und korrekt in einer Mail auflisten User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL 5, Footerdesign, Boxabstände und Ausrichtung korrigieren Templates für JTL-Shop 0
Neu Firmen- und E-Mail Einstellungen - Text hevorheben (fett) und Anordnung in Vorlage anpassen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
4K Monitor und Skalierung JTL-Wawi 1.8 2
Neu Updatepolitik und Testen von Software - aktuell 5.2.4 Installation / Updates von JTL-Shop 8
Kunden und Artiekl ausblenden JTL-Wawi App 1
Neu Es werden nur jpg Bilder angezeigt und keine webP Gelöste Themen in diesem Bereich 3
Neu Auftragszahlung über Kasse, Auftrag wird nicht als "Verpackt und Versendet" markiert JTL-POS - Fehler und Bugs 1
Neu Kassenschublade und Drucker bei iMin D4 Pro JTL-POS - Fragen zu Hardware 1
Neu eBay zusammenfassen von Aufträgen und Buchhaltung User helfen Usern - Fragen zu JTL-Wawi 0
Neu Selbstabholer und eBay User helfen Usern - Fragen zu JTL-Wawi 6
Workflows: Versandgruppen finden und ansprechen JTL-Wawi 1.8 0
Auswertung POS-Umsätze nach Wochentag und Tageszeit JTL-Wawi 1.7 0
Neu Fehler bei Sprach- und Währungsumstellung Allgemeine Fragen zu JTL-Shop 0
Neu Verkaufspreis Differenz Shop und Wawi JTL-Shop - Fehler und Bugs 4
Neu Mehrere Sprachen aktivieren und verschiede Preise pro Land erstellen Betrieb / Pflege von JTL-Shop 1
Neu Paypal Plugin Version 1.2.0 läuft und 1.4.0. läuft nicht auf derselben Umgebung Plugins für JTL-Shop 0
Neu Was steckt hinter der Zahl von 53 Bildern auf Ebay bei Variationsartikeln (und einer unsinnigen Fehlermeldung der Wawi)? JTL-Wawi - Fehler und Bugs 2
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 1
Neu Neues Plugin: Google Translate / Übersetzer (DSGVO-konform und weitere Features) Plugins für JTL-Shop 2
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 4
In Bearbeitung Startschwierigkeiten Scanner und Bon Drucker Allgemeine Fragen zu JTL-POS 3
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 8
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 2

Ähnliche Themen