X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Fetc%2Fschema.mysql;h=b7d53f8841bd122dbde1a8627eca1b5e104a711e;hp=0ab42e7eb23e4df50508a9fd952352ac189698d3;hb=75162bb14b3e38d66617077843f4dfdcaf09d5c4;hpb=d39d52aac8f38ea9115628039f0df5aa3ac826de diff --git a/rt/etc/schema.mysql b/rt/etc/schema.mysql index 0ab42e7eb..b7d53f884 100755 --- a/rt/etc/schema.mysql +++ b/rt/etc/schema.mysql @@ -58,7 +58,6 @@ CREATE TABLE Links ( PRIMARY KEY (id) ) TYPE=InnoDB; -CREATE UNIQUE INDEX Links1 ON Links (Base, Target, Type) ; CREATE INDEX Links2 ON Links (Base, Type) ; CREATE INDEX Links3 ON Links (Target, Type) ; CREATE INDEX Links4 ON Links (Type,LocalBase); @@ -118,21 +117,23 @@ CREATE TABLE ScripConditions ( # {{{ Transactions CREATE TABLE Transactions ( id INTEGER NOT NULL AUTO_INCREMENT, - EffectiveTicket integer NOT NULL DEFAULT 0 , - Ticket integer NOT NULL DEFAULT 0 , + ObjectType varchar(64) NOT NULL, + ObjectId integer NOT NULL DEFAULT 0 , TimeTaken integer NOT NULL DEFAULT 0 , Type varchar(20) NULL , Field varchar(40) NULL , OldValue varchar(255) NULL , NewValue varchar(255) NULL , + ReferenceType varchar(255) NULL, + OldReference integer NULL , + NewReference integer NULL , Data varchar(255) NULL , Creator integer NOT NULL DEFAULT 0 , Created DATETIME NULL , PRIMARY KEY (id) ) TYPE=InnoDB; -CREATE INDEX Transactions1 ON Transactions (Ticket); -CREATE INDEX Transactions2 ON Transactions (EffectiveTicket); +CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId); # }}} @@ -337,22 +338,30 @@ CREATE TABLE Templates ( # }}} -# {{{ TicketCustomFieldValues +# {{{ ObjectCustomFieldValues -CREATE TABLE TicketCustomFieldValues ( +CREATE TABLE ObjectCustomFieldValues ( id INTEGER NOT NULL AUTO_INCREMENT, - Ticket int NOT NULL , CustomField int NOT NULL , + ObjectType varchar(255) NOT NULL, # Final target of the Object + ObjectId int NOT NULL , # New -- Replaces Ticket + SortOrder integer NOT NULL DEFAULT 0 , # New -- ordering for multiple values + Content varchar(255) NULL , + LargeContent LONGTEXT NULL, # New -- to hold 255+ strings + ContentType varchar(80) NULL, # New -- only text/* gets searched + ContentEncoding varchar(80) NULL , # New -- for binary Content Creator integer NOT NULL DEFAULT 0 , Created DATETIME NULL , LastUpdatedBy integer NOT NULL DEFAULT 0 , LastUpdated DATETIME NULL , + Disabled int2 NOT NULL DEFAULT 0 , # New -- whether the value was current PRIMARY KEY (id) ) TYPE=InnoDB; -CREATE INDEX TicketCustomFieldValues1 ON TicketCustomFieldValues (CustomField,Ticket,Content); +CREATE INDEX ObjectCustomFieldValues1 ON ObjectCustomFieldValues (Content); +CREATE INDEX ObjectCustomFieldValues2 ON ObjectCustomFieldValues (CustomField,ObjectType,ObjectId); # }}} @@ -361,10 +370,13 @@ CREATE INDEX TicketCustomFieldValues1 ON TicketCustomFieldValues (CustomField,Ti CREATE TABLE CustomFields ( id INTEGER NOT NULL AUTO_INCREMENT, Name varchar(200) NULL , - Type varchar(200) NULL , - Queue integer NOT NULL DEFAULT 0 , + Type varchar(200) NULL , # Changed -- 'Single' and 'Multiple' is moved out + MaxValues integer, # New -- was 'Single'(1) and 'Multiple'(0) + Pattern varchar(255) NULL , # New -- Must validate against this + Repeated int2 NOT NULL DEFAULT 0 , # New -- repeated table entry Description varchar(255) NULL , SortOrder integer NOT NULL DEFAULT 0 , + LookupType varchar(255) NOT NULL, Creator integer NOT NULL DEFAULT 0 , Created DATETIME NULL , @@ -374,8 +386,22 @@ CREATE TABLE CustomFields ( PRIMARY KEY (id) ) TYPE=InnoDB; -CREATE INDEX CustomFields1 on CustomFields (Disabled, Queue); +# }}} + +# {{{ ObjectCustomFields + +CREATE TABLE ObjectCustomFields ( + id INTEGER NOT NULL AUTO_INCREMENT, + CustomField int NOT NULL , + ObjectId integer NOT NULL, + SortOrder integer NOT NULL DEFAULT 0 , + Creator integer NOT NULL DEFAULT 0 , + Created DATETIME NULL , + LastUpdatedBy integer NOT NULL DEFAULT 0 , + LastUpdated DATETIME NULL , + PRIMARY KEY (id) +) TYPE=InnoDB; # }}}