Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 066e1e7d

Von Bernd Bleßmann vor fast 4 Jahren hinzugefügt

  • ID 066e1e7d8da80343e45cb84c42fce2728e6be9c5
  • Vorgänger 3b955bea
  • Nachfolger 2dc3a3f1

Dateimanagement: Mahnung: Mahnrechnung bekommt Typ dunning_invoice statt dunning

Hintergrund: Es soll umgestellt werden, dass bei einem Mahnlauf erzeugte
Dokumente zur Mahnenden Rechnung gespeichert werden. Sattdessen sollen diese
zum Mahnlauf gespeichert werden. Dazu wird dann der object_type "dunning"
verwendet, der bisher für die Mahnrechnung benutzt wurde. Die bisher
gespeicherten Mahnrechnungen bekommen nun den object_type "dunning_invoice".

Später könnten die object_typen "dunning1-3", "dunning_invoice",
"dunning_orig_invoice" dann raus, sofern es ein Migrationsskript gibt ;)

Unterschiede anzeigen:

SL/Controller/File.pm
399 399
  if ( $self->file_type eq 'document' ) {
400 400
    my @object_types;
401 401
    push @object_types, $self->object_type;
402
    push @object_types, qw(dunning dunning1 dunning2 dunning3 dunning_orig_invoice) if $self->object_type eq 'invoice'; # hardcoded object types?
402
    push @object_types, qw(dunning1 dunning2 dunning3 dunning_invoice dunning_orig_invoice) if $self->object_type eq 'invoice'; # hardcoded object types?
403 403
    @files = SL::File->get_all_versions(object_id   => $self->object_id,
404 404
                                        object_type => \@object_types,
405 405
                                        file_type   => $self->file_type,
sql/Pg-upgrade2/file_storage_dunning_invoice.sql
1
-- @tag: file_storage_dunning_invoice
2
-- @description: Datei pro Mahnlauf als dunning. Altes dunning (Mahnrechnung) wird dunning_invoice
3
-- @depends: file_storage_type_dunning_orig_invoice
4

  
5
ALTER TABLE files
6
  DROP CONSTRAINT valid_type;
7
ALTER TABLE files
8
  ADD  CONSTRAINT valid_type CHECK (
9
             (object_type = 'credit_note'     ) OR (object_type = 'invoice'                 ) OR (object_type = 'sales_order'          )
10
          OR (object_type = 'sales_quotation' ) OR (object_type = 'sales_delivery_order'    ) OR (object_type = 'request_quotation'    )
11
          OR (object_type = 'purchase_order'  ) OR (object_type = 'purchase_delivery_order' ) OR (object_type = 'purchase_invoice'     )
12
          OR (object_type = 'vendor'          ) OR (object_type = 'customer'                ) OR (object_type = 'part'                 )
13
          OR (object_type = 'gl_transaction'  ) OR (object_type = 'dunning'                 ) OR (object_type = 'dunning1'             )
14
          OR (object_type = 'dunning2'        ) OR (object_type = 'dunning3'                ) OR (object_type = 'dunning_orig_invoice' )
15
          OR (object_type = 'dunning_invoice' ) OR (object_type = 'draft'                   ) OR (object_type = 'statement'            )
16
          OR (object_type = 'shop_image'      )
17
          OR (object_type = 'letter'          )
18
  );
19

  
20
UPDATE files SET object_type = 'dunning_invoice' WHERE object_type LIKE 'dunning';

Auch abrufbar als: Unified diff