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

John

Sehr aktives Mitglied
3. März 2012
3.857
916
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.076
1.893
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.076
1.893
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
269
143
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.076
1.893
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.857
916
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
958
345
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 DHL Versenden 3.0 - Versand von US-Ware in die Schweiz blockiert JTL-ShippingLabels - Fehler und Bugs 0
Neu zweiten Mandanten für Ankauf von Ware? gleiche Firma, gleiche Person. Lizenzen? User helfen Usern - Fragen zu JTL-Wawi 2
Beantwortet Workflow Auftrag über FFN ausliefern wenn Ware eingelagert JTL-Workflows - Ideen, Lob und Kritik 6
Neu Kindartikel direkt anzeigen/auswählen wenn nur ein Kind vorhanden ist? User helfen Usern - Fragen zu JTL-Wawi 0
Workflow: Neue Kunden direkt einer Kundengruppe zuordnen JTL-Wawi 1.10 6
Neu Rechnungskorrektur direkt aus „Verkauf → Aufträge → Mit Rechnung“ möglich? Arbeitsabläufe in JTL-Wawi 2
Neu Rückzahlungen aus JTL Wawi direkt auslösen User helfen Usern - Fragen zu JTL-Wawi 0
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
Neu JTL Shop 5: ein Kundenkonto in der WAWI mit mehreren Konten im Webshop Allgemeine Fragen zu JTL-Shop 7
Mindest- / Maximalbestand setzen Verkaufskanäle SXC WaWi friert ein JTL-Wawi 1.10 3
Neu NOVA Menü blendet immer Untermenüs ein? Allgemeine Fragen zu JTL-Shop 1
Webinar: So sieht ein vollständiges E-Commerce-Steuersetup wirklich aus - mit SKULD & countX am 25.09.25 Messen, Stammtische und interessante Events 0
Neu Wartungsmodus schaltet sich ein Betrieb / Pflege von JTL-Shop 0
Neu Ist das ein BUG JTL-Ameise - Fehler und Bugs 1
Neu Unhandled Exception beim Versuch ein WEBP Format als Merkmalbild zu importieren JTL-Wawi - Fehler und Bugs 0
Neu Welches PlugIn für ein besseres Google Ranking? Plugins für JTL-Shop 2
Neu PayPal Plugin 2.0 - Vaulting - Ist IMMER ein neues Onboarding nötig? Wie prüfen, ob OK? Plugins für JTL-Shop 6
Fehler in der JTL-Wawi-Anzeige, ob ein Artikel bereits einem Onlineshop zugeordnet wurde. JTL-Wawi 1.10 5

Ähnliche Themen