Neu Ware direkt in ein Standardlager einbuchen per SQL StoreProcedure dbo.spWarenlagerEingangSchreiben

John

Sehr aktives Mitglied
3. März 2012
3.102
685
Berlin
Hi,

ich möchte Ware in ein Standardlager (nicht WMS) direkt per dbo.spWarenlagerEingangSchreiben.
Ameise und REST sind aus Kosten- und Performancegründen keine Option.

Leider finde ich dazu gar nichts. Vielleicht hat ja jemand von Euch mit der Funktion schonmal gearbeitet.

Die spWarenlagerEingangSchreiben
Code:
DECLARE @RC int
DECLARE @xWarenlagerEingaenge xml
DECLARE @kArtikel int
DECLARE @kWarenLagerPlatz int
DECLARE @kLieferantenBestellungPos int
DECLARE @kBenutzer int
DECLARE @fAnzahl decimal(28,14)
DECLARE @fEkEinzel decimal(28,14)
DECLARE @cLieferscheinNr varchar(255)
DECLARE @cChargenNr varchar(255)
DECLARE @dMHD datetime
DECLARE @dGeliefertAm datetime
DECLARE @cKommentar varchar(255)
DECLARE @kGutschriftPos int
DECLARE @kLHM int
DECLARE @kSessionId int
DECLARE @kBuchungsart int
DECLARE @kBestellPosUmlagerung int
DECLARE @kRMRetourePos int
DECLARE @nHistorieNichtSchreiben int
DECLARE @kWarenlagerEingang int

EXECUTE @RC = [dbo].[spWarenlagerEingangSchreiben]
   @xWarenlagerEingaenge
  ,@kArtikel
  ,@kWarenLagerPlatz
  ,@kLieferantenBestellungPos
  ,@kBenutzer
  ,@fAnzahl
  ,@fEkEinzel
  ,@cLieferscheinNr
  ,@cChargenNr
  ,@dMHD
  ,@dGeliefertAm
  ,@cKommentar
  ,@kGutschriftPos
  ,@kLHM
  ,@kSessionId
  ,@kBuchungsart
  ,@kBestellPosUmlagerung
  ,@kRMRetourePos
  ,@nHistorieNichtSchreiben
  ,@kWarenlagerEingang OUTPUT
GO

1. kSessionId
Eine Korrekturbuchung in der Wawi holt sich zunächste via spGetAndUpdatePK [@cName = 'tWarenLagerEingangSessionID'] eine SessionID und übergibt sie als kSessionId.
Ein Import per Ameise setzt kSessionId = 0
Welchen Effekt hat das?
Wie lange kann ich eine SessionID nutzen? Für alle Eingänge meiner Imporsitzung?

2. dGeliefertAm
Die Ameise setzt dGeliefertAm = NULL während eine Korrekturbuchung das Datum setzt.
Effekt?

3. kWarenLagerPlatz
Die Ameise und Wawi ermitteln kWarenLagerPlatz (hier mit kLager = 2) unterschiedlich.
Wawi:
Code:
SELECT * FROM
tWarenLagerPlatz
WHERE kWarenlager = 2
AND ((kWarenLagerPlatzTyp IS NULL) OR (kWarenLagerPlatzTyp <> 10))

Ameise:
Code:
SELECT tWarenLagerPlatz.kWarenLagerPlatz, tWarenLager.cName
FROM tWarenLager
JOIN tWarenLagerPlatz ON tWarenLagerPlatz.kWarenLager = tWarenLager.kWarenLager
WHERE tWarenLager.nFulfillment < 2 AND tWarenLager.nAktiv = 1 AND tWarenLager.nLagerplatzVerwaltung = 0 AND ISNULL(tWarenLager.kUser, 0) = 0
AND tWarenLagerPlatz.kwarenlagerplatztyp != 10 AND tWarenLagerPlatz.kWarenLager=2

Wieso läuft das unterschiedlich?

Der Rest der Procedur ist klaro...

John
 

Enrico W.

Administrator
Mitarbeiter
27. November 2014
8.717
1.774
Welche Performancegründe sprechen gegen die Ameise?
Mit dem Import Preise und Bestände ist das m.E. schnell erledigt?
 

Enrico W.

Administrator
Mitarbeiter
27. November 2014
8.717
1.774
Doch, die Frage ist durchaus ernst gemeint, denn dass das so langsam sein soll kann ich mit meinen Datenbeständen nicht reproduzieren.
Hättest du eine Beispieldatenbank, mit der ich das mal prüfen könnte?
 

FOC Solutions

