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
rm29724 [2019/03/19 14:05] – [Misc Ideas] 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?