Merge lp:~sylvain-legal/openerp-french-localization/7.0-l10n_fr_department into lp:openerp-french-localization/7.0
- 7.0-l10n_fr_department
- Merge into 7.0
Status: | Merged |
---|---|
Merged at revision: | 3 |
Proposed branch: | lp:~sylvain-legal/openerp-french-localization/7.0-l10n_fr_department |
Merge into: | lp:openerp-french-localization/7.0 |
Prerequisite: | lp:~sylvain-legal/openerp-french-localization/7.0-l10n_fr_state |
Diff against target: |
1464 lines (+1391/-0) 12 files modified
l10n_fr_department/__init__.py (+23/-0) l10n_fr_department/__openerp__.py (+64/-0) l10n_fr_department/data/res_country_department_data.yml (+790/-0) l10n_fr_department/i18n/fr.po (+148/-0) l10n_fr_department/i18n/l10n_fr_department.pot (+92/-0) l10n_fr_department/model/__init__.py (+24/-0) l10n_fr_department/model/res_country_department.py (+49/-0) l10n_fr_department/model/res_country_state.py (+34/-0) l10n_fr_department/security/ir_model_access.yml (+42/-0) l10n_fr_department/view/action.xml (+31/-0) l10n_fr_department/view/menu.xml (+28/-0) l10n_fr_department/view/view.xml (+66/-0) |
To merge this branch: | bzr merge lp:~sylvain-legal/openerp-french-localization/7.0-l10n_fr_department |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
arthru | code-reviewed, no test | Approve | |
Review via email: mp+212916@code.launchpad.net |
Commit message
[ADD] New module 'l10n_fr_
Description of the change
[ADD] New module 'l10n_fr_
Alexis de Lattre (alexis-via) wrote : | # |
- 3. By Sylvain LE GAL (GRAP)
-
[REF] change csv file to yml file
[REF] pep8 compliance
[REF] adding licence information on all files.
[ADD] Sql constraint on res_country_department. code field. - 4. By Sylvain LE GAL (GRAP)
-
[REF] change constraint name + add translation.
[ADD] complete Search view for res_country_department model. - 5. By Sylvain LE GAL (GRAP)
-
[ADD] one2many relation in res_country_state to res_country_
department;
Sylvain LE GAL (GRAP) (sylvain-legal) wrote : | # |
Hi Alexis,
Thanks for your complete review.
Point 1, 2, 3, 4, 5, 6, 7 : done. Great ideas. About group, I changed 'base.group_system' group.
About DOM remarks : Yes, there is no special DOM in my list (as in my MP about 'states). This is OpenERP SA choice that populate res_country database with DOM. We have to accept it. Otherwise, there will be DOM in both res_country and res_country_
Alexis de Lattre (alexis-via) wrote : | # |
OK, thanks for this update.
We forgot to talk about the main topic of this MP : should we add a fields.function "department_id" on res.partner (type=many2one) ? I think we should do that, because a lot of users would expect to have such a field on their partners after the installation of the module, to be able to make statistics per department.
This field would need to be stored with invalidation functions (to be able to compute statistics). I think that we should not display this field in the form view of res.partner, to keep the form view of partners as simple as possible.
Otherwise, I have a few more remarks :
10) view/action.xml : I would remove "<field name="type"
11) I would rename "country_state_id" to "state_id", to have the same name as the many2one field on res.partner
12) in view/menu.xml, I would remove "groups=
I would also remove the trailing spaces in that file.
- 6. By Sylvain LE GAL (GRAP)
-
[FIX] removing duplicated groups restrictions.
- 7. By Sylvain LE GAL (GRAP)
-
[REF] remove useless 'type' definition in action.xml file.
[REF] removing blank lines. - 8. By Sylvain LE GAL (GRAP)
-
[REF] renaming 'country_state_id' into 'state_id'.
Sylvain LE GAL (GRAP) (sylvain-legal) wrote : | # |
Hi Alexis,
Thanks again for your comments.
Remarks : 10, 11, 12, (13) : Done.
About the field on res.partner, as I said, I don't need it but I can see the interest for other people. (I did another module that links products to departments, to realize origin statistics).
As this field is a computed field, we can easily approve this MP and wait improvements from community in a second time.
Regards.
arthru (arthru) wrote : | # |
Approve in this state.
The field on res.partner would be great, but it can wait another merge proposal/
- 9. By Sylvain LE GAL (GRAP)
-
[FIX] Remove country prefix in department code;
Sylvain LE GAL (GRAP) (sylvain-legal) wrote : | # |
Done.
Sylvain LE GAL (GRAP) (sylvain-legal) wrote : | # |
(the last comment is about Alexis remarks in an other Merge Proposal)
https:/
Sylvain LE GAL (GRAP) (sylvain-legal) wrote : | # |
Hi Alexis,
I saw that you approved and merged fr_state module into french-
Thanks a lot for your review.
What about this module ? Just a lake of time or there are still something wrong in my MP ?
Regards.
Preview Diff
1 | === added directory 'l10n_fr_department' |
2 | === added file 'l10n_fr_department/__init__.py' |
3 | --- l10n_fr_department/__init__.py 1970-01-01 00:00:00 +0000 |
4 | +++ l10n_fr_department/__init__.py 2014-04-14 18:35:47 +0000 |
5 | @@ -0,0 +1,23 @@ |
6 | +# -*- encoding: utf-8 -*- |
7 | +############################################################################## |
8 | +# |
9 | +# l10n FR Departments module for OpenERP |
10 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
11 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
12 | +# |
13 | +# This program is free software: you can redistribute it and/or modify |
14 | +# it under the terms of the GNU Affero General Public License as |
15 | +# published by the Free Software Foundation, either version 3 of the |
16 | +# License, or (at your option) any later version. |
17 | +# |
18 | +# This program is distributed in the hope that it will be useful, |
19 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
20 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
21 | +# GNU Affero General Public License for more details. |
22 | +# |
23 | +# You should have received a copy of the GNU Affero General Public License |
24 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
25 | +# |
26 | +############################################################################## |
27 | + |
28 | +from . import model |
29 | |
30 | === added file 'l10n_fr_department/__openerp__.py' |
31 | --- l10n_fr_department/__openerp__.py 1970-01-01 00:00:00 +0000 |
32 | +++ l10n_fr_department/__openerp__.py 2014-04-14 18:35:47 +0000 |
33 | @@ -0,0 +1,64 @@ |
34 | +# -*- encoding: utf-8 -*- |
35 | +############################################################################## |
36 | +# |
37 | +# l10n FR Departments module for OpenERP |
38 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
39 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
40 | +# |
41 | +# This program is free software: you can redistribute it and/or modify |
42 | +# it under the terms of the GNU Affero General Public License as |
43 | +# published by the Free Software Foundation, either version 3 of the |
44 | +# License, or (at your option) any later version. |
45 | +# |
46 | +# This program is distributed in the hope that it will be useful, |
47 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
48 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
49 | +# GNU Affero General Public License for more details. |
50 | +# |
51 | +# You should have received a copy of the GNU Affero General Public License |
52 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
53 | +# |
54 | +############################################################################## |
55 | + |
56 | +{ |
57 | + 'name': 'French Departments (Départements)', |
58 | + 'summary': 'Populate Database with French Departments (Départements)', |
59 | + 'version': '0.1', |
60 | + 'category': 'base', |
61 | + 'description': """ |
62 | +Populate Database with French Departments (Départements) |
63 | +======================================================== |
64 | + |
65 | +Feature: |
66 | +-------- |
67 | + * Create a new model res_country_department, sub division of the """ |
68 | + """res_country_state; |
69 | + * Populate the table res_country_department with the french departments; |
70 | + |
71 | +Technical informations: |
72 | +----------------------- |
73 | + * Use 3166-2:FR codifications (more detail""" |
74 | + """http://fr.wikipedia.org/wiki/ISO_3166-2:FR); |
75 | + |
76 | +Copyright, Authors and Licence: |
77 | +------------------------------- |
78 | + * Copyright: 2013, Groupement Régional Alimentaire de Proximité; |
79 | + * Author: Sylvain LE GAL (https://twitter.com/legalsylvain); |
80 | + * Licence: AGPL-3 (http://www.gnu.org/licenses/);""", |
81 | + 'author': 'GRAP', |
82 | + 'website': 'http://www.grap.coop', |
83 | + 'license': 'AGPL-3', |
84 | + 'depends': [ |
85 | + 'l10n_fr_state', |
86 | + ], |
87 | + 'data': [ |
88 | + 'security/ir_model_access.yml', |
89 | + 'data/res_country_department_data.yml', |
90 | + 'view/view.xml', |
91 | + 'view/action.xml', |
92 | + 'view/menu.xml', |
93 | + ], |
94 | + 'images': [ |
95 | + 'static/src/img/screenshots/1.png' |
96 | + ], |
97 | +} |
98 | |
99 | === added directory 'l10n_fr_department/data' |
100 | === added file 'l10n_fr_department/data/res_country_department_data.yml' |
101 | --- l10n_fr_department/data/res_country_department_data.yml 1970-01-01 00:00:00 +0000 |
102 | +++ l10n_fr_department/data/res_country_department_data.yml 2014-04-14 18:35:47 +0000 |
103 | @@ -0,0 +1,790 @@ |
104 | +# -*- encoding: utf-8 -*- |
105 | +############################################################################## |
106 | +# |
107 | +# l10n FR Departments module for OpenERP |
108 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
109 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
110 | +# |
111 | +# This program is free software: you can redistribute it and/or modify |
112 | +# it under the terms of the GNU Affero General Public License as |
113 | +# published by the Free Software Foundation, either version 3 of the |
114 | +# License, or (at your option) any later version. |
115 | +# |
116 | +# This program is distributed in the hope that it will be useful, |
117 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
118 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
119 | +# GNU Affero General Public License for more details. |
120 | +# |
121 | +# You should have received a copy of the GNU Affero General Public License |
122 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
123 | +# |
124 | +############################################################################## |
125 | + |
126 | +- |
127 | + Creating a res.country.department record |
128 | +- |
129 | + !record {model: res.country.department, id: res_country_department_ain}: |
130 | + code: '01' |
131 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
132 | + name: Ain |
133 | + |
134 | +- |
135 | + Creating a res.country.department record |
136 | +- |
137 | + !record {model: res.country.department, id: res_country_department_aisne}: |
138 | + code: '02' |
139 | + state_id: l10n_fr_state.res_country_state_picardie |
140 | + name: Aisne |
141 | + |
142 | +- |
143 | + Creating a res.country.department record |
144 | +- |
145 | + !record {model: res.country.department, id: res_country_department_allier}: |
146 | + code: '03' |
147 | + state_id: l10n_fr_state.res_country_state_auvergne |
148 | + name: Allier |
149 | + |
150 | +- |
151 | + Creating a res.country.department record |
152 | +- |
153 | + !record {model: res.country.department, id: res_country_department_alpesdehauteprovence}: |
154 | + code: '04' |
155 | + state_id: l10n_fr_state.res_country_state_provencealpescotedazur |
156 | + name: Alpes-de-Haute-Provence |
157 | + |
158 | +- |
159 | + Creating a res.country.department record |
160 | +- |
161 | + !record {model: res.country.department, id: res_country_department_hautesalpes}: |
162 | + code: '05' |
163 | + state_id: l10n_fr_state.res_country_state_provencealpescotedazur |
164 | + name: Hautes-Alpes |
165 | + |
166 | +- |
167 | + Creating a res.country.department record |
168 | +- |
169 | + !record {model: res.country.department, id: res_country_department_alpesmaritimes}: |
170 | + code: '06' |
171 | + state_id: l10n_fr_state.res_country_state_provencealpescotedazur |
172 | + name: Alpes-Maritimes |
173 | + |
174 | +- |
175 | + Creating a res.country.department record |
176 | +- |
177 | + !record {model: res.country.department, id: res_country_department_ardeche}: |
178 | + code: '07' |
179 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
180 | + name: Ardèche |
181 | + |
182 | +- |
183 | + Creating a res.country.department record |
184 | +- |
185 | + !record {model: res.country.department, id: res_country_department_ardennes}: |
186 | + code: '08' |
187 | + state_id: l10n_fr_state.res_country_state_champagneardenne |
188 | + name: Ardennes |
189 | + |
190 | +- |
191 | + Creating a res.country.department record |
192 | +- |
193 | + !record {model: res.country.department, id: res_country_department_ariege}: |
194 | + code: '09' |
195 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
196 | + name: Ariège |
197 | + |
198 | +- |
199 | + Creating a res.country.department record |
200 | +- |
201 | + !record {model: res.country.department, id: res_country_department_aube}: |
202 | + code: 10 |
203 | + state_id: l10n_fr_state.res_country_state_champagneardenne |
204 | + name: Aube |
205 | + |
206 | +- |
207 | + Creating a res.country.department record |
208 | +- |
209 | + !record {model: res.country.department, id: res_country_department_aude}: |
210 | + code: 11 |
211 | + state_id: l10n_fr_state.res_country_state_languedocroussillon |
212 | + name: Aude |
213 | + |
214 | +- |
215 | + Creating a res.country.department record |
216 | +- |
217 | + !record {model: res.country.department, id: res_country_department_aveyron}: |
218 | + code: 12 |
219 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
220 | + name: Aveyron |
221 | + |
222 | +- |
223 | + Creating a res.country.department record |
224 | +- |
225 | + !record {model: res.country.department, id: res_country_department_bouchesdurhone}: |
226 | + code: 13 |
227 | + state_id: l10n_fr_state.res_country_state_provencealpescotedazur |
228 | + name: Bouches-du-Rhône |
229 | + |
230 | +- |
231 | + Creating a res.country.department record |
232 | +- |
233 | + !record {model: res.country.department, id: res_country_department_calvados}: |
234 | + code: 14 |
235 | + state_id: l10n_fr_state.res_country_state_bassenormandie |
236 | + name: Calvados |
237 | + |
238 | +- |
239 | + Creating a res.country.department record |
240 | +- |
241 | + !record {model: res.country.department, id: res_country_department_cantal}: |
242 | + code: 15 |
243 | + state_id: l10n_fr_state.res_country_state_auvergne |
244 | + name: Cantal |
245 | + |
246 | +- |
247 | + Creating a res.country.department record |
248 | +- |
249 | + !record {model: res.country.department, id: res_country_department_charente}: |
250 | + code: 16 |
251 | + state_id: l10n_fr_state.res_country_state_poitoucharentes |
252 | + name: Charente |
253 | + |
254 | +- |
255 | + Creating a res.country.department record |
256 | +- |
257 | + !record {model: res.country.department, id: res_country_department_charentemaritime}: |
258 | + code: 17 |
259 | + state_id: l10n_fr_state.res_country_state_poitoucharentes |
260 | + name: Charente-Maritime |
261 | + |
262 | +- |
263 | + Creating a res.country.department record |
264 | +- |
265 | + !record {model: res.country.department, id: res_country_department_cher}: |
266 | + code: 18 |
267 | + state_id: l10n_fr_state.res_country_state_centre |
268 | + name: Cher |
269 | + |
270 | +- |
271 | + Creating a res.country.department record |
272 | +- |
273 | + !record {model: res.country.department, id: res_country_department_corrze}: |
274 | + code: 19 |
275 | + state_id: l10n_fr_state.res_country_state_limousin |
276 | + name: u'Corr\xe8ze' |
277 | + |
278 | + |
279 | +- |
280 | + Creating a res.country.department record |
281 | +- |
282 | + !record {model: res.country.department, id: res_country_department_corsedusud}: |
283 | + code: 2A |
284 | + state_id: l10n_fr_state.res_country_state_corse |
285 | + name: Corse-du-Sud |
286 | + |
287 | +- |
288 | + Creating a res.country.department record |
289 | +- |
290 | + !record {model: res.country.department, id: res_country_department_hautecorse}: |
291 | + code: 2B |
292 | + state_id: l10n_fr_state.res_country_state_corse |
293 | + name: Haute-Corse |
294 | + |
295 | +- |
296 | + Creating a res.country.department record |
297 | +- |
298 | + !record {model: res.country.department, id: res_country_department_cotedor}: |
299 | + code: 21 |
300 | + state_id: l10n_fr_state.res_country_state_bourgogne |
301 | + name: Côte-d'Or |
302 | + |
303 | +- |
304 | + Creating a res.country.department record |
305 | +- |
306 | + !record {model: res.country.department, id: res_country_department_cotesdarmor}: |
307 | + code: 22 |
308 | + state_id: l10n_fr_state.res_country_state_bretagne |
309 | + name: Côtes-d'Armor |
310 | + |
311 | +- |
312 | + Creating a res.country.department record |
313 | +- |
314 | + !record {model: res.country.department, id: res_country_department_creuse}: |
315 | + code: 23 |
316 | + state_id: l10n_fr_state.res_country_state_limousin |
317 | + name: Creuse |
318 | + |
319 | +- |
320 | + Creating a res.country.department record |
321 | +- |
322 | + !record {model: res.country.department, id: res_country_department_dordogne}: |
323 | + code: 24 |
324 | + state_id: l10n_fr_state.res_country_state_aquitaine |
325 | + name: Dordogne |
326 | + |
327 | +- |
328 | + Creating a res.country.department record |
329 | +- |
330 | + !record {model: res.country.department, id: res_country_department_doubs}: |
331 | + code: 25 |
332 | + state_id: l10n_fr_state.res_country_state_franchecomte |
333 | + name: Doubs |
334 | + |
335 | +- |
336 | + Creating a res.country.department record |
337 | +- |
338 | + !record {model: res.country.department, id: res_country_department_drome}: |
339 | + code: 26 |
340 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
341 | + name: Drôme |
342 | + |
343 | +- |
344 | + Creating a res.country.department record |
345 | +- |
346 | + !record {model: res.country.department, id: res_country_department_eure}: |
347 | + code: 27 |
348 | + state_id: l10n_fr_state.res_country_state_hautenormandie |
349 | + name: Eure |
350 | + |
351 | +- |
352 | + Creating a res.country.department record |
353 | +- |
354 | + !record {model: res.country.department, id: res_country_department_eureetloir}: |
355 | + code: 28 |
356 | + state_id: l10n_fr_state.res_country_state_centre |
357 | + name: Eure-et-Loir |
358 | + |
359 | +- |
360 | + Creating a res.country.department record |
361 | +- |
362 | + !record {model: res.country.department, id: res_country_department_finistere}: |
363 | + code: 29 |
364 | + state_id: l10n_fr_state.res_country_state_bretagne |
365 | + name: Finistère |
366 | + |
367 | +- |
368 | + Creating a res.country.department record |
369 | +- |
370 | + !record {model: res.country.department, id: res_country_department_gard}: |
371 | + code: 30 |
372 | + state_id: l10n_fr_state.res_country_state_languedocroussillon |
373 | + name: Gard |
374 | + |
375 | +- |
376 | + Creating a res.country.department record |
377 | +- |
378 | + !record {model: res.country.department, id: res_country_department_hautegaronne}: |
379 | + code: 31 |
380 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
381 | + name: Haute-Garonne |
382 | + |
383 | +- |
384 | + Creating a res.country.department record |
385 | +- |
386 | + !record {model: res.country.department, id: res_country_department_gers}: |
387 | + code: 32 |
388 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
389 | + name: Gers |
390 | + |
391 | +- |
392 | + Creating a res.country.department record |
393 | +- |
394 | + !record {model: res.country.department, id: res_country_department_gironde}: |
395 | + code: 33 |
396 | + state_id: l10n_fr_state.res_country_state_aquitaine |
397 | + name: Gironde |
398 | + |
399 | +- |
400 | + Creating a res.country.department record |
401 | +- |
402 | + !record {model: res.country.department, id: res_country_department_herault}: |
403 | + code: 34 |
404 | + state_id: l10n_fr_state.res_country_state_languedocroussillon |
405 | + name: Hérault |
406 | + |
407 | +- |
408 | + Creating a res.country.department record |
409 | +- |
410 | + !record {model: res.country.department, id: res_country_department_illeetvilaine}: |
411 | + code: 35 |
412 | + state_id: l10n_fr_state.res_country_state_bretagne |
413 | + name: Ille-et-Vilaine |
414 | + |
415 | +- |
416 | + Creating a res.country.department record |
417 | +- |
418 | + !record {model: res.country.department, id: res_country_department_indre}: |
419 | + code: 36 |
420 | + state_id: l10n_fr_state.res_country_state_centre |
421 | + name: Indre |
422 | + |
423 | +- |
424 | + Creating a res.country.department record |
425 | +- |
426 | + !record {model: res.country.department, id: res_country_department_indreetloire}: |
427 | + code: 37 |
428 | + state_id: l10n_fr_state.res_country_state_centre |
429 | + name: Indre-et-Loire |
430 | + |
431 | +- |
432 | + Creating a res.country.department record |
433 | +- |
434 | + !record {model: res.country.department, id: res_country_department_isere}: |
435 | + code: 38 |
436 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
437 | + name: Isère |
438 | + |
439 | +- |
440 | + Creating a res.country.department record |
441 | +- |
442 | + !record {model: res.country.department, id: res_country_department_jura}: |
443 | + code: 39 |
444 | + state_id: l10n_fr_state.res_country_state_franchecomte |
445 | + name: Jura |
446 | + |
447 | +- |
448 | + Creating a res.country.department record |
449 | +- |
450 | + !record {model: res.country.department, id: res_country_department_landes}: |
451 | + code: 40 |
452 | + state_id: l10n_fr_state.res_country_state_aquitaine |
453 | + name: Landes |
454 | + |
455 | +- |
456 | + Creating a res.country.department record |
457 | +- |
458 | + !record {model: res.country.department, id: res_country_department_loiretcher}: |
459 | + code: 41 |
460 | + state_id: l10n_fr_state.res_country_state_centre |
461 | + name: Loir-et-Cher |
462 | + |
463 | +- |
464 | + Creating a res.country.department record |
465 | +- |
466 | + !record {model: res.country.department, id: res_country_department_loire}: |
467 | + code: 42 |
468 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
469 | + name: Loire |
470 | + |
471 | +- |
472 | + Creating a res.country.department record |
473 | +- |
474 | + !record {model: res.country.department, id: res_country_department_hauteloire}: |
475 | + code: 43 |
476 | + state_id: l10n_fr_state.res_country_state_auvergne |
477 | + name: Haute-Loire |
478 | + |
479 | +- |
480 | + Creating a res.country.department record |
481 | +- |
482 | + !record {model: res.country.department, id: res_country_department_loireatlantique}: |
483 | + code: 44 |
484 | + state_id: l10n_fr_state.res_country_state_paysdelaloire |
485 | + name: Loire-Atlantique |
486 | + |
487 | +- |
488 | + Creating a res.country.department record |
489 | +- |
490 | + !record {model: res.country.department, id: res_country_department_loiret}: |
491 | + code: 45 |
492 | + state_id: l10n_fr_state.res_country_state_centre |
493 | + name: Loiret |
494 | + |
495 | +- |
496 | + Creating a res.country.department record |
497 | +- |
498 | + !record {model: res.country.department, id: res_country_department_lot}: |
499 | + code: 46 |
500 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
501 | + name: Lot |
502 | + |
503 | +- |
504 | + Creating a res.country.department record |
505 | +- |
506 | + !record {model: res.country.department, id: res_country_department_lotetgaronne}: |
507 | + code: 47 |
508 | + state_id: l10n_fr_state.res_country_state_aquitaine |
509 | + name: Lot-et-Garonne |
510 | + |
511 | +- |
512 | + Creating a res.country.department record |
513 | +- |
514 | + !record {model: res.country.department, id: res_country_department_lozere}: |
515 | + code: 48 |
516 | + state_id: l10n_fr_state.res_country_state_languedocroussillon |
517 | + name: Lozère |
518 | + |
519 | +- |
520 | + Creating a res.country.department record |
521 | +- |
522 | + !record {model: res.country.department, id: res_country_department_maineetloire}: |
523 | + code: 49 |
524 | + state_id: l10n_fr_state.res_country_state_paysdelaloire |
525 | + name: Maine-et-Loire |
526 | + |
527 | +- |
528 | + Creating a res.country.department record |
529 | +- |
530 | + !record {model: res.country.department, id: res_country_department_manche}: |
531 | + code: 50 |
532 | + state_id: l10n_fr_state.res_country_state_bassenormandie |
533 | + name: Manche |
534 | + |
535 | +- |
536 | + Creating a res.country.department record |
537 | +- |
538 | + !record {model: res.country.department, id: res_country_department_marne}: |
539 | + code: 51 |
540 | + state_id: l10n_fr_state.res_country_state_champagneardenne |
541 | + name: Marne |
542 | + |
543 | +- |
544 | + Creating a res.country.department record |
545 | +- |
546 | + !record {model: res.country.department, id: res_country_department_hautemarne}: |
547 | + code: 52 |
548 | + state_id: l10n_fr_state.res_country_state_champagneardenne |
549 | + name: Haute-Marne |
550 | + |
551 | +- |
552 | + Creating a res.country.department record |
553 | +- |
554 | + !record {model: res.country.department, id: res_country_department_mayenne}: |
555 | + code: 53 |
556 | + state_id: l10n_fr_state.res_country_state_paysdelaloire |
557 | + name: Mayenne |
558 | + |
559 | +- |
560 | + Creating a res.country.department record |
561 | +- |
562 | + !record {model: res.country.department, id: res_country_department_meurtheetmoselle}: |
563 | + code: 54 |
564 | + state_id: l10n_fr_state.res_country_state_lorraine |
565 | + name: Meurthe-et-Moselle |
566 | + |
567 | +- |
568 | + Creating a res.country.department record |
569 | +- |
570 | + !record {model: res.country.department, id: res_country_department_meuse}: |
571 | + code: 55 |
572 | + state_id: l10n_fr_state.res_country_state_lorraine |
573 | + name: Meuse |
574 | + |
575 | +- |
576 | + Creating a res.country.department record |
577 | +- |
578 | + !record {model: res.country.department, id: res_country_department_morbihan}: |
579 | + code: 56 |
580 | + state_id: l10n_fr_state.res_country_state_bretagne |
581 | + name: Morbihan |
582 | + |
583 | +- |
584 | + Creating a res.country.department record |
585 | +- |
586 | + !record {model: res.country.department, id: res_country_department_moselle}: |
587 | + code: 57 |
588 | + state_id: l10n_fr_state.res_country_state_lorraine |
589 | + name: Moselle |
590 | + |
591 | +- |
592 | + Creating a res.country.department record |
593 | +- |
594 | + !record {model: res.country.department, id: res_country_department_nievre}: |
595 | + code: 58 |
596 | + state_id: l10n_fr_state.res_country_state_bourgogne |
597 | + name: Nièvre |
598 | + |
599 | +- |
600 | + Creating a res.country.department record |
601 | +- |
602 | + !record {model: res.country.department, id: res_country_department_nord}: |
603 | + code: 59 |
604 | + state_id: l10n_fr_state.res_country_state_nordpasdecalais |
605 | + name: Nord |
606 | + |
607 | +- |
608 | + Creating a res.country.department record |
609 | +- |
610 | + !record {model: res.country.department, id: res_country_department_oise}: |
611 | + code: 60 |
612 | + state_id: l10n_fr_state.res_country_state_picardie |
613 | + name: Oise |
614 | + |
615 | +- |
616 | + Creating a res.country.department record |
617 | +- |
618 | + !record {model: res.country.department, id: res_country_department_orne}: |
619 | + code: 61 |
620 | + state_id: l10n_fr_state.res_country_state_bassenormandie |
621 | + name: Orne |
622 | + |
623 | +- |
624 | + Creating a res.country.department record |
625 | +- |
626 | + !record {model: res.country.department, id: res_country_department_pasdecalais}: |
627 | + code: 62 |
628 | + state_id: l10n_fr_state.res_country_state_nordpasdecalais |
629 | + name: Pas-de-Calais |
630 | + |
631 | +- |
632 | + Creating a res.country.department record |
633 | +- |
634 | + !record {model: res.country.department, id: res_country_department_puydedome}: |
635 | + code: 63 |
636 | + state_id: l10n_fr_state.res_country_state_auvergne |
637 | + name: Puy-de-Dôme |
638 | + |
639 | +- |
640 | + Creating a res.country.department record |
641 | +- |
642 | + !record {model: res.country.department, id: res_country_department_pyreneesatlantiques}: |
643 | + code: 64 |
644 | + state_id: l10n_fr_state.res_country_state_aquitaine |
645 | + name: Pyrénées-Atlantiques |
646 | + |
647 | +- |
648 | + Creating a res.country.department record |
649 | +- |
650 | + !record {model: res.country.department, id: res_country_department_hautespyrenees}: |
651 | + code: 65 |
652 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
653 | + name: Hautes-Pyrénées |
654 | + |
655 | +- |
656 | + Creating a res.country.department record |
657 | +- |
658 | + !record {model: res.country.department, id: res_country_department_pyreneesorientales}: |
659 | + code: 66 |
660 | + state_id: l10n_fr_state.res_country_state_languedocroussillon |
661 | + name: Pyrénées-Orientales |
662 | + |
663 | +- |
664 | + Creating a res.country.department record |
665 | +- |
666 | + !record {model: res.country.department, id: res_country_department_basrhin}: |
667 | + code: 67 |
668 | + state_id: l10n_fr_state.res_country_state_alsace |
669 | + name: Bas-Rhin |
670 | + |
671 | +- |
672 | + Creating a res.country.department record |
673 | +- |
674 | + !record {model: res.country.department, id: res_country_department_hautrhin}: |
675 | + code: 68 |
676 | + state_id: l10n_fr_state.res_country_state_alsace |
677 | + name: Haut-Rhin |
678 | + |
679 | +- |
680 | + Creating a res.country.department record |
681 | +- |
682 | + !record {model: res.country.department, id: res_country_department_rhone}: |
683 | + code: 69 |
684 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
685 | + name: Rhône |
686 | + |
687 | +- |
688 | + Creating a res.country.department record |
689 | +- |
690 | + !record {model: res.country.department, id: res_country_department_hautesaone}: |
691 | + code: 70 |
692 | + state_id: l10n_fr_state.res_country_state_franchecomte |
693 | + name: Haute-Saône |
694 | + |
695 | +- |
696 | + Creating a res.country.department record |
697 | +- |
698 | + !record {model: res.country.department, id: res_country_department_saoneetloire}: |
699 | + code: 71 |
700 | + state_id: l10n_fr_state.res_country_state_bourgogne |
701 | + name: Saône-et-Loire |
702 | + |
703 | +- |
704 | + Creating a res.country.department record |
705 | +- |
706 | + !record {model: res.country.department, id: res_country_department_sarthe}: |
707 | + code: 72 |
708 | + state_id: l10n_fr_state.res_country_state_paysdelaloire |
709 | + name: Sarthe |
710 | + |
711 | +- |
712 | + Creating a res.country.department record |
713 | +- |
714 | + !record {model: res.country.department, id: res_country_department_savoie}: |
715 | + code: 73 |
716 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
717 | + name: Savoie |
718 | + |
719 | +- |
720 | + Creating a res.country.department record |
721 | +- |
722 | + !record {model: res.country.department, id: res_country_department_hautesavoie}: |
723 | + code: 74 |
724 | + state_id: l10n_fr_state.res_country_state_rhonealpes |
725 | + name: Haute-Savoie |
726 | + |
727 | +- |
728 | + Creating a res.country.department record |
729 | +- |
730 | + !record {model: res.country.department, id: res_country_department_paris}: |
731 | + code: 75 |
732 | + state_id: l10n_fr_state.res_country_state_iledefrance |
733 | + name: Paris |
734 | + |
735 | +- |
736 | + Creating a res.country.department record |
737 | +- |
738 | + !record {model: res.country.department, id: res_country_department_seinemaritime}: |
739 | + code: 76 |
740 | + state_id: l10n_fr_state.res_country_state_hautenormandie |
741 | + name: Seine-Maritime |
742 | + |
743 | +- |
744 | + Creating a res.country.department record |
745 | +- |
746 | + !record {model: res.country.department, id: res_country_department_seineetmarne}: |
747 | + code: 77 |
748 | + state_id: l10n_fr_state.res_country_state_iledefrance |
749 | + name: Seine-et-Marne |
750 | + |
751 | +- |
752 | + Creating a res.country.department record |
753 | +- |
754 | + !record {model: res.country.department, id: res_country_department_yvelines}: |
755 | + code: 78 |
756 | + state_id: l10n_fr_state.res_country_state_iledefrance |
757 | + name: Yvelines |
758 | + |
759 | +- |
760 | + Creating a res.country.department record |
761 | +- |
762 | + !record {model: res.country.department, id: res_country_department_deuxsevres}: |
763 | + code: 79 |
764 | + state_id: l10n_fr_state.res_country_state_poitoucharentes |
765 | + name: Deux-Sèvres |
766 | + |
767 | +- |
768 | + Creating a res.country.department record |
769 | +- |
770 | + !record {model: res.country.department, id: res_country_department_somme}: |
771 | + code: 80 |
772 | + state_id: l10n_fr_state.res_country_state_picardie |
773 | + name: Somme |
774 | + |
775 | +- |
776 | + Creating a res.country.department record |
777 | +- |
778 | + !record {model: res.country.department, id: res_country_department_tarn}: |
779 | + code: 81 |
780 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
781 | + name: Tarn |
782 | + |
783 | +- |
784 | + Creating a res.country.department record |
785 | +- |
786 | + !record {model: res.country.department, id: res_country_department_tarnetgaronne}: |
787 | + code: 82 |
788 | + state_id: l10n_fr_state.res_country_state_midipyrenees |
789 | + name: Tarn-et-Garonne |
790 | + |
791 | +- |
792 | + Creating a res.country.department record |
793 | +- |
794 | + !record {model: res.country.department, id: res_country_department_var}: |
795 | + code: 83 |
796 | + state_id: l10n_fr_state.res_country_state_provencealpescotedazur |
797 | + name: Var |
798 | + |
799 | +- |
800 | + Creating a res.country.department record |
801 | +- |
802 | + !record {model: res.country.department, id: res_country_department_vaucluse}: |
803 | + code: 84 |
804 | + state_id: l10n_fr_state.res_country_state_provencealpescotedazur |
805 | + name: Vaucluse |
806 | + |
807 | +- |
808 | + Creating a res.country.department record |
809 | +- |
810 | + !record {model: res.country.department, id: res_country_department_vendee}: |
811 | + code: 85 |
812 | + state_id: l10n_fr_state.res_country_state_paysdelaloire |
813 | + name: Vendée |
814 | + |
815 | +- |
816 | + Creating a res.country.department record |
817 | +- |
818 | + !record {model: res.country.department, id: res_country_department_vienne}: |
819 | + code: 86 |
820 | + state_id: l10n_fr_state.res_country_state_poitoucharentes |
821 | + name: Vienne |
822 | + |
823 | +- |
824 | + Creating a res.country.department record |
825 | +- |
826 | + !record {model: res.country.department, id: res_country_department_hautevienne}: |
827 | + code: 87 |
828 | + state_id: l10n_fr_state.res_country_state_limousin |
829 | + name: Haute-Vienne |
830 | + |
831 | +- |
832 | + Creating a res.country.department record |
833 | +- |
834 | + !record {model: res.country.department, id: res_country_department_vosges}: |
835 | + code: 88 |
836 | + state_id: l10n_fr_state.res_country_state_lorraine |
837 | + name: Vosges |
838 | + |
839 | +- |
840 | + Creating a res.country.department record |
841 | +- |
842 | + !record {model: res.country.department, id: res_country_department_yonne}: |
843 | + code: 89 |
844 | + state_id: l10n_fr_state.res_country_state_bourgogne |
845 | + name: Yonne |
846 | + |
847 | +- |
848 | + Creating a res.country.department record |
849 | +- |
850 | + !record {model: res.country.department, id: res_country_department_territoiredebelfort}: |
851 | + code: 90 |
852 | + state_id: l10n_fr_state.res_country_state_franchecomte |
853 | + name: Territoire de Belfort |
854 | + |
855 | +- |
856 | + Creating a res.country.department record |
857 | +- |
858 | + !record {model: res.country.department, id: res_country_department_essonne}: |
859 | + code: 91 |
860 | + state_id: l10n_fr_state.res_country_state_iledefrance |
861 | + name: Essonne |
862 | + |
863 | +- |
864 | + Creating a res.country.department record |
865 | +- |
866 | + !record {model: res.country.department, id: res_country_department_hautsdeseine}: |
867 | + code: 92 |
868 | + state_id: l10n_fr_state.res_country_state_iledefrance |
869 | + name: Hauts-de-Seine |
870 | + |
871 | +- |
872 | + Creating a res.country.department record |
873 | +- |
874 | + !record {model: res.country.department, id: res_country_department_seinesaintdenis}: |
875 | + code: 93 |
876 | + state_id: l10n_fr_state.res_country_state_iledefrance |
877 | + name: Seine-Saint-Denis |
878 | + |
879 | +- |
880 | + Creating a res.country.department record |
881 | +- |
882 | + !record {model: res.country.department, id: res_country_department_valdemarne}: |
883 | + code: 94 |
884 | + state_id: l10n_fr_state.res_country_state_iledefrance |
885 | + name: Val-de-Marne |
886 | + |
887 | +- |
888 | + Creating a res.country.department record |
889 | +- |
890 | + !record {model: res.country.department, id: res_country_department_valdoise}: |
891 | + code: 95 |
892 | + state_id: l10n_fr_state.res_country_state_iledefrance |
893 | + name: Val-d'Oise |
894 | |
895 | === added directory 'l10n_fr_department/i18n' |
896 | === added file 'l10n_fr_department/i18n/fr.po' |
897 | --- l10n_fr_department/i18n/fr.po 1970-01-01 00:00:00 +0000 |
898 | +++ l10n_fr_department/i18n/fr.po 2014-04-14 18:35:47 +0000 |
899 | @@ -0,0 +1,148 @@ |
900 | +############################################################################## |
901 | +# |
902 | +# l10n FR Departments module for OpenERP |
903 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
904 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
905 | +# |
906 | +# This program is free software: you can redistribute it and/or modify |
907 | +# it under the terms of the GNU Affero General Public License as |
908 | +# published by the Free Software Foundation, either version 3 of the |
909 | +# License, or (at your option) any later version. |
910 | +# |
911 | +# This program is distributed in the hope that it will be useful, |
912 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
913 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
914 | +# GNU Affero General Public License for more details. |
915 | +# |
916 | +# You should have received a copy of the GNU Affero General Public License |
917 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
918 | +# |
919 | +############################################################################## |
920 | +# Translation of OpenERP Server. |
921 | +# This file contains the translation of the following modules: |
922 | +# * l10n_fr_department |
923 | +# * base |
924 | +# |
925 | + |
926 | +msgid "" |
927 | +msgstr "" |
928 | +"Project-Id-Version: OpenERP Server 7.0\n" |
929 | +"Report-Msgid-Bugs-To: \n" |
930 | +"POT-Creation-Date: 2014-03-26 17:43+0000\n" |
931 | +"PO-Revision-Date: 2014-03-26 17:43+0000\n" |
932 | +"Last-Translator: <>\n" |
933 | +"Language-Team: \n" |
934 | +"MIME-Version: 1.0\n" |
935 | +"Content-Type: text/plain; charset=UTF-8\n" |
936 | +"Content-Transfer-Encoding: \n" |
937 | +"Plural-Forms: \n" |
938 | + |
939 | +#. module: l10n_fr_department |
940 | +#: field:res.country.department,country_id:0 |
941 | +msgid "Country" |
942 | +msgstr "Pays" |
943 | + |
944 | +#. module: l10n_fr_department |
945 | +#: help:res.country.department,country_id:0 |
946 | +msgid "Country of the related state" |
947 | +msgstr "Pays associé à la région" |
948 | + |
949 | +#. module: l10n_fr_department |
950 | +#: field:res.country.department,code:0 |
951 | +msgid "Departement Code" |
952 | +msgstr "Code du département" |
953 | + |
954 | +#. module: l10n_fr_department |
955 | +#: code:_description:0 |
956 | +#: model:ir.model,name:l10n_fr_department.model_res_country_department |
957 | +#, python-format |
958 | +msgid "Department" |
959 | +msgstr "Département" |
960 | + |
961 | +#. module: l10n_fr_department |
962 | +#: field:res.country.department,name:0 |
963 | +msgid "Department Name" |
964 | +msgstr "Nom du département" |
965 | + |
966 | +#. module: l10n_fr_department |
967 | +#: model:ir.actions.act_window,name:l10n_fr_department.action_view_country_department_tree |
968 | +#: model:ir.ui.menu,name:l10n_fr_department.menu_res_country_department |
969 | +msgid "Departments" |
970 | +msgstr "Départements" |
971 | + |
972 | +#. module: l10n_fr_department |
973 | +#: model:ir.actions.act_window,help:l10n_fr_department.action_view_country_department_tree |
974 | +msgid "Display and manage the list of all departments." |
975 | +msgstr "Afficher et gérer la liste de tous les départements." |
976 | + |
977 | +#. module: l10n_fr_department |
978 | +#: view:res.country.department:0 |
979 | +#: field:res.country.department,state_id:0 |
980 | +msgid "State" |
981 | +msgstr "Région" |
982 | + |
983 | +#. module: l10n_fr_department |
984 | +#: help:res.country.department,state_id:0 |
985 | +msgid "State related of the current department" |
986 | +msgstr "Région associée au département courrant" |
987 | + |
988 | +#. module: l10n_fr_department |
989 | +#: help:res.country.department,code:0 |
990 | +msgid "The department code in max. five chars. (ISO 3166-2 Codification)" |
991 | +msgstr "Le code du département sur cinq caractères. (Norme ISO 3166-2)" |
992 | + |
993 | +#. module: l10n_fr_department |
994 | +#: code:addons/l10n_fr_department/model/res_country_department.py:48 |
995 | +#: sql_constraint:res.country.department:0 |
996 | +#, python-format |
997 | +msgid "You cannot have two departments with the same code!" |
998 | +msgstr "Vous ne pouvez pas avoir deux départements avec le même code !" |
999 | + |
1000 | +#. module: base |
1001 | +#: model:ir.module.module,shortdesc:base.module_l10n_fr_department |
1002 | +msgid "French Departments (Département)" |
1003 | +msgstr "Départements Français" |
1004 | + |
1005 | +#. module: base |
1006 | +#: model:ir.module.module,summary:base.module_l10n_fr_department |
1007 | +msgid "Populate Database with French Departments (Départements)" |
1008 | +msgstr "Remplit la base de données avec les départments françaises" |
1009 | + |
1010 | +#. module: base |
1011 | +#: model:ir.module.module,description:base.module_l10n_fr_department |
1012 | +msgid "\n" |
1013 | +"Populate Database with French Departments (Départements)\n" |
1014 | +"========================================================\n" |
1015 | +"\n" |
1016 | +"Feature:\n" |
1017 | +"--------\n" |
1018 | +" * Create a new model res_country_department, sub division of the res_country_state;\n" |
1019 | +" * Populate the table res_country_department with the french departments;\n" |
1020 | +"\n" |
1021 | +"Technical informations:\n" |
1022 | +"-----------------------\n" |
1023 | +" * Use 3166-2:FR codifications (more detailhttp://fr.wikipedia.org/wiki/ISO_3166-2:FR);\n" |
1024 | +"\n" |
1025 | +"Copyright, Authors and Licence:\n" |
1026 | +"-------------------------------\n" |
1027 | +" * Copyright: 2013, Groupement Régional Alimentaire de Proximité;\n" |
1028 | +" * Author: Sylvain LE GAL (https://twitter.com/legalsylvain);\n" |
1029 | +" * Licence: AGPL-3 (http://www.gnu.org/licenses/);" |
1030 | +msgstr "\n" |
1031 | +"Ajoute les départements français en base de données\n" |
1032 | +"===================================================\n" |
1033 | +"\n" |
1034 | +"Caractéristiques:\n" |
1035 | +"-----------------\n" |
1036 | +" * Crée un nouveau modèle 'res_country_department', sous-division du modèle des régions 'res_country_state' ;\n" |
1037 | +" * Remplit la table 'res_country_department' avec les départements français ;\n" |
1038 | +"\n" |
1039 | +"Informations techniques :\n" |
1040 | +"-------------------------\n" |
1041 | +" * Utilise la codification 3166-2:FR (plus de détail sur http://fr.wikipedia.org/wiki/ISO_3166-2:FR) ;\n" |
1042 | +"\n" |
1043 | +"Copyright, Auteurs et Licence:\n" |
1044 | +"------------------------------\n" |
1045 | +" * Copyright : 2013, Groupement Régional Alimentaire de Proximité ;\n" |
1046 | +" * Auteur : Sylvain LE GAL (https://twitter.com/legalsylvain) ;\n" |
1047 | +" * Licence : AGPL-3 (http://www.gnu.org/licenses/) ;" |
1048 | |
1049 | === added file 'l10n_fr_department/i18n/l10n_fr_department.pot' |
1050 | --- l10n_fr_department/i18n/l10n_fr_department.pot 1970-01-01 00:00:00 +0000 |
1051 | +++ l10n_fr_department/i18n/l10n_fr_department.pot 2014-04-14 18:35:47 +0000 |
1052 | @@ -0,0 +1,92 @@ |
1053 | +############################################################################## |
1054 | +# |
1055 | +# l10n FR Departments module for OpenERP |
1056 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
1057 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
1058 | +# |
1059 | +# This program is free software: you can redistribute it and/or modify |
1060 | +# it under the terms of the GNU Affero General Public License as |
1061 | +# published by the Free Software Foundation, either version 3 of the |
1062 | +# License, or (at your option) any later version. |
1063 | +# |
1064 | +# This program is distributed in the hope that it will be useful, |
1065 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1066 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1067 | +# GNU Affero General Public License for more details. |
1068 | +# |
1069 | +# You should have received a copy of the GNU Affero General Public License |
1070 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1071 | +# |
1072 | +############################################################################## |
1073 | +# Translation of OpenERP Server. |
1074 | +# This file contains the translation of the following modules: |
1075 | +# * l10n_fr_department |
1076 | +# |
1077 | + |
1078 | +msgid "" |
1079 | +msgstr "" |
1080 | +"Project-Id-Version: OpenERP Server 7.0\n" |
1081 | +"Report-Msgid-Bugs-To: \n" |
1082 | +"POT-Creation-Date: 2014-03-26 17:46+0000\n" |
1083 | +"PO-Revision-Date: 2014-03-26 17:46+0000\n" |
1084 | +"Last-Translator: <>\n" |
1085 | +"Language-Team: \n" |
1086 | +"MIME-Version: 1.0\n" |
1087 | +"Content-Type: text/plain; charset=UTF-8\n" |
1088 | +"Content-Transfer-Encoding: \n" |
1089 | +"Plural-Forms: \n" |
1090 | + |
1091 | +#. module: l10n_fr_department |
1092 | +#: field:res.country.department,country_id:0 |
1093 | +msgid "Country" |
1094 | +msgstr "" |
1095 | + |
1096 | +#. module: l10n_fr_department |
1097 | +#: help:res.country.department,country_id:0 |
1098 | +msgid "Country of the related state" |
1099 | +msgstr "" |
1100 | + |
1101 | +#. module: l10n_fr_department |
1102 | +#: field:res.country.department,code:0 |
1103 | +msgid "Departement Code" |
1104 | +msgstr "" |
1105 | + |
1106 | +#. module: l10n_fr_department |
1107 | +#: code:_description:0 |
1108 | +#: model:ir.model,name:l10n_fr_department.model_res_country_department |
1109 | +#, python-format |
1110 | +msgid "Department" |
1111 | +msgstr "" |
1112 | + |
1113 | +#. module: l10n_fr_department |
1114 | +#: field:res.country.department,name:0 |
1115 | +msgid "Department Name" |
1116 | +msgstr "" |
1117 | + |
1118 | +#. module: l10n_fr_department |
1119 | +#: model:ir.actions.act_window,name:l10n_fr_department.action_view_country_department_tree |
1120 | +#: model:ir.ui.menu,name:l10n_fr_department.menu_res_country_department |
1121 | +msgid "Departments" |
1122 | +msgstr "" |
1123 | + |
1124 | +#. module: l10n_fr_department |
1125 | +#: model:ir.actions.act_window,help:l10n_fr_department.action_view_country_department_tree |
1126 | +msgid "Display and manage the list of all departments." |
1127 | +msgstr "" |
1128 | + |
1129 | +#. module: l10n_fr_department |
1130 | +#: view:res.country.department:0 |
1131 | +#: field:res.country.department,state_id:0 |
1132 | +msgid "State" |
1133 | +msgstr "" |
1134 | + |
1135 | +#. module: l10n_fr_department |
1136 | +#: help:res.country.department,state_id:0 |
1137 | +msgid "State related of the current department" |
1138 | +msgstr "" |
1139 | + |
1140 | +#. module: l10n_fr_department |
1141 | +#: help:res.country.department,code:0 |
1142 | +msgid "The department code in max. five chars. (ISO 3166-2 Codification)" |
1143 | +msgstr "" |
1144 | + |
1145 | |
1146 | === added directory 'l10n_fr_department/model' |
1147 | === added file 'l10n_fr_department/model/__init__.py' |
1148 | --- l10n_fr_department/model/__init__.py 1970-01-01 00:00:00 +0000 |
1149 | +++ l10n_fr_department/model/__init__.py 2014-04-14 18:35:47 +0000 |
1150 | @@ -0,0 +1,24 @@ |
1151 | +# -*- encoding: utf-8 -*- |
1152 | +############################################################################## |
1153 | +# |
1154 | +# l10n FR Departments module for OpenERP |
1155 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
1156 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
1157 | +# |
1158 | +# This program is free software: you can redistribute it and/or modify |
1159 | +# it under the terms of the GNU Affero General Public License as |
1160 | +# published by the Free Software Foundation, either version 3 of the |
1161 | +# License, or (at your option) any later version. |
1162 | +# |
1163 | +# This program is distributed in the hope that it will be useful, |
1164 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1165 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1166 | +# GNU Affero General Public License for more details. |
1167 | +# |
1168 | +# You should have received a copy of the GNU Affero General Public License |
1169 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1170 | +# |
1171 | +############################################################################## |
1172 | + |
1173 | +from . import res_country_state |
1174 | +from . import res_country_department |
1175 | |
1176 | === added file 'l10n_fr_department/model/res_country_department.py' |
1177 | --- l10n_fr_department/model/res_country_department.py 1970-01-01 00:00:00 +0000 |
1178 | +++ l10n_fr_department/model/res_country_department.py 2014-04-14 18:35:47 +0000 |
1179 | @@ -0,0 +1,49 @@ |
1180 | +# -*- encoding: utf-8 -*- |
1181 | +############################################################################## |
1182 | +# |
1183 | +# l10n FR Departments module for OpenERP |
1184 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
1185 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
1186 | +# |
1187 | +# This program is free software: you can redistribute it and/or modify |
1188 | +# it under the terms of the GNU Affero General Public License as |
1189 | +# published by the Free Software Foundation, either version 3 of the |
1190 | +# License, or (at your option) any later version. |
1191 | +# |
1192 | +# This program is distributed in the hope that it will be useful, |
1193 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1194 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1195 | +# GNU Affero General Public License for more details. |
1196 | +# |
1197 | +# You should have received a copy of the GNU Affero General Public License |
1198 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1199 | +# |
1200 | +############################################################################## |
1201 | + |
1202 | +from openerp.osv import fields |
1203 | +from openerp.osv.orm import Model |
1204 | +from openerp.tools.translate import _ |
1205 | + |
1206 | +class res_country_department(Model): |
1207 | + _description = "Department" |
1208 | + _name = 'res.country.department' |
1209 | + |
1210 | + _columns = { |
1211 | + 'state_id': fields.many2one( |
1212 | + 'res.country.state', 'State', required=True, |
1213 | + help='State related of the current department',), |
1214 | + 'country_id': fields.related( |
1215 | + 'state_id', 'country_id', type='many2one', |
1216 | + relation='res.country', string='Country', |
1217 | + help='Country of the related state',), |
1218 | + 'name': fields.char('Department Name', size=128, required=True,), |
1219 | + 'code': fields.char( |
1220 | + 'Departement Code', size=2, required=True, |
1221 | + help="""The department code in two chars.""" |
1222 | + """(ISO 3166-2 Codification)""",), |
1223 | + } |
1224 | + |
1225 | + _sql_constraints = [ |
1226 | + ('code_uniq', 'unique (code)', |
1227 | + _("""You cannot have two departments with the same code!""")), |
1228 | + ] |
1229 | |
1230 | === added file 'l10n_fr_department/model/res_country_state.py' |
1231 | --- l10n_fr_department/model/res_country_state.py 1970-01-01 00:00:00 +0000 |
1232 | +++ l10n_fr_department/model/res_country_state.py 2014-04-14 18:35:47 +0000 |
1233 | @@ -0,0 +1,34 @@ |
1234 | +# -*- encoding: utf-8 -*- |
1235 | +############################################################################## |
1236 | +# |
1237 | +# l10n FR Departments module for OpenERP |
1238 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
1239 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
1240 | +# |
1241 | +# This program is free software: you can redistribute it and/or modify |
1242 | +# it under the terms of the GNU Affero General Public License as |
1243 | +# published by the Free Software Foundation, either version 3 of the |
1244 | +# License, or (at your option) any later version. |
1245 | +# |
1246 | +# This program is distributed in the hope that it will be useful, |
1247 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1248 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1249 | +# GNU Affero General Public License for more details. |
1250 | +# |
1251 | +# You should have received a copy of the GNU Affero General Public License |
1252 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1253 | +# |
1254 | +############################################################################## |
1255 | + |
1256 | +from openerp.osv import fields |
1257 | +from openerp.osv.orm import Model |
1258 | + |
1259 | + |
1260 | +class res_country_state(Model): |
1261 | + _inherit = 'res.country.state' |
1262 | + |
1263 | + _columns = { |
1264 | + 'department_ids': fields.one2many( |
1265 | + 'res.country.department','state_id', 'Departments', |
1266 | + help='Departments related to this state',), |
1267 | + } |
1268 | |
1269 | === added directory 'l10n_fr_department/security' |
1270 | === added file 'l10n_fr_department/security/ir_model_access.yml' |
1271 | --- l10n_fr_department/security/ir_model_access.yml 1970-01-01 00:00:00 +0000 |
1272 | +++ l10n_fr_department/security/ir_model_access.yml 2014-04-14 18:35:47 +0000 |
1273 | @@ -0,0 +1,42 @@ |
1274 | +############################################################################## |
1275 | +# |
1276 | +# l10n FR Departments module for OpenERP |
1277 | +# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
1278 | +# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
1279 | +# |
1280 | +# This program is free software: you can redistribute it and/or modify |
1281 | +# it under the terms of the GNU Affero General Public License as |
1282 | +# published by the Free Software Foundation, either version 3 of the |
1283 | +# License, or (at your option) any later version. |
1284 | +# |
1285 | +# This program is distributed in the hope that it will be useful, |
1286 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1287 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1288 | +# GNU Affero General Public License for more details. |
1289 | +# |
1290 | +# You should have received a copy of the GNU Affero General Public License |
1291 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1292 | +# |
1293 | +############################################################################## |
1294 | +- |
1295 | + Creating a ir.model.access record |
1296 | +- |
1297 | + !record {model: ir.model.access, id: access_res_country_department_all}: |
1298 | + name: res.country.department all |
1299 | + model_id: model_res_country_department |
1300 | + perm_read: 1 |
1301 | + perm_write: 0 |
1302 | + perm_create: 0 |
1303 | + perm_unlink: 0 |
1304 | + |
1305 | +- |
1306 | + Creating a ir.model.access record |
1307 | +- |
1308 | + !record {model: ir.model.access, id: access_res_country_department_manager}: |
1309 | + name: res.country.department manager |
1310 | + model_id: model_res_country_department |
1311 | + group_id: base.group_system |
1312 | + perm_read: 1 |
1313 | + perm_write: 1 |
1314 | + perm_create: 1 |
1315 | + perm_unlink: 1 |
1316 | |
1317 | === added directory 'l10n_fr_department/static' |
1318 | === added directory 'l10n_fr_department/static/src' |
1319 | === added directory 'l10n_fr_department/static/src/img' |
1320 | === added file 'l10n_fr_department/static/src/img/icon.png' |
1321 | Binary files l10n_fr_department/static/src/img/icon.png 1970-01-01 00:00:00 +0000 and l10n_fr_department/static/src/img/icon.png 2014-04-14 18:35:47 +0000 differ |
1322 | === added directory 'l10n_fr_department/static/src/img/screenshots' |
1323 | === added file 'l10n_fr_department/static/src/img/screenshots/1.png' |
1324 | Binary files l10n_fr_department/static/src/img/screenshots/1.png 1970-01-01 00:00:00 +0000 and l10n_fr_department/static/src/img/screenshots/1.png 2014-04-14 18:35:47 +0000 differ |
1325 | === added directory 'l10n_fr_department/view' |
1326 | === added file 'l10n_fr_department/view/action.xml' |
1327 | --- l10n_fr_department/view/action.xml 1970-01-01 00:00:00 +0000 |
1328 | +++ l10n_fr_department/view/action.xml 2014-04-14 18:35:47 +0000 |
1329 | @@ -0,0 +1,31 @@ |
1330 | +<?xml version="1.0" encoding="utf-8"?> |
1331 | +<!-- ********************************************************************** --> |
1332 | +<!--l10n FR Departments module for OpenERP --> |
1333 | +<!--Copyright (C) 2013-2014 GRAP (http://www.grap.coop) --> |
1334 | +<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) --> |
1335 | + |
1336 | +<!--This program is free software: you can redistribute it and/or modify --> |
1337 | +<!--it under the terms of the GNU Affero General Public License as --> |
1338 | +<!--published by the Free Software Foundation, either version 3 of the --> |
1339 | +<!--License, or (at your option) any later version. --> |
1340 | + |
1341 | +<!--This program is distributed in the hope that it will be useful, --> |
1342 | +<!--but WITHOUT ANY WARRANTY; without even the implied warranty of --> |
1343 | +<!--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --> |
1344 | +<!--GNU Affero General Public License for more details. --> |
1345 | + |
1346 | +<!--You should have received a copy of the GNU Affero General Public License--> |
1347 | +<!--along with this program. If not, see <http://www.gnu.org/licenses/>. --> |
1348 | +<!-- ********************************************************************** --> |
1349 | + |
1350 | +<openerp> |
1351 | + <data> |
1352 | + <record id="action_view_country_department_tree" model="ir.actions.act_window"> |
1353 | + <field name="name">Departments</field> |
1354 | + <field name="res_model">res.country.department</field> |
1355 | + <field name="view_type">form</field> |
1356 | + <field name="view_mode">tree,form</field> |
1357 | + <field name="help">Display and manage the list of all departments.</field> |
1358 | + </record> |
1359 | + </data> |
1360 | +</openerp> |
1361 | |
1362 | === added file 'l10n_fr_department/view/menu.xml' |
1363 | --- l10n_fr_department/view/menu.xml 1970-01-01 00:00:00 +0000 |
1364 | +++ l10n_fr_department/view/menu.xml 2014-04-14 18:35:47 +0000 |
1365 | @@ -0,0 +1,28 @@ |
1366 | +<?xml version="1.0" encoding="utf-8"?> |
1367 | +<!-- ********************************************************************** --> |
1368 | +<!--l10n FR Departments module for OpenERP --> |
1369 | +<!--Copyright (C) 2013-2014 GRAP (http://www.grap.coop) --> |
1370 | +<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) --> |
1371 | + |
1372 | +<!--This program is free software: you can redistribute it and/or modify --> |
1373 | +<!--it under the terms of the GNU Affero General Public License as --> |
1374 | +<!--published by the Free Software Foundation, either version 3 of the --> |
1375 | +<!--License, or (at your option) any later version. --> |
1376 | + |
1377 | +<!--This program is distributed in the hope that it will be useful, --> |
1378 | +<!--but WITHOUT ANY WARRANTY; without even the implied warranty of --> |
1379 | +<!--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --> |
1380 | +<!--GNU Affero General Public License for more details. --> |
1381 | + |
1382 | +<!--You should have received a copy of the GNU Affero General Public License--> |
1383 | +<!--along with this program. If not, see <http://www.gnu.org/licenses/>. --> |
1384 | +<!-- ********************************************************************** --> |
1385 | + |
1386 | +<openerp> |
1387 | + <data> |
1388 | + <menuitem id="menu_res_country_department" |
1389 | + parent="base.menu_localisation" |
1390 | + action="action_view_country_department_tree" |
1391 | + sequence="2"/> |
1392 | + </data> |
1393 | +</openerp> |
1394 | |
1395 | === added file 'l10n_fr_department/view/view.xml' |
1396 | --- l10n_fr_department/view/view.xml 1970-01-01 00:00:00 +0000 |
1397 | +++ l10n_fr_department/view/view.xml 2014-04-14 18:35:47 +0000 |
1398 | @@ -0,0 +1,66 @@ |
1399 | +<?xml version="1.0" encoding="utf-8"?> |
1400 | +<!-- ********************************************************************** --> |
1401 | +<!--l10n FR Departments module for OpenERP --> |
1402 | +<!--Copyright (C) 2013-2014 GRAP (http://www.grap.coop) --> |
1403 | +<!--@author Sylvain LE GAL (https://twitter.com/legalsylvain) --> |
1404 | + |
1405 | +<!--This program is free software: you can redistribute it and/or modify --> |
1406 | +<!--it under the terms of the GNU Affero General Public License as --> |
1407 | +<!--published by the Free Software Foundation, either version 3 of the --> |
1408 | +<!--License, or (at your option) any later version. --> |
1409 | + |
1410 | +<!--This program is distributed in the hope that it will be useful, --> |
1411 | +<!--but WITHOUT ANY WARRANTY; without even the implied warranty of --> |
1412 | +<!--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --> |
1413 | +<!--GNU Affero General Public License for more details. --> |
1414 | + |
1415 | +<!--You should have received a copy of the GNU Affero General Public License--> |
1416 | +<!--along with this program. If not, see <http://www.gnu.org/licenses/>. --> |
1417 | +<!-- ********************************************************************** --> |
1418 | + |
1419 | +<openerp> |
1420 | + <data> |
1421 | + |
1422 | + <record id="view_country_department_search" model="ir.ui.view"> |
1423 | + <field name="name">res.country.department.search</field> |
1424 | + <field name="model">res.country.department</field> |
1425 | + <field name="arch" type="xml"> |
1426 | + <search string="Departments"> |
1427 | + <field name="name"/> |
1428 | + <field name="code"/> |
1429 | + <field name="state_id"/> |
1430 | + <field name="country_id"/> |
1431 | + </search> |
1432 | + </field> |
1433 | + </record> |
1434 | + |
1435 | + <record id="view_country_department_tree" model="ir.ui.view"> |
1436 | + <field name="name">res.country.department.tree</field> |
1437 | + <field name="model">res.country.department</field> |
1438 | + <field name="arch" type="xml"> |
1439 | + <tree string="Departments"> |
1440 | + <field name="name"/> |
1441 | + <field name="code"/> |
1442 | + <field name="state_id"/> |
1443 | + <field name="country_id"/> |
1444 | + </tree> |
1445 | + </field> |
1446 | + </record> |
1447 | + |
1448 | + <record id="view_country_department_form" model="ir.ui.view"> |
1449 | + <field name="name">res.country.department.form</field> |
1450 | + <field name="model">res.country.department</field> |
1451 | + <field name="arch" type="xml"> |
1452 | + <form string="Departments" version="7.0"> |
1453 | + <group> |
1454 | + <field name="name"/> |
1455 | + <field name="code"/> |
1456 | + <field name="state_id"/> |
1457 | + <field name="country_id" readonly="1"/> |
1458 | + </group> |
1459 | + </form> |
1460 | + </field> |
1461 | + </record> |
1462 | + |
1463 | + </data> |
1464 | +</openerp> |
Here are my remarks :
1) Maybe it would be a good idea to add an sql_constraint to check the unicity of the "code" field
2) Declare the reverse one2many link from states to departements (just declare it, don't add it in the view ; at least, for those who may want to use it, they don't have to declare the link themselves).
3) Add a search view on the departments, that would add the possibility to make a direct search on the "code" field
4) In __openerp__.py, I would add a 'summary' key, and remove the unused keys
5) make it pep-8 valid ? :-)
6) I wonder if it is best to give write access to the group "Technical Features" as you do, or the group "Administration > Settings". At least, you didn't choose to give write access to the group "Partner Manager", which is a mistake made by OpenERP S.A. in the base module for res.country ! But I guess that "Technical Features" is fine...
7) In the files, you say "See __openerp__.py file for Copyright and Licence Informations." First, the copyright is always stated per file, so as to have a more accurate approch of who has copyright on what. THen, the idea of having the block of text with the standard AGPL text may be a bit "heavy", but that's what is recommanded by the FSF, that's why almost everybody do it that way. If you don't want to display the block in all the files, you should at least put it in the __openerp__.py file.
I suppose that the DOMs are not in your list because you consider that they are attached to another res.country (RE for Reunion Island for example), don't you ? By the way, I have always thought that DOMs should not have their own res.country, because they are not a country...