Offizieller Servicepartner
SPBanner
5. Juli 2024
150
87
Doch, die Frage ist durchaus ernst gemeint, denn dass das so langsam sein soll kann ich mit meinen Datenbeständen nicht reproduzieren.
Hättest du eine Beispieldatenbank, mit der ich das mal prüfen könnte?
Das Thema liegt beim Kollegen, nur der ist jetzt im Urlaub. Wir gucken danach, ob wir Euch die Kunden-DB zur Verfügung stellen dürfen.
 

Enrico W.

Administrator
Mitarbeiter
27. November 2014
8.717
1.774
Nein, hab ich nicht - und wenn ich sie hätte: Wir unterstützen keine DB-Eingriffe.
Das hat auch durchaus Gründe - denn mit dem Eintrag in der Datenbank ist es nicht getan. Es müssen in der Folge Aktionen ausgelöst werden - wie z.B. müssen Abgleiche getriggert werden, Workflows etc.

Um das mal in Relationen zu setzen habe ich jetzt auf die Schnelle eine CSV mit 100k Artikeln erstellt. Diese wurde gerade importiert. Mit der Ameise.
100.000 Datensätze in 54 Minuten, 47 Sekunden.
Als nächstes importiere ich zu diesen 100k Artikeln Bestände. Mal schauen, wie lange das dauert.

Der Import der Bestände hat für 100k Artikel auch gut eine Stunde gedauert.
 
Zuletzt bearbeitet:

John

Sehr aktives Mitglied
3. März 2012
3.102
685
Berlin
Die Lager, in die ich schreiben möchte, dienen nur der Ansicht.
Es werden dort Lagerbestände eines anderen Standorts mit einer eigenen, anderen Warenwirtschaft angezeigt.
Sie sind für Auslieferung gesperrt und Workflows darauf nicht gewünscht.

Insofern finde ich Beschreiben legitim.

Hat jemand noch eine Idee, was es mit der SessionID und der Unerschiedlichen Auswertung von kWarenLagerPlatz auf sich hat?
Rober vielleicht @T4DT.GmbH
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
767
275
Moin. SessionId wird von WMS und WaWi benutzt, ist eine quasi Richtlinie von Microsoft, und es wird an zig Stellen verwendet. Die Ameise braucht keine Session und prüft es auch nicht. Wir erstellen eine SessionId und verwerfen diese nach dem Vorgang. Genauso dGeliefertAm - ist für den Vorgang in der Ameise irrelevant. Beim kWarenlagerPlatz bezieht die WaWi das Vorwissen und ändert die Abfrage je nach Lager, die Ameise versucht mit einer Abfrage alles zu regeln. In der Regel ist die Ameise "dumm" und "faul" - alles was nicht unbedingt gemacht werden muss - wird auf Null gestellt oder nicht berechnet, und ohne bekannte Lager/Artikel Zustände muss die Abfrage geändert werden.
 
Ähnliche Themen
Titel Forum Antworten Datum
Abgelaufene Ware ausbuchen oder versenden JTL-Wawi 1.9 0
Neu B-Ware/Artikelzustände im Wawi Arbeitsabläufe in JTL-Wawi 5
Neu Ware ins Amazon Lager senden, nutzt ihr dafür JTL? Amazon-Anbindung - Ideen, Lob und Kritik 5
Von Workflow lokal gespeicherte Datei direkt wieder löschen lassen JTL-Wawi 1.8 1
In Diskussion Hinweis im WMS Ausgeben wenn ein bestimmter Artikel verpackt wird über WMS JTL-Workflows - Ideen, Lob und Kritik 5
Neu Habe ich ein Sicherheitsproblem oder bin ich nur unfähig? Allgemeine Fragen zu JTL-Shop 19
Neu Amazon Lister 2.0 - Code 99016 - Ein Maximum von 1 Vorkommen (oder Vorkommnissen) ist für das Attribut color zulässig Amazon-Lister - Fehler und Bugs 1
Neu [Liquid Error: Ein Aufrufziel hat einen Ausnahmefehler verursacht] Fehlermeldung in meiner Designvorlage auf Ebay eBay-Designvorlagen - Fehler und Bugs 0
Neu Inkludierte GREYHOUND-Lizenzen gibt es ein Onboarding? User helfen Usern - Fragen zu JTL-Wawi 12
Neu Kann ein FYRST Geschäftskonto zum Zahlungsabgleich an JTL angebunden werden? Thema Bankanbindung Allgemeines zu den JTL-Connectoren 1
Neu 2 verschiedene Lager - Trennung - nur ein Lager für WMS Versand möglich ? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Warenpost National Fehlermeldung bitte Sie ein ganze Zahl ein JTL-ShippingLabels - Fehler und Bugs 1
Gelöst zusätzliche Kasse - Tablet liest Artikel in Dauerschleife ein und zeigt aber keine an JTL-POS - Fehler und Bugs 4

Ähnliche Themen