Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 8f4fd78c

Von Tamino Steinert vor mehr als 1 Jahr hinzugefügt

  • ID 8f4fd78c474b47b018c6379b5e2aca8be0a3136d
  • Vorgänger b8643249
  • Nachfolger 4cdf2968

DB::DeliveryOrder: Persistenter Record-Type

Verändere oder_type zu record_type als Enum

Unterschiede anzeigen:

SL/DB/DeliveryOrder.pm
}
sub type {
goto &order_type;
goto &record_type;
}
sub is_type {
SL/DB/MetaSetup/DeliveryOrder.pm
language_id => { type => 'integer' },
mtime => { type => 'timestamp' },
notes => { type => 'text' },
order_type => { type => 'text', not_null => 1 },
ordnumber => { type => 'text' },
oreqnumber => { type => 'text' },
payment_id => { type => 'integer' },
record_type => { type => 'enum', check_in => [ 'sales_delivery_order', 'purchase_delivery_order', 'supplier_delivery_order', 'rma_delivery_order' ], db_type => 'delivery_order_types', not_null => 1 },
reqdate => { type => 'date' },
salesman_id => { type => 'integer' },
shippingpoint => { type => 'text' },
sql/Pg-upgrade2/deliveryorder_type_to_record_type.sql
-- @tag: deliveryorder_type_to_record_type
-- @description: Convert deliveryorder_type to record_type enum
-- @depends: deliveryorder_type
CREATE TYPE delivery_order_types AS ENUM (
'sales_delivery_order',
'purchase_delivery_order',
'supplier_delivery_order',
'rma_delivery_order'
);
ALTER TABLE delivery_orders ADD COLUMN record_type delivery_order_types;
UPDATE delivery_orders SET record_type = 'sales_delivery_order'
WHERE order_type = 'sales_delivery_order';
UPDATE delivery_orders SET record_type = 'purchase_delivery_order'
WHERE order_type = 'purchase_delivery_order';
UPDATE delivery_orders SET record_type = 'supplier_delivery_order'
WHERE order_type = 'supplier_delivery_order';
UPDATE delivery_orders SET record_type = 'rma_delivery_order'
WHERE order_type = 'rma_delivery_order';
ALTER TABLE delivery_orders ALTER COLUMN record_type SET NOT NULL;
ALTER TABLE delivery_orders DROP COLUMN order_type;

Auch abrufbar als: Unified diff