rt 4.2.13 ticket#13852
[freeside.git] / rt / etc / upgrade / 3.3.0 / schema.Pg
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;
10
11
12 alter table TicketCustomFieldValues rename to ObjectCustomFieldValues;
13
14 alter table ObjectCustomFieldValues  rename column Ticket to ObjectId;
15
16 alter table objectcustomfieldvalues add column ObjectType varchar(255);
17
18 update objectcustomfieldvalues set ObjectType = 'RT::Ticket';
19
20 ALTER TABLE objectcustomfieldvalues ALTER COLUMN ObjectType SET NOT NULL;
21
22 alter table objectcustomfieldvalues add column Current int;
23
24 alter table objectcustomfieldvalues alter column Current SET  default 1;  
25
26 UPDATE objectcustomfieldvalues SET Current = 1;
27
28 alter table objectcustomfieldvalues add column LargeContent TEXT NULL;
29
30 alter table objectcustomfieldvalues add column ContentType varchar(80) NULL;
31
32 alter table objectcustomfieldvalues add column ContentEncoding varchar(80) NULL;
33
34
35 CREATE SEQUENCE objectcustomfields_id_s;
36
37 CREATE TABLE ObjectCustomFields (
38   id INTEGER DEFAULT nextval('objectcustomfields_id_s'),
39   CustomField integer NOT NULL,
40   ObjectId integer NOT NULL,
41   SortOrder integer NOT NULL DEFAULT 0  ,
42
43   Creator integer NOT NULL DEFAULT 0  ,
44   Created TIMESTAMP NULL  ,
45   LastUpdatedBy integer NOT NULL DEFAULT 0  ,
46   LastUpdated TIMESTAMP NULL  ,
47   PRIMARY KEY (id)
48
49 );
50
51
52 INSERT into ObjectCustomFields (CustomField, ObjectId, SortOrder, Creator, LastUpdatedBy) SELECT  id, Queue, SortOrder, Creator, LastUpdatedBy from CustomFields;
53
54 alter table CustomFields add column LookupType varchar(255);
55 alter table CustomFields add column Repeated int2;
56 alter table CustomFields add column Pattern varchar(255) NULL;
57 alter table CustomFields add column MaxValues integer;
58
59 UPDATE CustomFields SET MaxValues = 0 WHERE Type LIKE '%Multiple';
60 UPDATE CustomFields SET MaxValues = 1 WHERE Type LIKE '%Single';
61 UPDATE CustomFields SET Type = 'Select' WHERE Type LIKE 'Select%';
62 UPDATE CustomFields SET Type = 'Freeform' WHERE Type LIKE 'Freeform%';
63 UPDATE CustomFields Set LookupType = 'RT::Queue-RT::Ticket';
64 ALTER TABLE CustomFields ALTER COLUMN LookupType SET NOT NULL;
65 UPDATE CustomFields Set Repeated = 0;
66 ALTER TABLE CustomFields ALTER COLUMN Repeated SET DEFAULT 0;
67 ALTER TABLE CustomFields ALTER COLUMN Repeated SET NOT NULL;
68 alter table CustomFields drop column Queue;