User Tools

Site Tools


rm29724

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
rm29724 [2019/03/19 10:24] – [Test DAs] kalaschnikowrm29724 [2019/03/19 17:38] (current) – [Misc Ideas] kalaschnikow
Line 1: Line 1:
 +====== rm29724 DA-Erstellung nicht möglich trotz DA im Status CANCELLED ======
  
 +[[https://cust-projects.seeburger.de/redmine/issues/29724|rm29724 DA-Erstellung nicht möglich trotz DA im Status CANCELLED]]
 +
 +===== Description =====
 +...
 +
 +==== Mit eigenen Worten ====
 +...
 +
 +
 +===== Analysis =====
 +
 +==== Versionen ====
 +
 +=== ASNDAOImpl ===
 +
 +ASNDAOImpl.java:498 (in createASNModel())
 +<code>
 +asnModel.setDespatchStatus(ASNModel.ASN_STATUS.values()[rs.getInt("cDespatchStatus")]);
 +</code>
 +
 +Hier kann passieren, dass:
 +  * die Daten in der DB durch ein anderes Statement manipuliert werden
 +  * die Indizes von Version zu Version geändert wurden (**eher unwahrscheinlich**)
 +
 +==== Test DAs ====
 +
 +  * rm29724_001 
 +    * -> Cancel UE 
 +      * => UE.status = CANCELLED, DA = CANCELLED, PO = OPEN
 +  * rm29724_002 
 +
 +
 +===== Misc Ideas =====
 +  * Für ''UEModel.setStatus(UEModel.UE_STATUS.CANCELLED)'' kann mit hoher Wahrscheinlichkeit nur eine Stelle im Code verantwortlich sein:
 +    * ''ASNModelFactory.cancelCompleteASN()'' (Zeile 557)
 +      * Ein Indiz dafür ist, dass an der gleichen Stelle auch UENumber auf "" (leer) gesetzt wird
 +      * Das zweite Indiz dafür ist, dass die Methode ''UEDataActionScreen.cancelUEInUpdateMode( request, asnId )'' die ASN aus der Session zieht
 +      * Das dritte Indiz dafür ist, dass die o.g. Methode beim DA-Update ausgeführt wird. D.h. nach dem Unlock. Das hat die Saskia vermutet. 
 +      * Ein Indiz dagegen sind aber die verschiedenen Zeitstempel in der History für UENumber- und UEStatus-Änderungen
 +
 +
 +  * Für ''UEModel.setStatus(UEModel.UE_STATUS.SENT)'' können 2 Stellen im Code verantwortlich sein:
 +    * ''ASNStatusModel.recalculateASNStatusBottomUp()'' 
 +      * In diesem Fall gibt es folgende Möglichkeiten:
 +        * ''recalculateASNStatusBottomUp()'' funktioniert nicht richtig
 +        * ''recalculateASNStatusBottomUp()'' bekommt nicht die richtigen ''List<String> ueNumbers'' im Parameter
 +        * ?
 +    * ''ASNStatusModel.updateASNStatusToSent()''
 +  * Für manche Operationen das ASNModel wird aus der Session geholt. Vielleicht führt das zu dem Problem?