Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision d33b65c4

Von mh@waldpark.octosoft.eu vor fast 8 Jahren hinzugefügt

  • ID d33b65c4b0b48750dd35ded28c02b1a92cbbd7bf
  • Vorgänger 8b9dd7c7
  • Nachfolger 93ab54fc

Einkaufsrechnungen nicht löschbar wegen SEPA

Abfangen einer Datenbankfehlermeldung falls ein Fremdschlüssel
im sepaexport auf die Rechnung gibt.

Unterschiede anzeigen:

SL/IR.pm
916 916
  $main::lxdebug->leave_sub();
917 917
}
918 918

  
919
sub has_sepaexport {
920
  $main::lxdebug->enter_sub();
921
  my ($self, $myconfig, $form) = @_;
922

  
923
  my $dbh = $form->dbconnect_noauto($myconfig);
924
  my $query = qq|SELECT count(*) FROM sepa_export_items where ap_id=$form->{id} |;
925
  my ($count) = selectrow_query($self, $dbh, $query);
926
  $dbh->disconnect;
927
  $main::lxdebug->leave_sub();
928

  
929
  return $count;
930
}
931

  
919 932
sub delete_invoice {
920 933
  $main::lxdebug->enter_sub();
921 934

  
922 935
  my ($self, $myconfig, $form) = @_;
936
  if ( $self->has_sepaexport(\%$myconfig, \%$form) ) {
937
      $main::lxdebug->leave_sub();
938
      return 0;
939
  }
923 940
  my $query;
924 941
  # connect to database
925 942
  my $dbh = SL::DB->client->dbh;
bin/mozilla/ir.pl
794 794
  $main::lxdebug->enter_sub();
795 795

  
796 796
  my $form     = $main::form;
797
  my %myconfig = %main::myconfig;
797 798
  my $locale   = $main::locale;
798 799

  
799 800
  $main::auth->assert('vendor_invoice_edit');
800 801

  
802
  if ( IR->has_sepaexport(\%myconfig, \%$form) ) {
803
    $form->error($locale->text('Cannot delete because of existing SEPA Export Items!'));
804
  }
801 805
  $form->header;
802 806
  print qq|
803 807
<form method=post action=$form->{script}>
locale/de/all
492 492
  'Cancel Accounts Receivables Transaction' => 'Debitorenbuchung stornieren',
493 493
  'Cannot check correct WebDAV folder' => 'Kann nicht den richtigen WebDAV Pfad überprüfen',
494 494
  'Cannot delete account!'      => 'Konto kann nicht gelöscht werden!',
495
  'Cannot delete because of existing SEPA Export Items!' => 'Rechnung kann nicht gelöscht werden weil es SEPA Überweisung(en) dazu gibt!',
495 496
  'Cannot delete customer!'     => 'Kunde kann nicht gelöscht werden!',
496 497
  'Cannot delete default account!' => 'Das Standard-Konto kann nicht gelöscht werden!',
497 498
  'Cannot delete delivery order!' => 'Lieferschein kann nicht gelöscht werden!',

Auch abrufbar als: Unified diff