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

John

Sehr aktives Mitglied
3. März 2012
3.900
950
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
9.126
1.909
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
9.126
1.909
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
288
157
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
9.126
1.909
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.900
950
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
1.014
370
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
Neu Vorschlag: Inventur direkt im JTL-WMS ermöglichen JTL-WMS / JTL-Packtisch+ - Ideen, Lob und Kritik 0
Neu Bei Klick auf Warenkorb Button nicht direkt Warenkorb Templates für JTL-Shop 8
Neu JTL Coupon - Rabatt direkt am Artikel Allgemeine Fragen zu JTL-Shop 0
Neu KI-WaWi-Workflows: Eigene KI-Endpunkte direkt aus JTL-Workflows ansprechen – ohne Plugin, flexibel und schnell Dienstleistung, Jobs und Ähnliches 3
Neu Kindartikel direkt anzeigen/auswählen wenn nur ein Kind vorhanden ist? User helfen Usern - Fragen zu JTL-Wawi 0
Neu Ein Auftrag, 2 Versanddienstleister User helfen Usern - Fragen zu JTL-Wawi 0
Neu Wo kann ich mich über JTL Kundencenter beschweren? 20 Minuten Lang einen Bug im Ticket dokumentiert, und am Ende "ein Fehler ist aufgetreten" Smalltalk 3
WMS Druckverwaltung -> Fenster friert ein > WMS-mobile & POS läuft gar nicht/extrem langsam 1.11.4 JTL-Wawi 1.11 0
Neu DPD: YourInternalID 28: (1) Strasse - Postleitzahl - Ort kann nicht zugeordnet werden. Evtl. liegt ein Schreibfehler in der Adresse vor. JTL-ShippingLabels - Fehler und Bugs 0
Neu Ist ein Hin- und Rückversand so machbar? User helfen Usern - Fragen zu JTL-Wawi 3
Bildimporte per Ameise ein "netter" Zeitvertreib JTL-Wawi 1.11 0
Neu Erstmals seit Jahren ein FTP-Problem Betrieb / Pflege von JTL-Shop 12
Neu GLS es fehlt immer ein Etikett / Code 0009 JTL-ShippingLabels - Ideen, Lob und Kritik 3
Wawi friert nach wählen eines beliebigen Menüpunktes ein JTL-Wawi 1.11 5
Neu Sql Express 2022 - wawi sagt beim Start es ist ein Update bereit - gelöst Installation von JTL-Wawi 3
Kundenstammdaten: Wie erkenne ich in der Wawi, ob ein Shop-Kunde ein Kundenkonto angelegt hat? JTL-Wawi 1.9 2
Neu Lister 2.0 liest keine Daten ein Amazon-Lister - Fehler und Bugs 7

Ähnliche Themen