Merge lp:~julie-w/unifield-server/US-4320 into lp:unifield-server
- US-4320
- Merge into trunk
Proposed by
jftempo
Status: | Merged |
---|---|
Merged at revision: | 4758 |
Proposed branch: | lp:~julie-w/unifield-server/US-4320 |
Merge into: | lp:unifield-server |
Diff against target: |
410 lines (+144/-30) (has conflicts) 11 files modified
bin/addons/account_corrections/wizard/journal_items_corrections.py (+1/-1) bin/addons/account_hq_entries/account.py (+23/-1) bin/addons/account_hq_entries/account_view.xml (+4/-1) bin/addons/account_hq_entries/hq_entries.py (+24/-0) bin/addons/account_hq_entries/wizard/hq_entries_split.py (+33/-6) bin/addons/account_hq_entries/wizard/wizard_view.xml (+9/-4) bin/addons/account_override/__init__.py (+1/-1) bin/addons/msf_doc_import/account.py (+2/-2) bin/addons/msf_doc_import/wizard/wizard_import_invoice_line.py (+2/-2) bin/addons/msf_profile/i18n/fr_MF.po (+43/-10) bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv (+2/-2) Text conflict in bin/addons/msf_profile/i18n/fr_MF.po |
To merge this branch: | bzr merge lp:~julie-w/unifield-server/US-4320 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
UniField Reviewer Team | Pending | ||
Review via email: mp+340160@code.launchpad.net |
Commit message
Description of the change
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'bin/addons/account_corrections/wizard/journal_items_corrections.py' |
2 | --- bin/addons/account_corrections/wizard/journal_items_corrections.py 2017-10-27 11:56:53 +0000 |
3 | +++ bin/addons/account_corrections/wizard/journal_items_corrections.py 2018-03-01 09:41:41 +0000 |
4 | @@ -59,7 +59,7 @@ |
5 | if isinstance(ids, (int, long)): |
6 | ids = [ids] |
7 | for line_br in self.browse(cr, uid, ids, context=context): |
8 | - res[line_br.id] = line_br.account_id and line_br.account_id.is_analytic_addicted or False |
9 | + res[line_br.id] = line_br.account_id and line_br.account_id.is_analytic_addicted and not line_br.account_id.is_not_ad_correctable or False |
10 | return res |
11 | |
12 | def _get_is_account_correctible(self, cr, uid, ids, name, args, context=None): |
13 | |
14 | === modified file 'bin/addons/account_hq_entries/account.py' |
15 | --- bin/addons/account_hq_entries/account.py 2013-12-10 09:13:08 +0000 |
16 | +++ bin/addons/account_hq_entries/account.py 2018-03-01 09:41:41 +0000 |
17 | @@ -29,8 +29,30 @@ |
18 | _inherit = 'account.account' |
19 | |
20 | _columns = { |
21 | - 'is_not_hq_correctible': fields.boolean("Can not be corrected on HQ entries", help='If checked, this attribute will prevent user from correcting the account on the entry imported from HQ system'), |
22 | + 'is_not_hq_correctible': fields.boolean("Prevent correction on account codes", |
23 | + help="If checked, this attribute will prevent the user from correcting the account on the entries"), |
24 | + 'is_not_ad_correctable': fields.boolean("Prevent correction on analytic accounts", |
25 | + help="If this option is checked AD correction on this account will be prevented in the HQ entries and via the correction wizard.") |
26 | } |
27 | |
28 | + def onchange_is_not_ad_correctable(self, cr, uid, ids, is_not_ad_correctable): |
29 | + """ |
30 | + If is_not_ad_correctable is set to TRUE, also set is_not_hq_correctible to True |
31 | + """ |
32 | + res = {} |
33 | + if is_not_ad_correctable: |
34 | + res['value'] = {'is_not_hq_correctible': True} |
35 | + return res |
36 | + |
37 | + def onchange_is_not_hq_correctible(self, cr, uid, ids, is_not_hq_correctible): |
38 | + """ |
39 | + If is_not_hq_correctible is set to FALSE, also set is_not_ad_correctable to False |
40 | + """ |
41 | + res = {} |
42 | + if not is_not_hq_correctible: |
43 | + res['value'] = {'is_not_ad_correctable': False} |
44 | + return res |
45 | + |
46 | + |
47 | account_account() |
48 | # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: |
49 | |
50 | === modified file 'bin/addons/account_hq_entries/account_view.xml' |
51 | --- bin/addons/account_hq_entries/account_view.xml 2017-04-20 08:41:54 +0000 |
52 | +++ bin/addons/account_hq_entries/account_view.xml 2018-03-01 09:41:41 +0000 |
53 | @@ -188,7 +188,10 @@ |
54 | <field name="priority">30</field> |
55 | <field name="arch" type="xml"> |
56 | <xpath expr="//field[@name='user_type']" position="after"> |
57 | - <field name="is_not_hq_correctible"/> |
58 | + <field name="is_not_hq_correctible" on_change="onchange_is_not_hq_correctible(is_not_hq_correctible)"/> |
59 | + <newline/> |
60 | + <label string="" colspan="2"/> |
61 | + <field name="is_not_ad_correctable" on_change="onchange_is_not_ad_correctable(is_not_ad_correctable)"/> |
62 | </xpath> |
63 | </field> |
64 | </record> |
65 | |
66 | === modified file 'bin/addons/account_hq_entries/hq_entries.py' |
67 | --- bin/addons/account_hq_entries/hq_entries.py 2017-04-18 08:02:20 +0000 |
68 | +++ bin/addons/account_hq_entries/hq_entries.py 2018-03-01 09:41:41 +0000 |
69 | @@ -475,6 +475,7 @@ |
70 | for line in self.browse(cr, uid, ids): |
71 | if line.account_id_first_value and line.account_id_first_value.is_not_hq_correctible and not account.is_not_hq_correctible: |
72 | raise osv.except_osv(_('Warning'), _('Change Expat salary account is not allowed!')) |
73 | + self.check_ad_change_allowed(cr, uid, ids, vals, context=context) |
74 | return super(hq_entries, self).write(cr, uid, ids, vals, context) |
75 | |
76 | def unlink(self, cr, uid, ids, context=None): |
77 | @@ -542,6 +543,29 @@ |
78 | elif p.number == 12 and not self._is_dec_period_open(cr, uid, context): |
79 | raise mission_closed_except |
80 | |
81 | + def check_ad_change_allowed(self, cr, uid, ids, vals, context=None): |
82 | + """ |
83 | + Raises a warning if the HQ entry Analytic Distribution is about to be modified although the general account is |
84 | + set as "is_not_ad_correctable" |
85 | + :param ids: ids of the HQ Entries |
86 | + :param vals: new values about to be written |
87 | + """ |
88 | + if context is None: |
89 | + context = {} |
90 | + if not context.get('sync_update_execution'): |
91 | + account_obj = self.pool.get('account.account') |
92 | + fields_list = ['account_id', 'cost_center_id', 'free_1_id', 'free_2_id', 'destination_id', 'analytic_id'] |
93 | + for hq_entry in self.browse(cr, uid, ids, fields_to_fetch=fields_list, context=context): |
94 | + account_id = vals.get('account_id') and account_obj.browse(cr, uid, vals['account_id'], fields_to_fetch=['is_not_ad_correctable'], context=context) |
95 | + hq_account = account_id or hq_entry.account_id |
96 | + if hq_account.is_not_ad_correctable: |
97 | + for field in ['cost_center_id', 'destination_id', 'analytic_id', 'free_1_id', 'free_2_id']: |
98 | + value_changed = vals.get(field) and (not getattr(hq_entry, field) or getattr(hq_entry, field).id != vals[field]) |
99 | + value_removed = getattr(hq_entry, field) and field in vals and not vals[field] |
100 | + if value_changed or value_removed: |
101 | + raise osv.except_osv(_('Warning'), _('The account %s - %s is set as \"Prevent correction on' |
102 | + ' analytic accounts\".') % (hq_account.code, hq_account.name)) |
103 | + |
104 | def auto_import(self, cr, uid, file_to_import): |
105 | import base64 |
106 | import os |
107 | |
108 | === modified file 'bin/addons/account_hq_entries/wizard/hq_entries_split.py' |
109 | --- bin/addons/account_hq_entries/wizard/hq_entries_split.py 2016-12-13 10:47:53 +0000 |
110 | +++ bin/addons/account_hq_entries/wizard/hq_entries_split.py 2018-03-01 09:41:41 +0000 |
111 | @@ -53,6 +53,7 @@ |
112 | 'ref': fields.char("Reference", size=255), |
113 | 'account_id': fields.many2one("account.account", "Account", domain=[('type', '!=', 'view')], required=True), |
114 | 'account_hq_correctible': fields.boolean("Is HQ correctible?"), |
115 | + 'is_not_ad_correctable': fields.boolean("Prevent correction on analytic accounts"), |
116 | 'amount': fields.float('Amount', required=True), |
117 | 'destination_id': fields.many2one('account.analytic.account', "Destination", domain=[('category', '=', 'DEST'), ('type', '!=', 'view')], required=True), |
118 | 'cost_center_id': fields.many2one('account.analytic.account', "Cost Center", domain=[('category', '=', 'OC'), ('type', '!=', 'view')], required=True), |
119 | @@ -114,6 +115,19 @@ |
120 | res = getattr(account, 'is_not_hq_correctible', False) |
121 | return res |
122 | |
123 | + def _get_is_not_ad_correctable(self, cr, uid, context=None): |
124 | + """ |
125 | + Returns True if the account of the original entry to split is set as 'is_not_ad_correctable' |
126 | + """ |
127 | + res = False |
128 | + if not context: |
129 | + return res |
130 | + original_line = self._get_original_line(cr, uid, context=context) |
131 | + account = original_line and getattr(original_line, 'account_id', False) or False |
132 | + if account: |
133 | + res = getattr(account, 'is_not_ad_correctable', False) |
134 | + return res |
135 | + |
136 | _defaults = { |
137 | 'name': lambda obj, cr, uid, c: obj._get_field(cr, uid, 'name', context=c), |
138 | 'ref': lambda obj, cr, uid, c: obj._get_field(cr, uid, 'ref', context=c), |
139 | @@ -122,9 +136,23 @@ |
140 | 'destination_id': lambda obj, cr, uid, c: obj._get_field(cr, uid, 'destination_id', field_type='m2o', context=c), |
141 | 'cost_center_id': lambda obj, cr, uid, c: obj._get_field(cr, uid, 'cost_center_id', field_type='m2o', context=c), |
142 | 'analytic_id': lambda obj, cr, uid, c: obj._get_field(cr, uid, 'analytic_id', field_type='m2o', context=c), |
143 | - 'account_hq_correctible': lambda obj, cr, uid, c: obj._get_hq_correctible(cr, uid, context=c) |
144 | + 'account_hq_correctible': lambda obj, cr, uid, c: obj._get_hq_correctible(cr, uid, context=c), |
145 | + 'is_not_ad_correctable': lambda obj, cr, uid, c: obj._get_is_not_ad_correctable(cr, uid, context=c) |
146 | } |
147 | |
148 | + def _update_account_and_ad(self, wizard, vals): |
149 | + """ |
150 | + Updates vals dictionary with the account and AD to use IF they are not retrieved from the wizard because they are readonly. |
151 | + If so the values are taken from the original entry (use case: account set as is_not_hq_correctible / is_not_ad_correctable). |
152 | + """ |
153 | + if wizard: |
154 | + for field in ['account_id', 'destination_id', 'cost_center_id', 'analytic_id']: # analytic_id = FP |
155 | + if not vals.get(field): |
156 | + value = getattr(wizard.original_id, field) and getattr(wizard.original_id, field).id or False |
157 | + if not value: |
158 | + raise osv.except_osv(_('Error'), _('The account or AD of the original entry is missing or incomplete.')) |
159 | + vals[field] = value |
160 | + |
161 | def create(self, cr, uid, vals, context=None): |
162 | """ |
163 | Check that: |
164 | @@ -149,10 +177,7 @@ |
165 | if not vals.get('wizard_id'): |
166 | raise osv.except_osv(_('Error'), _('No link from this line to a specific wizard. Do you come from web client?')) |
167 | wiz = self.pool.get('hq.entries.split').browse(cr, uid, vals.get('wizard_id', False)) |
168 | - account = wiz and wiz.original_id and wiz.original_id.account_id or False |
169 | - if not account: |
170 | - raise osv.except_osv(_('Error'), _('Account is required!')) |
171 | - vals['account_id'] = account.id |
172 | + self._update_account_and_ad(wiz, vals) |
173 | # US-672/2 |
174 | hq_entry = self._get_original_line(cr, uid, context=context, |
175 | wizard_id=vals.get('wizard_id', False)) |
176 | @@ -199,7 +224,9 @@ |
177 | raise osv.except_osv(_('Error'), _('Negative value is not allowed!')) |
178 | elif original_amount < 0 and vals.get('amount') > 0.0: |
179 | raise osv.except_osv(_('Error'), _('Positive value is not allowed!')) |
180 | - # Prepare some values |
181 | + |
182 | + wizard = self.browse(cr, uid, ids[0], context=context).wizard_id |
183 | + self._update_account_and_ad(wizard, vals) |
184 | |
185 | # US-672/2 |
186 | for line in self.browse(cr, uid, ids, context=context): |
187 | |
188 | === modified file 'bin/addons/account_hq_entries/wizard/wizard_view.xml' |
189 | --- bin/addons/account_hq_entries/wizard/wizard_view.xml 2016-07-19 16:06:07 +0000 |
190 | +++ bin/addons/account_hq_entries/wizard/wizard_view.xml 2018-03-01 09:41:41 +0000 |
191 | @@ -42,11 +42,16 @@ |
192 | <field name="name" readonly="1" /> |
193 | <field name="ref"/> |
194 | <field name="account_hq_correctible" invisible="1"/> |
195 | - <field name="account_id" attrs="{'readonly': [('account_hq_correctible', '=', True)]}" domain="[('type', '!=', 'view'), ('restricted_area', '=', 'hq_lines'), ('is_not_hq_correctible', '=', False)]"/> |
196 | + <field name="is_not_ad_correctable" invisible="1"/> |
197 | + <field name="account_id" attrs="{'readonly': [('account_hq_correctible', '=', True)]}" |
198 | + domain="[('type', '!=', 'view'), ('restricted_area', '=', 'hq_lines'), ('is_not_hq_correctible', '=', False)]"/> |
199 | <field name="amount"/> |
200 | - <field name="destination_id"/> |
201 | - <field name="cost_center_id"/> |
202 | - <field name="analytic_id" domain="[('type', '!=', 'view'), ('category', '=', 'FUNDING'), ('state', '=', 'open'), ('cost_center_ids', '=', cost_center_id)]" string="Funding Pool" context="{'search_default_active': 1, 'hide_inactive': 1, 'date': context.get('document_date')}"/> |
203 | + <field name="destination_id" attrs="{'readonly': [('is_not_ad_correctable', '=', True)]}"/> |
204 | + <field name="cost_center_id" attrs="{'readonly': [('is_not_ad_correctable', '=', True)]}"/> |
205 | + <field name="analytic_id" attrs="{'readonly': [('is_not_ad_correctable', '=', True)]}" |
206 | + domain="[('type', '!=', 'view'), ('category', '=', 'FUNDING'), ('state', '=', 'open'), ('cost_center_ids', '=', cost_center_id)]" |
207 | + string="Funding Pool" |
208 | + context="{'search_default_active': 1, 'hide_inactive': 1, 'date': context.get('document_date')}"/> |
209 | <field name="state"/> |
210 | <field name="state_info"/> |
211 | </tree> |
212 | |
213 | === modified file 'bin/addons/account_override/__init__.py' |
214 | --- bin/addons/account_override/__init__.py 2017-08-18 12:48:57 +0000 |
215 | +++ bin/addons/account_override/__init__.py 2018-03-01 09:41:41 +0000 |
216 | @@ -195,7 +195,7 @@ |
217 | '!', ('code', '=like', '8%'), # UTP-1187 exclude 8/9 accounts |
218 | '!', ('code', '=like', '9%'), # UTP-1187 exclude 8/9 accounts |
219 | ('code', 'not in', ['10100', '10200', '10210']), # UTP-1187 exclude liquidity / cash (10100, 10200, 10210) accounts |
220 | - ('is_not_hq_correctible', '!=', True) # UTP-1187 exclude with the "Can not be corrected on HQ entries" attribute set to "True" accounts |
221 | + ('is_not_hq_correctible', '!=', True) # UTP-1187 exclude the "Prevent correction on account codes" attribute set to "True" accounts |
222 | ], |
223 | } |
224 | |
225 | |
226 | === modified file 'bin/addons/msf_doc_import/account.py' |
227 | --- bin/addons/msf_doc_import/account.py 2018-01-03 10:28:31 +0000 |
228 | +++ bin/addons/msf_doc_import/account.py 2018-03-01 09:41:41 +0000 |
229 | @@ -406,10 +406,10 @@ |
230 | errors.append(_("Line %s. Thirdparty not compatible with account '%s - %s'") % (current_line_num, account.code, account.name, )) |
231 | continue |
232 | |
233 | - # US-3461 Accounts that can't be corrected on HQ entries are not allowed here |
234 | + # US-3461 Accounts that can't be corrected on Account Codes are not allowed here |
235 | if account.is_not_hq_correctible: |
236 | errors.append(_("Line %s. The account \"%s - %s\" cannot be used because it is set as " |
237 | - "\"Can not be corrected on HQ entries\".") % (current_line_num, account.code, account.name,)) |
238 | + "\"Prevent correction on account codes\".") % (current_line_num, account.code, account.name,)) |
239 | continue |
240 | |
241 | # Check analytic axis only if G/L account is analytic-a-holic |
242 | |
243 | === modified file 'bin/addons/msf_doc_import/wizard/wizard_import_invoice_line.py' |
244 | --- bin/addons/msf_doc_import/wizard/wizard_import_invoice_line.py 2017-06-12 09:46:03 +0000 |
245 | +++ bin/addons/msf_doc_import/wizard/wizard_import_invoice_line.py 2018-03-01 09:41:41 +0000 |
246 | @@ -167,14 +167,14 @@ |
247 | domain.extend(ACCOUNT_RESTRICTED_AREA['intermission_lines']) |
248 | error_domain = _("Line %s: Some restrictions prevent account %s to be used to import this line:\n" |
249 | "- the account cannot be of type 'View'\n" |
250 | - "- account can not be corrected on HQ entries\n" |
251 | + "- account can not be set as 'Prevent correction on account codes'\n" |
252 | "- 'Account Type' should be in ('expense', 'income', 'receivables')\n" |
253 | "- 'P&L / BS Category' cannot be None.") % (line_num, account_value) |
254 | else: |
255 | domain.extend(ACCOUNT_RESTRICTED_AREA['invoice_lines']) |
256 | error_domain = _("Line %s: Some restrictions prevent account %s to be used to import this line:\n" |
257 | "- the account cannot be of type 'View' or 'Liquidity'\n" |
258 | - "- account can not be corrected on HQ entries\n" |
259 | + "- account can not be set as 'Prevent correction on account codes'\n" |
260 | "- 'Type for specific treatment' cannot be 'Donations'\n" |
261 | "- 'Internal Type' should be different from 'Regular' OR 'Account Type' should be different from 'Stock'\n" |
262 | "- 'Account Type' should be different from 'Expense' OR 'P&L / BS Category' not None." |
263 | |
264 | === modified file 'bin/addons/msf_profile/i18n/fr_MF.po' |
265 | --- bin/addons/msf_profile/i18n/fr_MF.po 2018-02-23 13:41:43 +0000 |
266 | +++ bin/addons/msf_profile/i18n/fr_MF.po 2018-03-01 09:41:41 +0000 |
267 | @@ -29018,8 +29018,8 @@ |
268 | |
269 | #. module: account_hq_entries |
270 | #: field:account.account,is_not_hq_correctible:0 |
271 | -msgid "Can not be corrected on HQ entries" |
272 | -msgstr "Impossible à corriger dans les entrées HQ" |
273 | +msgid "Prevent correction on account codes" |
274 | +msgstr "Empêcher toutes corrections sur ce code comptable" |
275 | |
276 | #. module: base_setup |
277 | #: help:base.setup.installer,auction:0 |
278 | @@ -35091,8 +35091,8 @@ |
279 | |
280 | #. module: account_hq_entries |
281 | #: help:account.account,is_not_hq_correctible:0 |
282 | -msgid "If checked, this attribute will prevent user from correcting the account on the entry imported from HQ system" |
283 | -msgstr "If checked, this attribute will prevent user from correcting the account on the entry imported from HQ system" |
284 | +msgid "If checked, this attribute will prevent the user from correcting the account on the entries" |
285 | +msgstr "Si cet attribut est coché, il empêchera l'utilisateur de corriger le compte sur les écritures" |
286 | |
287 | #. module: account_payment |
288 | #: selection:payment.line,state:0 |
289 | @@ -45081,6 +45081,7 @@ |
290 | msgid "Pricelists Types" |
291 | msgstr "Type de Liste de Prix" |
292 | |
293 | +<<<<<<< TREE |
294 | #. modules: account, msf_instance |
295 | #: help:account.journal,entry_posted:0 |
296 | #: help:account.journal.fake,entry_posted:0 |
297 | @@ -45093,6 +45094,12 @@ |
298 | #: view:cash.request:0 |
299 | msgid "Planned expense for the coming period" |
300 | msgstr "Dépense prévue pour la période à venir" |
301 | +======= |
302 | +#. module: sale |
303 | +#: report:msf.report_reception_in:0 |
304 | +msgid "KC" |
305 | +msgstr "GF" |
306 | +>>>>>>> MERGE-SOURCE |
307 | |
308 | #. module: procurement |
309 | #: model:process.node,name:procurement.process_node_procure_confirmed |
310 | @@ -104094,13 +104101,13 @@ |
311 | #, python-format |
312 | msgid "Line %s: Some restrictions prevent account %s to be used to import this line:\n" |
313 | "- the account cannot be of type 'View' or 'Liquidity'\n" |
314 | -"- account can not be corrected on HQ entries\n" |
315 | +"- account can not be set as 'Prevent correction on account codes'\n" |
316 | "- 'Type for specific treatment' cannot be 'Donations'\n" |
317 | "- 'Internal Type' should be different from 'Regular' OR 'Account Type' should be different from 'Stock'\n" |
318 | "- 'Account Type' should be different from 'Expense' OR 'P&L / BS Category' not None." |
319 | msgstr "Ligne %s: Des restrictions empêchent le compte %s d'être utilisé pour importer cette ligne :\n" |
320 | "- le compte ne peut pas être de type 'Vue' ou 'Liquidités'\n" |
321 | -"- compte impossible à corriger dans les entrées HQ\n" |
322 | +"- le compte ne peut pas être défini comme 'Empêcher toutes corrections sur ce code comptable'\n" |
323 | "- 'Type pour traitement spécifique' ne peut pas être 'Donations'\n" |
324 | "- 'Type Interne' doit être différent de 'Normal' OU 'Type de Compte' doit être différent de 'Stock'\n" |
325 | "- 'Type de Compte' doit être différent de 'Expense' OU 'Catégorie Bilan/Cte de Résultat' ne doit pas être vide." |
326 | @@ -104116,12 +104123,12 @@ |
327 | #, python-format |
328 | msgid "Line %s: Some restrictions prevent account %s to be used to import this line:\n" |
329 | "- the account cannot be of type 'View'\n" |
330 | -"- account can not be corrected on HQ entries\n" |
331 | +"- account can not be set as 'Prevent correction on account codes'\n" |
332 | "- 'Account Type' should be in ('expense', 'income', 'receivables')\n" |
333 | "- 'P&L / BS Category' cannot be None." |
334 | msgstr "Ligne %s: Des restrictions empêchent le compte %s d'être utilisé pour importer cette ligne :\n" |
335 | "- le compte ne peut pas être de type 'Vue'\n" |
336 | -"- compte impossible à corriger dans les entrées HQ\n" |
337 | +"- le compte ne peut pas être défini comme 'Empêcher toutes corrections sur ce code comptable'\n" |
338 | "- 'Type de Compte' doit être de type 'expense', 'income' ou 'receivables'\n" |
339 | "- 'Catégorie Bilan/Cte de Résultat' ne doit pas être vide." |
340 | |
341 | @@ -105338,8 +105345,8 @@ |
342 | #. module: msf_doc_import |
343 | #: code:addons/msf_doc_import/account.py:383 |
344 | #, python-format |
345 | -msgid "Line %s. The account \"%s - %s\" cannot be used because it is set as \"Can not be corrected on HQ entries\"." |
346 | -msgstr "Ligne %s. Le compte \"%s - %s\" ne peut pas être utilisé car il est défini comme \"Impossible à corriger dans les entrées HQ\"." |
347 | +msgid "Line %s. The account \"%s - %s\" cannot be used because it is set as \"Prevent correction on account codes\"." |
348 | +msgstr "Ligne %s. Le compte \"%s - %s\" ne peut pas être utilisé car il est défini comme \"Empêcher toutes corrections sur ce code comptable\"." |
349 | |
350 | #. module: msf_homere_interface |
351 | #: code:addons/msf_homere_interface/wizard/hr_payroll_validation.py:147 |
352 | @@ -106788,6 +106795,7 @@ |
353 | #: field:import.commitment.wizard,progress:0 |
354 | msgid "Import in progress" |
355 | msgstr "Import en cours" |
356 | +<<<<<<< TREE |
357 | |
358 | #. module: product_nomenclature |
359 | #: code:addons/product_nomenclature/product_nomenclature.py:742 |
360 | @@ -107118,3 +107126,28 @@ |
361 | |
362 | |
363 | |
364 | +======= |
365 | + |
366 | +#. module: account_hq_entries |
367 | +#: field:account.account,is_not_ad_correctable:0 |
368 | +#: field:hq.entries.split.lines,is_not_ad_correctable:0 |
369 | +msgid "Prevent correction on analytic accounts" |
370 | +msgstr "Empêcher la correction sur les comptes analytiques" |
371 | + |
372 | +#. module: account_hq_entries |
373 | +#: help:account.account,is_not_ad_correctable:0 |
374 | +msgid "If this option is checked AD correction on this account will be prevented in the HQ entries and via the correction wizard." |
375 | +msgstr "Si cette option est cochée la correction de la Distribution Analytique sur ce compte sera empêchée dans les Écritures HQ et via l'assistant de correction." |
376 | + |
377 | +#. module: account_hq_entries |
378 | +#: code:addons/account_hq_entries/hq_entries.py:566 |
379 | +#, python-format |
380 | +msgid "The account %s - %s is set as \"Prevent correction on analytic accounts\"." |
381 | +msgstr "Le compte %s - %s est défini comme \"Empêcher la correction sur les comptes analytiques\"." |
382 | + |
383 | +#. module: account_hq_entries |
384 | +#: code:addons/account_hq_entries/wizard/hq_entries_split.py:150 |
385 | +#, python-format |
386 | +msgid "The account or AD of the original entry is missing or incomplete." |
387 | +msgstr "Le compte ou la Distribution Analytique de l'écriture d'origine est manquant(e) ou incomplet(e)." |
388 | +>>>>>>> MERGE-SOURCE |
389 | |
390 | === modified file 'bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv' |
391 | --- bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv 2018-02-22 14:23:17 +0000 |
392 | +++ bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv 2018-03-01 09:41:41 +0000 |
393 | @@ -16,7 +16,7 @@ |
394 | msf_sync_data_server.currency_activator,TRUE,TRUE,TRUE,TRUE,bidirectional,Down,"[('active', '!=', ''),('currency_table_id', '!=', ''), ('currency_table_id.state', '=', 'valid')]",['active'],OC,res.currency,,Currency activator,Valid,,114 |
395 | msf_sync_data_server.currency_table_header_state,TRUE,TRUE,TRUE,TRUE,bidirectional,Down,"[('state','=','valid')]",['state'],OC,res.currency.table,,Currency Table Header State,Valid,,115 |
396 | msf_sync_data_server.gl_account_type,TRUE,TRUE,TRUE,TRUE,bidirectional,Down,[],"['close_method', 'code', 'name', 'note', 'not_correctible', 'report_type']",OC,account.account.type,,GL Account Type,Valid,,116 |
397 | -msf_sync_data_server.gl_accounts,TRUE,TRUE,FALSE,TRUE,bidirectional,Down,[],"['accrual_account','code', 'default_destination_id/id', 'display_in_reports', 'inactivation_date', 'activation_date', 'is_not_hq_correctible', 'name', 'note', 'reconcile', 'shrink_entries_for_hq', 'type', 'type_for_register', 'user_type/id', 'currency_revaluation', 'include_in_yearly_move', 'has_partner_type_internal', 'has_partner_type_section', 'has_partner_type_external', 'has_partner_type_esc', 'has_partner_type_intermission', 'has_partner_type_local', 'has_partner_type_ex', 'has_partner_type_book', 'has_partner_type_empty' ]",OC,account.account,,GL Accounts,Valid,,117 |
398 | +msf_sync_data_server.gl_accounts,TRUE,TRUE,FALSE,TRUE,bidirectional,Down,[],"['accrual_account','code', 'default_destination_id/id', 'display_in_reports', 'inactivation_date', 'activation_date', 'is_not_hq_correctible', 'name', 'note', 'reconcile', 'shrink_entries_for_hq', 'type', 'type_for_register', 'user_type/id', 'currency_revaluation', 'include_in_yearly_move', 'has_partner_type_internal', 'has_partner_type_section', 'has_partner_type_external', 'has_partner_type_esc', 'has_partner_type_intermission', 'has_partner_type_local', 'has_partner_type_ex', 'has_partner_type_book', 'has_partner_type_empty', 'is_not_ad_correctable']",OC,account.account,,GL Accounts,Valid,,117 |
399 | msf_sync_data_server.gl_accounts_tree,TRUE,TRUE,TRUE,TRUE,bidirectional,Down,"[('parent_id', '!=', '')]",['parent_id/id'],OC,account.account,,GL Accounts Tree,Valid,,118 |
400 | msf_sync_data_server.analytical_journal_hq,TRUE,TRUE,FALSE,TRUE,bidirectional,Down,"[('instance_id.level', '=', 'section')]","['active', 'code', 'name', 'type','instance_id/id']",OC,account.analytic.journal,,Analytical Journal (HQ),Valid,,119 |
401 | msf_sync_data_server.analytical_journal_coordo,TRUE,TRUE,TRUE,TRUE,bidirectional,Down,"[('instance_id.level', '=', 'coordo'),('code','!=','ENGI')]","['active', 'code', 'name', 'type','instance_id/id']",MISSION,account.analytic.journal,,Analytical Journal (Coordo),Valid,,120 |
402 | @@ -173,7 +173,7 @@ |
403 | msf_usb_sync_data_server.cp_currency_table_header_state,TRUE,TRUE,TRUE,TRUE,cp_to_rw,Bidirectional,"[('state','=','valid')]",['state'],USB,res.currency.table,,[MASTER] Currency Table Header State,Valid,,1155 |
404 | msf_usb_sync_data_server.cp_currency_rate,TRUE,TRUE,TRUE,TRUE,cp_to_rw,Bidirectional,"[('rate' , '!=' , ''),('currency_id', '!=', ''), ('currency_id', 'in', ('res.currency', 'id', [('active', 'in', ['t', 'f']), ('currency_table_id', '=', '')]))]","['currency_id/id', 'name', 'rate']",USB,res.currency.rate,,[MASTER] Currency Rate,Valid,,1156 |
405 | msf_usb_sync_data_server.cp_gl_account_type,TRUE,TRUE,TRUE,TRUE,cp_to_rw,Bidirectional,[],"['close_method', 'code', 'name', 'note', 'report_type']",USB,account.account.type,,[MASTER] GL Account Type,Valid,,1400 |
406 | -msf_usb_sync_data_server.cp_gl_accounts,TRUE,TRUE,FALSE,TRUE,cp_to_rw,Bidirectional,[],"['accrual_account','code', 'default_destination_id/id', 'inactivation_date', 'activation_date', 'is_not_hq_correctible', 'name', 'note', 'reconcile', 'type', 'type_for_register', 'user_type/id', 'currency_revaluation', 'include_in_yearly_move', 'has_partner_type_internal', 'has_partner_type_section', 'has_partner_type_external', 'has_partner_type_esc', 'has_partner_type_intermission', 'has_partner_type_local', 'has_partner_type_ex', 'has_partner_type_book', 'has_partner_type_empty' ]",USB,account.account,,[MASTER] GL Accounts,Valid,,1410 |
407 | +msf_usb_sync_data_server.cp_gl_accounts,TRUE,TRUE,FALSE,TRUE,cp_to_rw,Bidirectional,[],"['accrual_account','code', 'default_destination_id/id', 'inactivation_date', 'activation_date', 'is_not_hq_correctible', 'name', 'note', 'reconcile', 'type', 'type_for_register', 'user_type/id', 'currency_revaluation', 'include_in_yearly_move', 'has_partner_type_internal', 'has_partner_type_section', 'has_partner_type_external', 'has_partner_type_esc', 'has_partner_type_intermission', 'has_partner_type_local', 'has_partner_type_ex', 'has_partner_type_book', 'has_partner_type_empty', 'is_not_ad_correctable']",USB,account.account,,[MASTER] GL Accounts,Valid,,1410 |
408 | msf_usb_sync_data_server.cp_gl_accounts_tree,TRUE,TRUE,TRUE,TRUE,cp_to_rw,Bidirectional,"[('parent_id', '!=', '')]",['parent_id/id'],USB,account.account,,[MASTER] GL Accounts Tree,Valid,,1411 |
409 | msf_usb_sync_data_server.cp_analytical_journal_hq,TRUE,TRUE,FALSE,TRUE,cp_to_rw,Bidirectional,"[('instance_id.level', '=', 'section')]","['active', 'code', 'name', 'type','instance_id/id']",USB,account.analytic.journal,,[MASTER] Analytical Journal (HQ),Valid,,1420 |
410 | msf_usb_sync_data_server.cp_analytical_journal_coordo,TRUE,TRUE,FALSE,TRUE,cp_to_rw,Bidirectional,"[('instance_id.level', '=', 'coordo')]","['active', 'code', 'name', 'type','instance_id/id']",USB,account.analytic.journal,,[MASTER] Analytical Journal (Coordo),Valid,,1421 |