--- /dev/null
+-- @tag: files
+-- @description: Tabelle für Files
+-- @depends: release_3_4_1
+CREATE TABLE files(
+ id SERIAL PRIMARY KEY,
+ object_type TEXT NOT NULL, -- Tabellenname des Moduls z.B. customer, parts ... Fremdschlüssel Zusammen mit object_id
+ object_id INTEGER NOT NULL, -- Fremdschlüssel auf die id der Tabelle aus Spalte object_type
+ file_name TEXT NOT NULL,
+ file_type TEXT NOT NULL,
+ mime_type TEXT NOT NULL,
+ source TEXT NOT NULL,
+ backend TEXT,
+ backend_data TEXT,
+ title varchar(45),
+ description TEXT,
+ itime TIMESTAMP DEFAULT now(),
+ mtime TIMESTAMP,
+ CONSTRAINT valid_type CHECK (
+ (object_type = 'credit_note') OR (object_type = 'invoice') OR (object_type = 'sales_order') OR (object_type = 'sales_quotation')
+ OR (object_type = 'sales_delivery_order') OR (object_type = 'request_quotation') OR (object_type = 'purchase_order')
+ OR (object_type = 'purchase_delivery_order') OR (object_type = 'purchase_invoice')
+ OR (object_type = 'vendor') OR (object_type = 'customer') OR (object_type = 'part') OR (object_type = 'gl_transaction')
+ OR (object_type = 'dunning') OR (object_type = 'dunning1') OR (object_type = 'dunning2') OR (object_type = 'dunning3')
+ OR (object_type = 'draft') OR (object_type = 'statement'))
+);