Project

General

Profile

Fehler #204

Automatisches Auslagern beim Rechnung schreiben funktioniert mit Commit 8c1d5d nicht mehr

Added by Jan Büren almost 3 years ago. Updated over 2 years ago.

Status:
Gelöst
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

Von Ronny aus der Devel-Liste:

Wenn das Feature "automatisches Auslagern" bei der Mandantenkonfiguration gesetzt ist, funktioniert das Rechnungsschreiben nicht mehr - sobald man auf "Buchen"
geht "Drucken und Buchen" etc. geht.
Das ganze funktioniert seit dem Commit 8c1d5d nicht mehr.
Es wäre es schön, wenn diese Problem schnell behoben werden könnte, da
wir dieses Feature intensiv nutzen.

History

#1 Updated by Jan Büren almost 3 years ago

Hier nochmal, die ursprüngliche Anforderung:

http://trac.kivitendo.de/ticket/2491

#2 Updated by Martin Helmling almost 3 years ago

Habe ich gerade versucht zu reproduzieren:
neue Verkaufrechnung angelegt, eine Position angelegt mit Anzahl 10.
Dann gebucht, und unter Lagerbewegungen werden 10 Stk des Artikel herausgenommen/verschickt.

Was funktioniert den nicht !!

#3 Updated by Bernd Bleßmann almost 3 years ago

Jan hat das gefixt in 573d7fd17b43a09a21e1acb2423b0160523819a8 und f5b13074ae7356ed59a529ace1ccd76c5b4e49c9.

Entweder hat er vergessen, das Ticket hier zu schließen oder hat sich darauf verlassen, dass das "fix für #204" in seiner commit message das für ihn erledigt.

#4 Updated by Martin Helmling almost 3 years ago

Ja nun muss das Ganze wieder an single-dbh angepasst werden
oder ist $provided_dbh bereits das single-dbh ?

Werde es mal anschauen

#5 Updated by Bernd Bleßmann almost 3 years ago

Martin Helmling schrieb:

Ja nun muss das Ganze wieder an single-dbh angepasst werden
oder ist $provided_dbh bereits das single-dbh ?

Nun, da jetzt alles single-dbh sein sollte, sollte es auch $provided_dbh sein. Und wenn nicht, ist es auf jeden Fall der Handler der aufrufenden Routine (wenn die nicht irgendwas ungewöhnlich komisches übergibt. Hier ist es aber SL::DB::Inventory->new->db->dbh).
Der commit hat sich wahrscheinlich durch die Umstellung auf single-dbh erledigt, da get_standard_dbh ja jetzt den Rose-Handler liefert.

Genau da lag ja vorher das Problem. Beim Auslagern aus der Rechnung wird post_invoice nämlich mit dem Rose-Handler (in einer Transaktion) aufgerufen, der auch das Auslagern übernimmt, um das alles in einer Transaktion zu haben. Durch Deine Änderung wurde aber für dieselbe DB-Zeile, um mtime zu lesen, ein neuer/anderer Handler (standard_dbh) verwendet. Und der wartete auf das Ende der Transaktion (und wartete, und wartete).

#6 Updated by Jan Büren over 2 years ago

  • Status changed from Neu to Gelöst

Hi, ja das ist in der Tat jetzt gefixt. Ich hatte das hier nur nochmal dokumentiert.
Ist jetzt geschlossen

Also available in: Atom PDF