X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=SL%2FIS.pm;h=566d1546b344c906765e3970c74ce31a4ce12120;hb=c7241bf7c547d63999898dee7b5dd486e4d122d3;hp=7d641309488e367406e1729d7b8967c7b31638b1;hpb=8c1d5d7530f3a1c923ee470b7ff31616800a8574;p=kivitendo-erp.git diff --git a/SL/IS.pm b/SL/IS.pm index 7d6413094..566d1546b 100644 --- a/SL/IS.pm +++ b/SL/IS.pm @@ -1818,6 +1818,11 @@ sub reverse_invoice { # delete acc_trans my @values = (conv_i($form->{id})); do_query($form, $dbh, qq|DELETE FROM acc_trans WHERE trans_id = ?|, @values); + + $query = qq|DELETE FROM custom_variables + WHERE (config_id IN (SELECT id FROM custom_variable_configs WHERE (module = 'ShipTo'))) + AND (trans_id IN (SELECT shipto_id FROM shipto WHERE (module = 'AR') AND (trans_id = ?)))|; + do_query($form, $dbh, $query, @values); do_query($form, $dbh, qq|DELETE FROM shipto WHERE (trans_id = ?) AND (module = 'AR')|, @values); $main::lxdebug->leave_sub(); @@ -2049,6 +2054,21 @@ sub retrieve_invoice { } $sth->finish; + # Fetch shipping address. + $query = qq|SELECT s.* FROM shipto s WHERE s.trans_id = ? AND s.module = 'AR'|; + $ref = selectfirst_hashref_query($form, $dbh, $query, $form->{id}); + + $form->{$_} = $ref->{$_} for grep { $_ ne 'id' } keys %$ref; + + if ($form->{shipto_id}) { + my $cvars = CVar->get_custom_variables( + dbh => $dbh, + module => 'ShipTo', + trans_id => $form->{shipto_id}, + ); + $form->{"shiptocvar_$_->{name}"} = $_->{value} for @{ $cvars }; + } + Common::webdav_folder($form); }