Merge pull request #17641 from MegaphoneJon/core-1590
[civicrm-core.git] / xml / schema / Price / LineItem.xml
1 <?xml version="1.0" encoding="iso-8859-1" ?>
2
3 <table>
4 <base>CRM/Price</base>
5 <class>LineItem</class>
6 <name>civicrm_line_item</name>
7 <add>1.7</add>
8 <log>true</log>
9 <field>
10 <name>id</name>
11 <title>Line Item ID</title>
12 <type>int unsigned</type>
13 <required>true</required>
14 <comment>Line Item</comment>
15 <add>1.7</add>
16 </field>
17 <primaryKey>
18 <name>id</name>
19 <autoincrement>true</autoincrement>
20 </primaryKey>
21 <field>
22 <name>entity_table</name>
23 <title>Line Item Entity Type</title>
24 <type>varchar</type>
25 <length>64</length>
26 <required>true</required>
27 <comment>table which has the transaction</comment>
28 <add>1.7</add>
29 </field>
30 <field>
31 <name>entity_id</name>
32 <title>Line Item Entity</title>
33 <type>int unsigned</type>
34 <required>true</required>
35 <comment>entry in table</comment>
36 <add>1.7</add>
37 </field>
38 <dynamicForeignKey>
39 <idColumn>entity_id</idColumn>
40 <typeColumn>entity_table</typeColumn>
41 <add>1.7</add>
42 </dynamicForeignKey>
43 <field>
44 <name>contribution_id</name>
45 <title>Line Item Contribution</title>
46 <type>int unsigned</type>
47 <comment>FK to civicrm_contribution</comment>
48 <add>4.5</add>
49 </field>
50 <foreignKey>
51 <name>contribution_id</name>
52 <table>civicrm_contribution</table>
53 <key>id</key>
54 <onDelete>SET NULL</onDelete>
55 </foreignKey>
56 <field>
57 <name>price_field_id</name>
58 <title>Line Item Price Field</title>
59 <type>int unsigned</type>
60 <comment>FK to civicrm_price_field</comment>
61 <!-- changed to not required in 4.3 in order to change ON DELETE CASCADE FK constraint to SET NULL -->
62 <add>1.7</add>
63 </field>
64 <foreignKey>
65 <name>price_field_id</name>
66 <table>civicrm_price_field</table>
67 <key>id</key>
68 <onDelete>SET NULL</onDelete>
69 </foreignKey>
70 <field>
71 <name>label</name>
72 <title>Line Item Label</title>
73 <type>varchar</type>
74 <length>255</length>
75 <default>NULL</default>
76 <!-- changed to not required in 4.2.3 -->
77 <comment>descriptive label for item - from price_field_value.label</comment>
78 <add>1.7</add>
79 <html>
80 <type>Text</type>
81 </html>
82 </field>
83 <field>
84 <name>qty</name>
85 <title>Line Item Quantity</title>
86 <type>decimal</type>
87 <required>true</required>
88 <comment>How many items ordered</comment>
89 <add>1.7</add>
90 <html>
91 <type>Text</type>
92 </html>
93 </field>
94 <field>
95 <name>unit_price</name>
96 <type>decimal</type>
97 <required>true</required>
98 <comment>price of each item</comment>
99 <add>1.7</add>
100 <html>
101 <type>Text</type>
102 </html>
103 </field>
104 <field>
105 <name>line_total</name>
106 <title>Line Item Total</title>
107 <type>decimal</type>
108 <required>true</required>
109 <comment>qty * unit_price</comment>
110 <add>1.7</add>
111 </field>
112 <field>
113 <name>participant_count</name>
114 <title>Line Item Participant Count</title>
115 <type>int unsigned</type>
116 <default>NULL</default>
117 <comment>Participant count for field</comment>
118 <html>
119 <type>Text</type>
120 </html>
121 <add>3.2</add>
122
123 </field>
124 <index>
125 <name>index_entity</name>
126 <fieldName>entity_table</fieldName>
127 <fieldName>entity_id</fieldName>
128 <add>1.7</add>
129 </index>
130 <index>
131 <name>UI_line_item_value</name>
132 <fieldName>entity_table</fieldName>
133 <fieldName>entity_id</fieldName>
134 <fieldName>contribution_id</fieldName>
135 <fieldName>price_field_value_id</fieldName>
136 <fieldName>price_field_id</fieldName>
137 <unique>true</unique>
138 <add>3.3</add>
139 <change>4.5</change>
140 <!-- Add contribution_id to unique index in 4.5 -->
141 </index>
142 <field>
143 <name>price_field_value_id</name>
144 <title>Line Item Option</title>
145 <type>int unsigned</type>
146 <default>NULL</default>
147 <comment>FK to civicrm_price_field_value</comment>
148 <add>3.3</add>
149 </field>
150 <foreignKey>
151 <name>price_field_value_id</name>
152 <table>civicrm_price_field_value</table>
153 <key>id</key>
154 <onDelete>SET NULL</onDelete>
155 </foreignKey>
156 <field>
157 <name>financial_type_id</name>
158 <title>Financial Type</title>
159 <type>int unsigned</type>
160 <default>NULL</default>
161 <pseudoconstant>
162 <table>civicrm_financial_type</table>
163 <keyColumn>id</keyColumn>
164 <labelColumn>name</labelColumn>
165 </pseudoconstant>
166 <comment>FK to Financial Type.</comment>
167 <add>4.3</add>
168 <html>
169 <type>Select</type>
170 </html>
171 </field>
172 <foreignKey>
173 <name>financial_type_id</name>
174 <table>civicrm_financial_type</table>
175 <key>id</key>
176 <onDelete>SET NULL</onDelete>
177 <add>4.3</add>
178 </foreignKey>
179 <field>
180 <name>non_deductible_amount</name>
181 <title>Non-deductible Amount</title>
182 <type>decimal</type>
183 <default>0.0</default>
184 <headerPattern>/non?.?deduct/i</headerPattern>
185 <dataPattern>/^\d+(\.\d{2})?$/</dataPattern>
186 <required>true</required>
187 <comment>Portion of total amount which is NOT tax deductible.</comment>
188 <add>4.7</add>
189 <html>
190 <type>Text</type>
191 </html>
192 </field>
193 <field>
194 <name>tax_amount</name>
195 <title>Tax Amount</title>
196 <type>decimal</type>
197 <import>true</import>
198 <headerPattern>/tax(.?am(ou)?nt)?/i</headerPattern>
199 <dataPattern>/^\d+(\.\d{2})?$/</dataPattern>
200 <comment>tax of each item</comment>
201 <add>4.6</add>
202 <html>
203 <type>Text</type>
204 </html>
205 </field>
206 </table>
207