Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 96670fe8

Von Moritz Bunkus vor etwa 8 Jahren hinzugefügt

  • ID 96670fe82a38116ac10592a6ccbd34800f8ad9f8
  • Vorgänger e5a76ed1
  • Nachfolger 0b84f51f

»with_transaction« anstelle von »do_transaction« verwenden

Es sollte so selten wie möglich »do_transaction« verwndet werden, damit
man sich immer angewöhnt, »with_transaction« zu nutzen.

Hintergründe und Unterschiede zwischen den beiden Funktionen sind in der
Dokumentation von SL/DB.pm beschrieben.

Unterschiede anzeigen:

t/ar/ar.t
72 72

  
73 73
  my $db = $invoice->db;
74 74

  
75
  $db->do_transaction( sub {
75
  $db->with_transaction( sub {
76 76

  
77 77
  my $tax = SL::DB::Manager::Tax->find_by(taxkey => 0, rate => 0);
78 78

  
......
91 91

  
92 92
  _save_and_pay_and_check(invoice => $invoice, bank => $bank, pay => 1, check => 1);
93 93

  
94
  1;
95

  
94 96
  }) || die "something went wrong: " . $db->error;
95 97
  return $invoice->invnumber;
96 98
};
......
119 121

  
120 122
  my $db = $invoice->db;
121 123

  
122
  $db->do_transaction( sub {
124
  $db->with_transaction( sub {
123 125

  
124 126
  # TODO: check for currency and exchange rate
125 127

  
......
140 142
  $invoice->create_ar_row( chart => $ar_chart );
141 143
  _save_and_pay_and_check(invoice => $invoice, bank => $bank, pay => 1, check => 1);
142 144

  
145
  1;
143 146
  }) || die "something went wrong: " . $db->error;
144 147
  return $invoice->invnumber;
145 148
};

Auch abrufbar als: Unified diff