Merge remote-tracking branch 'upstream/4.3' into 4.3-master-2013-05-01-11-04-54
[civicrm-core.git] / xml / schema / Activity / Activity.xml
1 <?xml version="1.0" encoding="iso-8859-1" ?>
2 <table>
3 <base>CRM/Activity</base>
4 <class>Activity</class>
5 <name>civicrm_activity</name>
6 <comment>Other Activity details stored here include contact, location, details.</comment>
7 <add>1.1</add>
8 <log>true</log>
9 <field>
10 <name>id</name>
11 <uniqueName>activity_id</uniqueName>
12 <title>Activity ID</title>
13 <import>true</import>
14 <type>int unsigned</type>
15 <required>true</required>
16 <comment>Unique Other Activity ID</comment>
17 <add>1.1</add>
18 </field>
19 <primaryKey>
20 <name>id</name>
21 <autoincrement>true</autoincrement>
22 </primaryKey>
23 <field>
24 <name>source_contact_id</name>
25 <type>int unsigned</type>
26 <title>Source Contact</title>
27 <import>true</import>
28 <headerPattern>/(activity.)?source(.contact(.id)?)?/i</headerPattern>
29 <comment>Contact ID of the person scheduling or logging this Activity. Usually the authenticated user.</comment>
30 <add>1.1</add>
31 <drop>4.4</drop>
32 </field>
33 <foreignKey>
34 <name>source_contact_id</name>
35 <table>civicrm_contact</table>
36 <key>id</key>
37 <add>1.1</add>
38 <drop>4.4</drop>
39 <onDelete>SET NULL</onDelete>
40 </foreignKey>
41 <index>
42 <name>UI_source_contact_id</name>
43 <fieldName>source_contact_id</fieldName>
44 <add>2.0</add>
45 <drop>3.2</drop>
46 </index>
47
48 <field>
49 <name>source_record_id</name>
50 <type>int unsigned</type>
51 <title>Source Record</title>
52 <comment>Artificial FK to original transaction (e.g. contribution) IF it is not an Activity. Table can be figured out through activity_type_id, and further through component registry.</comment>
53 <add>2.0</add>
54 </field>
55 <index>
56 <name>UI_source_record_id</name>
57 <fieldName>source_record_id</fieldName>
58 <add>3.2</add>
59 </index>
60 <field>
61 <name>activity_type_id</name>
62 <title>Activity Type ID</title>
63 <import>true</import>
64 <type>int unsigned</type>
65 <required>true</required>
66 <export>false</export>
67 <default>1</default>
68 <headerPattern>/(activity.)?type(.id$)/i</headerPattern>
69 <comment>FK to civicrm_option_value.id, that has to be valid, registered activity type.</comment>
70 <add>1.1</add>
71 </field>
72 <index>
73 <name>UI_activity_type_id</name>
74 <fieldName>activity_type_id</fieldName>
75 <add>1.6</add>
76 </index>
77
78 <field>
79 <name>target_entity_table</name>
80 <type>varchar</type>
81 <length>64</length>
82 <required>true</required>
83 <comment>Name of table where item being referenced is stored.</comment>
84 <add>1.1</add>
85 <drop>2.0</drop>
86 </field>
87
88 <field>
89 <name>target_entity_id</name>
90 <type>int unsigned</type>
91 <required>true</required>
92 <comment>Foreign key to the referenced item.</comment>
93 <add>1.1</add>
94 <drop>2.0</drop>
95 </field>
96
97 <field>
98 <name>subject</name>
99 <uniqueName>activity_subject</uniqueName>
100 <type>varchar</type>
101 <title>Subject</title>
102 <length>255</length>
103 <comment>The subject/purpose/short description of the activity.</comment>
104 <import>true</import>
105 <headerPattern>/(activity.)?subject/i</headerPattern>
106 <add>1.1</add>
107 <modify>2.0</modify>
108 </field>
109
110 <field>
111 <name>scheduled_date</name>
112 <type>datetime</type>
113 <comment>Date and time meeting is scheduled to occur.</comment>
114 <add>1.1</add>
115 <drop>2.0</drop>
116 </field>
117
118 <field>
119 <name>activity_date_time</name>
120 <import>true</import>
121 <title>Activity Date</title>
122 <type>datetime</type>
123 <headerPattern>/(activity.)?date(.time$)?/i</headerPattern>
124 <comment>Date and time this activity is scheduled to occur. Formerly named scheduled_date_time.</comment>
125 <add>2.0</add>
126 </field>
127 <field>
128 <name>due_date_time</name>
129 <type>datetime</type>
130 <comment>Date and time this activity is due.</comment>
131 <add>2.0</add>
132 <drop>3.0</drop>
133 </field>
134 <field>
135 <name>duration_hours</name>
136 <type>int unsigned</type>
137 <comment>Planned or actual duration of meeting - hours.</comment>
138 <add>1.1</add>
139 <drop>2.0</drop>
140 </field>
141
142 <field>
143 <name>duration_minutes</name>
144 <type>int unsigned</type>
145 <comment>Planned or actual duration of meeting - minutes.</comment>
146 <add>1.1</add>
147 <drop>2.0</drop>
148 </field>
149
150 <field>
151 <name>duration</name>
152 <uniqueName>activity_duration</uniqueName>
153 <title>Duration</title>
154 <import>true</import>
155 <type>int unsigned</type>
156 <headerPattern>/(activity.)?duration(s)?$/i</headerPattern>
157 <comment>Planned or actual duration of activity expressed in minutes. Conglomerate of former duration_hours and duration_minutes.</comment>
158 <add>2.0</add>
159 </field>
160
161 <field>
162 <name>location</name>
163 <uniqueName>activity_location</uniqueName>
164 <title>Location</title>
165 <import>true</import>
166 <type>varchar</type>
167 <length>255</length>
168 <headerPattern>/(activity.)?location$/i</headerPattern>
169 <comment>Location of the activity (optional, open text).</comment>
170 <add>1.1</add>
171 </field>
172
173 <field>
174 <name>phone_id</name>
175 <type>int unsigned</type>
176 <title>Phone (called) ID</title>
177 <comment>Phone ID of the number called (optional - used if an existing phone number is selected).</comment>
178 <add>2.0</add>
179 </field>
180 <foreignKey>
181 <name>phone_id</name>
182 <table>civicrm_phone</table>
183 <key>id</key>
184 <add>2.0</add>
185 <onDelete>SET NULL</onDelete>
186 </foreignKey>
187
188 <field>
189 <name>phone_number</name>
190 <title>Phone (called) Number</title>
191 <type>varchar</type>
192 <length>64</length>
193 <comment>Phone number in case the number does not exist in the civicrm_phone table.</comment>
194 <add>2.0</add>
195 </field>
196
197 <field>
198 <name>details</name>
199 <uniqueName>activity_details</uniqueName>
200 <title>Details</title>
201 <import>true</import>
202 <type>text</type>
203 <rows>8</rows>
204 <cols>60</cols>
205 <headerPattern>/(activity.)?detail(s)?$/i</headerPattern>
206 <comment>Details about the activity (agenda, notes, etc).</comment>
207 <add>1.1</add>
208 </field>
209
210 <field>
211 <name>status</name>
212 <type>enum</type>
213 <title>Status</title>
214 <values>Scheduled, Completed</values>
215 <comment>What is the status of this meeting? Completed meeting status results in activity history entry.</comment>
216 <add>1.1</add>
217 <drop>2.0</drop>
218 </field>
219
220 <field>
221 <name>status_id</name>
222 <uniqueName>activity_status_id</uniqueName>
223 <title>Activity Status Id</title>
224 <import>true</import>
225 <export>false</export>
226 <headerPattern>/(activity.)?status(.label$)?/i</headerPattern>
227 <type>int unsigned</type>
228 <comment>ID of the status this activity is currently in. Foreign key to civicrm_option_value.</comment>
229 <add>2.0</add>
230 </field>
231 <field>
232 <name>priority_id</name>
233 <type>int unsigned</type>
234 <title>Priority</title>
235 <comment>ID of the priority given to this activity. Foreign key to civicrm_option_value.</comment>
236 <add>2.0</add>
237 <pseudoconstant>
238 <name>priority</name>
239 <optionGroupName>priority</optionGroupName>
240 </pseudoconstant>
241 </field>
242 <field>
243 <name>parent_id</name>
244 <title>Parent Activity Id</title>
245 <type>int unsigned</type>
246 <comment>Parent meeting ID (if this is a follow-up item). This is not currently implemented</comment>
247 <add>1.1</add>
248 </field>
249 <foreignKey>
250 <name>parent_id</name>
251 <table>civicrm_activity</table>
252 <key>id</key>
253 <add>1.1</add>
254 <onDelete>CASCADE</onDelete>
255 </foreignKey>
256
257 <field>
258 <name>is_test</name>
259 <title>Test</title>
260 <uniqueName>activity_is_test</uniqueName>
261 <type>boolean</type>
262 <default>0</default>
263 <import>true</import>
264 <headerPattern>/(is.)?test(.activity)?/i</headerPattern>
265 <add>2.0</add>
266 </field>
267 <field>
268 <name>medium_id</name>
269 <uniqueName>activity_medium_id</uniqueName>
270 <title>Activity Medium</title>
271 <type>int unsigned</type>
272 <default>NULL</default>
273 <comment>Activity Medium, Implicit FK to civicrm_option_value where option_group = encounter_medium.</comment>
274 <add>2.2</add>
275 </field>
276 <index>
277 <name>index_medium_id</name>
278 <fieldName>medium_id</fieldName>
279 <add>2.2</add>
280 </index>
281 <field>
282 <name>is_auto</name>
283 <title>Auto</title>
284 <type>boolean</type>
285 <default>0</default>
286 <add>2.2</add>
287 </field>
288 <field>
289 <name>relationship_id</name>
290 <title>Relationship Id</title>
291 <type>int unsigned</type>
292 <default>NULL</default>
293 <comment>FK to Relationship ID</comment>
294 <add>2.2</add>
295 </field>
296 <foreignKey>
297 <name>relationship_id</name>
298 <table>civicrm_relationship</table>
299 <key>id</key>
300 <onDelete>SET NULL</onDelete>
301 </foreignKey>
302 <field>
303 <name>is_current_revision</name>
304 <title>Is this activity a current revision in versioning chain?</title>
305 <type>boolean</type>
306 <default>1</default>
307 <import>true</import>
308 <headerPattern>/(is.)?(current.)?(revision|version(ing)?)/i</headerPattern>
309 <add>2.2</add>
310 </field>
311 <index>
312 <name>index_is_current_revision</name>
313 <fieldName>is_current_revision</fieldName>
314 <add>2.2</add>
315 </index>
316 <field>
317 <name>original_id</name>
318 <type>int unsigned</type>
319 <title>Original Activity ID </title>
320 <comment>Activity ID of the first activity record in versioning chain.</comment>
321 <add>2.2</add>
322 </field>
323 <foreignKey>
324 <name>original_id</name>
325 <table>civicrm_activity</table>
326 <key>id</key>
327 <add>2.2</add>
328 <onDelete>CASCADE</onDelete>
329 </foreignKey>
330 <index>
331 <name>UI_original_id</name>
332 <fieldName>original_id</fieldName>
333 <add>2.2</add>
334 <drop>3.2</drop>
335 </index>
336 <field>
337 <name>result</name>
338 <uniqueName>activity_result</uniqueName>
339 <type>varchar</type>
340 <title>Result</title>
341 <length>255</length>
342 <comment>Currently being used to store result id for survey activity, FK to option value.</comment>
343 <add>3.3</add>
344 </field>
345 <field>
346 <name>is_deleted</name>
347 <uniqueName>activity_is_deleted</uniqueName>
348 <title>Activity is in the Trash</title>
349 <type>boolean</type>
350 <default>0</default>
351 <import>true</import>
352 <headerPattern>/(activity.)?(trash|deleted)/i</headerPattern>
353 <add>2.2</add>
354 </field>
355 <index>
356 <name>index_is_deleted</name>
357 <fieldName>is_deleted</fieldName>
358 <add>2.2</add>
359 </index>
360 <field>
361 <name>campaign_id</name>
362 <uniqueName>activity_campaign_id</uniqueName>
363 <type>int unsigned</type>
364 <title>Campaign ID</title>
365 <import>true</import>
366 <comment>The campaign for which this activity has been triggered.</comment>
367 <add>3.4</add>
368 </field>
369 <field>
370 <name>engagement_level</name>
371 <uniqueName>activity_engagement_level</uniqueName>
372 <type>int unsigned</type>
373
374
375 <title>Engagement Index</title>
376 <import>true</import>
377 <comment>Assign a specific level of engagement to this activity. Used for tracking constituents in ladder of engagement.</comment>
378 <add>3.4</add>
379 </field>
380 <foreignKey>
381 <name>campaign_id</name>
382 <table>civicrm_campaign</table>
383 <key>id</key>
384 <onDelete>SET NULL</onDelete>
385 </foreignKey>
386 <field>
387 <name>weight</name>
388 <type>int</type>
389 <add>4.1</add>
390 </field>
391 </table>