1 alter Table Transactions ADD Column ObjectType varchar(64);
2 update Transactions set ObjectType = 'RT::Ticket';
3 ALTER TABLE Transactions ALTER COLUMN ObjectType SET NOT NULL;
4 alter table Transactions drop column EffectiveTicket;
5 alter table Transactions add column ReferenceType varchar(255) NULL;
6 alter table Transactions add column OldReference integer NULL;
7 alter table Transactions add column NewReference integer NULL;
8 drop index transactions1;
9 alter table Transactions rename column Ticket to ObjectId;
12 CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId);
14 alter table TicketCustomFieldValues rename to ObjectCustomFieldValues;
16 alter table ObjectCustomFieldValues rename column Ticket to ObjectId;
18 alter table objectcustomfieldvalues add column ObjectType varchar(255);
20 update objectcustomfieldvalues set ObjectType = 'RT::Ticket';
22 ALTER TABLE objectcustomfieldvalues ALTER COLUMN ObjectType SET NOT NULL;
24 alter table objectcustomfieldvalues add column Current int;
26 alter table objectcustomfieldvalues alter column Current SET default 1;
28 UPDATE objectcustomfieldvalues SET Current = 1;
30 alter table objectcustomfieldvalues add column LargeContent TEXT NULL;
32 alter table objectcustomfieldvalues add column ContentType varchar(80) NULL;
34 alter table objectcustomfieldvalues add column ContentEncoding varchar(80) NULL;
36 create index ObjectCustomFieldValues1 on objectcustomfieldvalues (CustomField,ObjectType,ObjectId,Content);
38 create index ObjectCustomFieldValues2 on objectcustomfieldvalues (CustomField,ObjectType,ObjectId);
41 CREATE SEQUENCE objectcustomfields_id_s;
43 CREATE TABLE ObjectCustomFields (
44 id INTEGER DEFAULT nextval('objectcustomfields_id_s'),
45 CustomField integer NOT NULL,
46 ObjectId integer NOT NULL,
47 SortOrder integer NOT NULL DEFAULT 0 ,
49 Creator integer NOT NULL DEFAULT 0 ,
50 Created TIMESTAMP NULL ,
51 LastUpdatedBy integer NOT NULL DEFAULT 0 ,
52 LastUpdated TIMESTAMP NULL ,
58 INSERT into ObjectCustomFields (CustomField, ObjectId, SortOrder, Creator, LastUpdatedBy) SELECT id, Queue, SortOrder, Creator, LastUpdatedBy from CustomFields;
60 alter table CustomFields add column LookupType varchar(255);
61 alter table CustomFields add column Repeated int2;
62 alter table CustomFields add column Pattern varchar(255) NULL;
63 alter table CustomFields add column MaxValues integer;
65 UPDATE CustomFields SET MaxValues = 0 WHERE Type LIKE '%Multiple';
66 UPDATE CustomFields SET MaxValues = 1 WHERE Type LIKE '%Single';
67 UPDATE CustomFields SET Type = 'Select' WHERE Type LIKE 'Select%';
68 UPDATE CustomFields SET Type = 'Freeform' WHERE Type LIKE 'Freeform%';
69 UPDATE CustomFields Set LookupType = 'RT::Queue-RT::Ticket';
70 ALTER TABLE CustomFields ALTER COLUMN LookupType SET NOT NULL;
71 UPDATE CustomFields Set Repeated = 0;
72 ALTER TABLE CustomFields ALTER COLUMN Repeated SET DEFAULT 0;
73 ALTER TABLE CustomFields ALTER COLUMN Repeated SET NOT NULL;
74 alter table CustomFields drop column Queue;