Table of Contents

rm#23899 Status "Partially Received" at DA, although all UX and UE have Status "Received"

rm#23899 (s.auch rm#21018 und 09.10.2017, 10.10.2017, 11.10.2017 )

Statistik vom Produktivsystem

(Stand 11.01.2018)

ASNs im System: ca. 1200000 (1,2 Millionen)

ASNs bei denen alle UEs auf “RECEIVED” stehen, aber die ASN trotzdem auf “PARTIALLY_RECEIVED”: ca. 1200.

Von diesen ASNs hat ca. die Hälfte (ca. 570) nur 2 UEs.

Bei ALLEN diesen ASNs mit 2 Positionen haben UEs lastChangeDate (oder wie auch immer das Feld heißt), das sich nur um 1-20 Millisekunden unterscheidet. Es gibt keine, wo der Unterschied im Bereich von Minuten ist. Das ist ein Indiz darauf, dass die UEs mit einer StockMovement geupdatet wurden (oder mit 2 die zeitlich nahe beieinander lagen). Zwei Testproben haben ergeben, dass die UEs wirklich mit EINER StockMovement-Nachricht mit mehreren Positionen geupdatet wurden.

Misc

Tests

Supplier-Benutzer: TST_SE_RUAG_POVMI

Testdaten befinden sich im Verzeichnis:

D:\development\projects\rm#23899_StatusPartiallyReceivedAtDAalthoughAllUXandUEhaveStatusReceived\testdata\oneMaterial\

Testablauf

  1. PO anpassen und importieren
    • PONumber anpassen
    • Mit JMS Client importieren
  2. ASN erstellen
  3. Bei der StockMovement Nachricht folgende Felder anpassen:
    • ASNNumber (und DeliveryNoteText wenn man will)
    • PONumber (rm#23899-0xx)
    • MaterialReference (2017_4901081377_0xx1 oder 2017_4901081377_0xx2)
    • DespatchAdviceUX (der Wert wird bei der ASN-Erstellung automatisch festgelegt)
    • DespatchAdviceUE (der Wert wird bei der ASN-Erstellung automatisch festgelegt)

Beschreibung für einen Robottest

  1. PO erstellen
    • PONumber → Zufallszahl?
  2. PO importieren
  3. ASN auf Basis der importierten PO erstellen
  4. ASN Position splitten, so dass 2 Positionen entstehen
  5. 2 UX mit jeweils einer UEs erstellen
  6. StockMovement Nachricht mit folgenden Anpassungen erstellen:
    • ASNNumber (und DeliveryNoteText wenn man will)
    • PONumber (rm#23899-0xx)
    • MaterialReference (2017_4901081377_0xx1 oder 2017_4901081377_0xx2)
    • DespatchAdviceUX (der Wert wird bei der ASN-Erstellung automatisch festgelegt)
    • DespatchAdviceUE (der Wert wird bei der ASN-Erstellung automatisch festgelegt)
  7. Stockmovement importieren
  8. Status beider UXes soll RECEIVED sein
  9. Status der ASN soll RECEIVED sein (im Fehlerfall - PARTIALLY_RECEIVED)

Problem reproduzieren

Das Problem lies sich reproduzieren unter folgenden Bedingungen:

Ursache

Pro UX wird eine ASN gesucht, manipuliert und gespeichert. D.h. wenn in einer StockMovement Position mehrere UX drinnen sind, dann kommt es zu diesem Fehler. Für jeweils eine wird der Status richtig berechnet, aber wir haben mehrere. Wenn alle UX in dieser StockMovement Nachricht auf RECEIVED stehen, dann kann die ASN nicht auf RECEIVED gestellt werden, da sie für die jeweils eine UX auf PARTIALLY_RECEIVED gestellt werden soll.