odoo-addon-contract 17.0.1.1.2__py3-none-any.whl → 17.0.1.2.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. odoo/addons/contract/README.rst +4 -3
  2. odoo/addons/contract/__manifest__.py +1 -1
  3. odoo/addons/contract/i18n/am.po +101 -0
  4. odoo/addons/contract/i18n/ar.po +101 -0
  5. odoo/addons/contract/i18n/bg.po +101 -0
  6. odoo/addons/contract/i18n/bs.po +101 -0
  7. odoo/addons/contract/i18n/ca.po +101 -0
  8. odoo/addons/contract/i18n/ca_ES.po +101 -0
  9. odoo/addons/contract/i18n/contract.pot +101 -0
  10. odoo/addons/contract/i18n/cs.po +101 -0
  11. odoo/addons/contract/i18n/da.po +101 -0
  12. odoo/addons/contract/i18n/de.po +101 -0
  13. odoo/addons/contract/i18n/el_GR.po +101 -0
  14. odoo/addons/contract/i18n/en_GB.po +101 -0
  15. odoo/addons/contract/i18n/es.po +107 -7
  16. odoo/addons/contract/i18n/es_AR.po +101 -0
  17. odoo/addons/contract/i18n/es_CL.po +101 -0
  18. odoo/addons/contract/i18n/es_CO.po +101 -0
  19. odoo/addons/contract/i18n/es_CR.po +101 -0
  20. odoo/addons/contract/i18n/es_DO.po +101 -0
  21. odoo/addons/contract/i18n/es_EC.po +101 -0
  22. odoo/addons/contract/i18n/es_MX.po +101 -0
  23. odoo/addons/contract/i18n/es_PY.po +101 -0
  24. odoo/addons/contract/i18n/es_VE.po +101 -0
  25. odoo/addons/contract/i18n/et.po +101 -0
  26. odoo/addons/contract/i18n/eu.po +101 -0
  27. odoo/addons/contract/i18n/fa.po +101 -0
  28. odoo/addons/contract/i18n/fi.po +101 -0
  29. odoo/addons/contract/i18n/fr.po +101 -0
  30. odoo/addons/contract/i18n/fr_CA.po +101 -0
  31. odoo/addons/contract/i18n/fr_CH.po +101 -0
  32. odoo/addons/contract/i18n/fr_FR.po +101 -0
  33. odoo/addons/contract/i18n/gl.po +101 -0
  34. odoo/addons/contract/i18n/gl_ES.po +101 -0
  35. odoo/addons/contract/i18n/he.po +101 -0
  36. odoo/addons/contract/i18n/hi_IN.po +101 -0
  37. odoo/addons/contract/i18n/hr.po +101 -0
  38. odoo/addons/contract/i18n/hr_HR.po +101 -0
  39. odoo/addons/contract/i18n/hu.po +101 -0
  40. odoo/addons/contract/i18n/id.po +101 -0
  41. odoo/addons/contract/i18n/it.po +101 -0
  42. odoo/addons/contract/i18n/ja.po +101 -0
  43. odoo/addons/contract/i18n/ko.po +101 -0
  44. odoo/addons/contract/i18n/lt.po +101 -0
  45. odoo/addons/contract/i18n/lt_LT.po +101 -0
  46. odoo/addons/contract/i18n/lv.po +101 -0
  47. odoo/addons/contract/i18n/mk.po +101 -0
  48. odoo/addons/contract/i18n/mn.po +101 -0
  49. odoo/addons/contract/i18n/nb.po +101 -0
  50. odoo/addons/contract/i18n/nb_NO.po +101 -0
  51. odoo/addons/contract/i18n/nl.po +101 -0
  52. odoo/addons/contract/i18n/nl_BE.po +101 -0
  53. odoo/addons/contract/i18n/nl_NL.po +101 -0
  54. odoo/addons/contract/i18n/pl.po +101 -0
  55. odoo/addons/contract/i18n/pt.po +101 -0
  56. odoo/addons/contract/i18n/pt_BR.po +101 -0
  57. odoo/addons/contract/i18n/pt_PT.po +101 -0
  58. odoo/addons/contract/i18n/ro.po +101 -0
  59. odoo/addons/contract/i18n/ru.po +101 -0
  60. odoo/addons/contract/i18n/sk.po +101 -0
  61. odoo/addons/contract/i18n/sk_SK.po +101 -0
  62. odoo/addons/contract/i18n/sl.po +101 -0
  63. odoo/addons/contract/i18n/sr.po +101 -0
  64. odoo/addons/contract/i18n/sr@latin.po +101 -0
  65. odoo/addons/contract/i18n/sv.po +101 -0
  66. odoo/addons/contract/i18n/th.po +101 -0
  67. odoo/addons/contract/i18n/tr.po +101 -0
  68. odoo/addons/contract/i18n/tr_TR.po +101 -0
  69. odoo/addons/contract/i18n/uk.po +101 -0
  70. odoo/addons/contract/i18n/vi.po +101 -0
  71. odoo/addons/contract/i18n/vi_VN.po +101 -0
  72. odoo/addons/contract/i18n/zh_CN.po +101 -0
  73. odoo/addons/contract/i18n/zh_TW.po +101 -0
  74. odoo/addons/contract/models/contract_line.py +23 -0
  75. odoo/addons/contract/readme/USAGE.md +3 -3
  76. odoo/addons/contract/static/description/index.html +4 -3
  77. odoo/addons/contract/tests/test_contract.py +10 -1
  78. odoo/addons/contract/views/contract.xml +7 -0
  79. odoo/addons/contract/views/contract_template.xml +2 -0
  80. {odoo_addon_contract-17.0.1.1.2.dist-info → odoo_addon_contract-17.0.1.2.0.1.dist-info}/METADATA +5 -4
  81. odoo_addon_contract-17.0.1.2.0.1.dist-info/RECORD +143 -0
  82. odoo_addon_contract-17.0.1.1.2.dist-info/RECORD +0 -143
  83. {odoo_addon_contract-17.0.1.1.2.dist-info → odoo_addon_contract-17.0.1.2.0.1.dist-info}/WHEEL +0 -0
  84. {odoo_addon_contract-17.0.1.1.2.dist-info → odoo_addon_contract-17.0.1.2.0.1.dist-info}/top_level.txt +0 -0
@@ -149,6 +149,23 @@ msgstr ""
149
149
  msgid "<strong>#END#</strong>: End date of the invoiced period"
150
150
  msgstr "<strong>#结束#</strong>: 发票日期的结束日期"
151
151
 
152
+ #. module: contract
153
+ #: model_terms:ir.ui.view,arch_db:contract.contract_contract_form_view
154
+ msgid ""
155
+ "<strong>#INVOICEMONTHNAME#</strong>\n"
156
+ " : Invoice month name\n"
157
+ " of\n"
158
+ " the\n"
159
+ " invoiced period"
160
+ msgstr ""
161
+
162
+ #. module: contract
163
+ #: model_terms:ir.ui.view,arch_db:contract.contract_template_form_view
164
+ msgid ""
165
+ "<strong>#INVOICEMONTHNAME#</strong>: Invoice month name of the invoiced "
166
+ "period"
167
+ msgstr ""
168
+
152
169
  #. module: contract
153
170
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_form_view
154
171
  msgid ""
@@ -357,6 +374,13 @@ msgstr ""
357
374
  msgid "Analytic Precision"
358
375
  msgstr ""
359
376
 
377
+ #. module: contract
378
+ #. odoo-python
379
+ #: code:addons/contract/models/contract_line.py:0
380
+ #, python-format
381
+ msgid "April"
382
+ msgstr ""
383
+
360
384
  #. module: contract
361
385
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_form_view
362
386
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_search_view
@@ -391,6 +415,13 @@ msgstr "相关业务伙伴"
391
415
  msgid "Attachment Count"
392
416
  msgstr "附件数量"
393
417
 
418
+ #. module: contract
419
+ #. odoo-python
420
+ #: code:addons/contract/models/contract_line.py:0
421
+ #, python-format
422
+ msgid "August"
423
+ msgstr ""
424
+
394
425
  #. module: contract
395
426
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract_line__is_auto_renew
396
427
  #: model:ir.model.fields,field_description:contract.field_contract_line__is_auto_renew
@@ -987,6 +1018,13 @@ msgstr ""
987
1018
  msgid "Day(s)"
988
1019
  msgstr "天"
989
1020
 
1021
+ #. module: contract
1022
+ #. odoo-python
1023
+ #: code:addons/contract/models/contract_line.py:0
1024
+ #, python-format
1025
+ msgid "December"
1026
+ msgstr ""
1027
+
990
1028
  #. module: contract
991
1029
  #: model:ir.model.fields,help:contract.field_contract_abstract_contract_line__note_invoicing_mode
992
1030
  #: model:ir.model.fields,help:contract.field_contract_line__note_invoicing_mode
@@ -1070,6 +1108,13 @@ msgid ""
1070
1108
  "%(ue)s"
1071
1109
  msgstr ""
1072
1110
 
1111
+ #. module: contract
1112
+ #. odoo-python
1113
+ #: code:addons/contract/models/contract_line.py:0
1114
+ #, python-format
1115
+ msgid "February"
1116
+ msgstr ""
1117
+
1073
1118
  #. module: contract
1074
1119
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_search_view
1075
1120
  msgid "Finished"
@@ -1299,6 +1344,13 @@ msgstr ""
1299
1344
  msgid "Is suspension without end date"
1300
1345
  msgstr "暂停没有结束日期"
1301
1346
 
1347
+ #. module: contract
1348
+ #. odoo-python
1349
+ #: code:addons/contract/models/contract_line.py:0
1350
+ #, python-format
1351
+ msgid "January"
1352
+ msgstr ""
1353
+
1302
1354
  #. module: contract
1303
1355
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract__journal_id
1304
1356
  #: model:ir.model.fields,field_description:contract.field_contract_contract__journal_id
@@ -1317,6 +1369,20 @@ msgstr ""
1317
1369
  msgid "Journal Item"
1318
1370
  msgstr ""
1319
1371
 
1372
+ #. module: contract
1373
+ #. odoo-python
1374
+ #: code:addons/contract/models/contract_line.py:0
1375
+ #, python-format
1376
+ msgid "July"
1377
+ msgstr ""
1378
+
1379
+ #. module: contract
1380
+ #. odoo-python
1381
+ #: code:addons/contract/models/contract_line.py:0
1382
+ #, python-format
1383
+ msgid "June"
1384
+ msgstr ""
1385
+
1320
1386
  #. module: contract
1321
1387
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract_line__last_date_invoiced
1322
1388
  #: model:ir.model.fields,field_description:contract.field_contract_contract__last_date_invoiced
@@ -1385,6 +1451,13 @@ msgstr "采购合同"
1385
1451
  msgid "Manually Invoice Sale Contracts"
1386
1452
  msgstr "销售合同"
1387
1453
 
1454
+ #. module: contract
1455
+ #. odoo-python
1456
+ #: code:addons/contract/models/contract_line.py:0
1457
+ #, python-format
1458
+ msgid "March"
1459
+ msgstr ""
1460
+
1388
1461
  #. module: contract
1389
1462
  #: model:ir.model.fields,help:contract.field_contract_abstract_contract__line_recurrence
1390
1463
  #: model:ir.model.fields,help:contract.field_contract_contract__line_recurrence
@@ -1394,6 +1467,13 @@ msgid ""
1394
1467
  "all together for the whole contract."
1395
1468
  msgstr ""
1396
1469
 
1470
+ #. module: contract
1471
+ #. odoo-python
1472
+ #: code:addons/contract/models/contract_line.py:0
1473
+ #, python-format
1474
+ msgid "May"
1475
+ msgstr ""
1476
+
1397
1477
  #. module: contract
1398
1478
  #: model:ir.model.fields,field_description:contract.field_contract_contract__message_has_error
1399
1479
  msgid "Message Delivery error"
@@ -1518,6 +1598,13 @@ msgstr "发票类型"
1518
1598
  msgid "Notes"
1519
1599
  msgstr ""
1520
1600
 
1601
+ #. module: contract
1602
+ #. odoo-python
1603
+ #: code:addons/contract/models/contract_line.py:0
1604
+ #, python-format
1605
+ msgid "November"
1606
+ msgstr ""
1607
+
1521
1608
  #. module: contract
1522
1609
  #: model:ir.model.fields,field_description:contract.field_contract_contract__message_needaction_counter
1523
1610
  msgid "Number of Actions"
@@ -1552,6 +1639,13 @@ msgstr ""
1552
1639
  msgid "Number of messages with delivery error"
1553
1640
  msgstr "发送错误的消息数量"
1554
1641
 
1642
+ #. module: contract
1643
+ #. odoo-python
1644
+ #: code:addons/contract/models/contract_line.py:0
1645
+ #, python-format
1646
+ msgid "October"
1647
+ msgstr ""
1648
+
1555
1649
  #. module: contract
1556
1650
  #: model:ir.model.fields,field_description:contract.field_account_bank_statement_line__old_contract_id
1557
1651
  #: model:ir.model.fields,field_description:contract.field_account_move__old_contract_id
@@ -1828,6 +1922,13 @@ msgstr "通过Email发送"
1828
1922
  msgid "Sent"
1829
1923
  msgstr ""
1830
1924
 
1925
+ #. module: contract
1926
+ #. odoo-python
1927
+ #: code:addons/contract/models/contract_line.py:0
1928
+ #, python-format
1929
+ msgid "September"
1930
+ msgstr ""
1931
+
1831
1932
  #. module: contract
1832
1933
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract_line__sequence
1833
1934
  #: model:ir.model.fields,field_description:contract.field_contract_line__sequence
@@ -147,6 +147,23 @@ msgstr ""
147
147
  msgid "<strong>#END#</strong>: End date of the invoiced period"
148
148
  msgstr ""
149
149
 
150
+ #. module: contract
151
+ #: model_terms:ir.ui.view,arch_db:contract.contract_contract_form_view
152
+ msgid ""
153
+ "<strong>#INVOICEMONTHNAME#</strong>\n"
154
+ " : Invoice month name\n"
155
+ " of\n"
156
+ " the\n"
157
+ " invoiced period"
158
+ msgstr ""
159
+
160
+ #. module: contract
161
+ #: model_terms:ir.ui.view,arch_db:contract.contract_template_form_view
162
+ msgid ""
163
+ "<strong>#INVOICEMONTHNAME#</strong>: Invoice month name of the invoiced "
164
+ "period"
165
+ msgstr ""
166
+
150
167
  #. module: contract
151
168
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_form_view
152
169
  msgid ""
@@ -354,6 +371,13 @@ msgstr ""
354
371
  msgid "Analytic Precision"
355
372
  msgstr ""
356
373
 
374
+ #. module: contract
375
+ #. odoo-python
376
+ #: code:addons/contract/models/contract_line.py:0
377
+ #, python-format
378
+ msgid "April"
379
+ msgstr ""
380
+
357
381
  #. module: contract
358
382
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_form_view
359
383
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_search_view
@@ -386,6 +410,13 @@ msgstr ""
386
410
  msgid "Attachment Count"
387
411
  msgstr ""
388
412
 
413
+ #. module: contract
414
+ #. odoo-python
415
+ #: code:addons/contract/models/contract_line.py:0
416
+ #, python-format
417
+ msgid "August"
418
+ msgstr ""
419
+
389
420
  #. module: contract
390
421
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract_line__is_auto_renew
391
422
  #: model:ir.model.fields,field_description:contract.field_contract_line__is_auto_renew
@@ -970,6 +1001,13 @@ msgstr ""
970
1001
  msgid "Day(s)"
971
1002
  msgstr ""
972
1003
 
1004
+ #. module: contract
1005
+ #. odoo-python
1006
+ #: code:addons/contract/models/contract_line.py:0
1007
+ #, python-format
1008
+ msgid "December"
1009
+ msgstr ""
1010
+
973
1011
  #. module: contract
974
1012
  #: model:ir.model.fields,help:contract.field_contract_abstract_contract_line__note_invoicing_mode
975
1013
  #: model:ir.model.fields,help:contract.field_contract_line__note_invoicing_mode
@@ -1052,6 +1090,13 @@ msgid ""
1052
1090
  "%(ue)s"
1053
1091
  msgstr ""
1054
1092
 
1093
+ #. module: contract
1094
+ #. odoo-python
1095
+ #: code:addons/contract/models/contract_line.py:0
1096
+ #, python-format
1097
+ msgid "February"
1098
+ msgstr ""
1099
+
1055
1100
  #. module: contract
1056
1101
  #: model_terms:ir.ui.view,arch_db:contract.contract_contract_search_view
1057
1102
  msgid "Finished"
@@ -1279,6 +1324,13 @@ msgstr ""
1279
1324
  msgid "Is suspension without end date"
1280
1325
  msgstr ""
1281
1326
 
1327
+ #. module: contract
1328
+ #. odoo-python
1329
+ #: code:addons/contract/models/contract_line.py:0
1330
+ #, python-format
1331
+ msgid "January"
1332
+ msgstr ""
1333
+
1282
1334
  #. module: contract
1283
1335
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract__journal_id
1284
1336
  #: model:ir.model.fields,field_description:contract.field_contract_contract__journal_id
@@ -1297,6 +1349,20 @@ msgstr ""
1297
1349
  msgid "Journal Item"
1298
1350
  msgstr ""
1299
1351
 
1352
+ #. module: contract
1353
+ #. odoo-python
1354
+ #: code:addons/contract/models/contract_line.py:0
1355
+ #, python-format
1356
+ msgid "July"
1357
+ msgstr ""
1358
+
1359
+ #. module: contract
1360
+ #. odoo-python
1361
+ #: code:addons/contract/models/contract_line.py:0
1362
+ #, python-format
1363
+ msgid "June"
1364
+ msgstr ""
1365
+
1300
1366
  #. module: contract
1301
1367
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract_line__last_date_invoiced
1302
1368
  #: model:ir.model.fields,field_description:contract.field_contract_contract__last_date_invoiced
@@ -1363,6 +1429,13 @@ msgstr ""
1363
1429
  msgid "Manually Invoice Sale Contracts"
1364
1430
  msgstr ""
1365
1431
 
1432
+ #. module: contract
1433
+ #. odoo-python
1434
+ #: code:addons/contract/models/contract_line.py:0
1435
+ #, python-format
1436
+ msgid "March"
1437
+ msgstr ""
1438
+
1366
1439
  #. module: contract
1367
1440
  #: model:ir.model.fields,help:contract.field_contract_abstract_contract__line_recurrence
1368
1441
  #: model:ir.model.fields,help:contract.field_contract_contract__line_recurrence
@@ -1372,6 +1445,13 @@ msgid ""
1372
1445
  "all together for the whole contract."
1373
1446
  msgstr ""
1374
1447
 
1448
+ #. module: contract
1449
+ #. odoo-python
1450
+ #: code:addons/contract/models/contract_line.py:0
1451
+ #, python-format
1452
+ msgid "May"
1453
+ msgstr ""
1454
+
1375
1455
  #. module: contract
1376
1456
  #: model:ir.model.fields,field_description:contract.field_contract_contract__message_has_error
1377
1457
  msgid "Message Delivery error"
@@ -1495,6 +1575,13 @@ msgstr ""
1495
1575
  msgid "Notes"
1496
1576
  msgstr ""
1497
1577
 
1578
+ #. module: contract
1579
+ #. odoo-python
1580
+ #: code:addons/contract/models/contract_line.py:0
1581
+ #, python-format
1582
+ msgid "November"
1583
+ msgstr ""
1584
+
1498
1585
  #. module: contract
1499
1586
  #: model:ir.model.fields,field_description:contract.field_contract_contract__message_needaction_counter
1500
1587
  msgid "Number of Actions"
@@ -1529,6 +1616,13 @@ msgstr ""
1529
1616
  msgid "Number of messages with delivery error"
1530
1617
  msgstr ""
1531
1618
 
1619
+ #. module: contract
1620
+ #. odoo-python
1621
+ #: code:addons/contract/models/contract_line.py:0
1622
+ #, python-format
1623
+ msgid "October"
1624
+ msgstr ""
1625
+
1532
1626
  #. module: contract
1533
1627
  #: model:ir.model.fields,field_description:contract.field_account_bank_statement_line__old_contract_id
1534
1628
  #: model:ir.model.fields,field_description:contract.field_account_move__old_contract_id
@@ -1804,6 +1898,13 @@ msgstr ""
1804
1898
  msgid "Sent"
1805
1899
  msgstr ""
1806
1900
 
1901
+ #. module: contract
1902
+ #. odoo-python
1903
+ #: code:addons/contract/models/contract_line.py:0
1904
+ #, python-format
1905
+ msgid "September"
1906
+ msgstr ""
1907
+
1807
1908
  #. module: contract
1808
1909
  #: model:ir.model.fields,field_description:contract.field_contract_abstract_contract_line__sequence
1809
1910
  #: model:ir.model.fields,field_description:contract.field_contract_line__sequence
@@ -595,6 +595,23 @@ class ContractLine(models.Model):
595
595
  )
596
596
  return first_date_invoiced, last_date_invoiced, recurring_next_date
597
597
 
598
+ def _translate_marker_month_name(self, month_name):
599
+ months = {
600
+ "January": _("January"),
601
+ "February": _("February"),
602
+ "March": _("March"),
603
+ "April": _("April"),
604
+ "May": _("May"),
605
+ "June": _("June"),
606
+ "July": _("July"),
607
+ "August": _("August"),
608
+ "September": _("September"),
609
+ "October": _("October"),
610
+ "November": _("November"),
611
+ "December": _("December"),
612
+ }
613
+ return months[month_name]
614
+
598
615
  def _insert_markers(self, first_date_invoiced, last_date_invoiced):
599
616
  self.ensure_one()
600
617
  lang_obj = self.env["res.lang"]
@@ -603,6 +620,12 @@ class ContractLine(models.Model):
603
620
  name = self.name
604
621
  name = name.replace("#START#", first_date_invoiced.strftime(date_format))
605
622
  name = name.replace("#END#", last_date_invoiced.strftime(date_format))
623
+ name = name.replace(
624
+ "#INVOICEMONTHNAME#",
625
+ self.with_context(lang=lang.code)._translate_marker_month_name(
626
+ first_date_invoiced.strftime("%B")
627
+ ),
628
+ )
606
629
  return name
607
630
 
608
631
  def _update_recurring_next_date(self):
@@ -11,9 +11,9 @@
11
11
  (automatically computed, can be modified) and end date (optional)
12
12
  - auto-price, for having a price automatically obtained from the
13
13
  price list
14
- - \#START# or \#END# in the description field to display the
15
- start/end date of the invoiced period in the invoice line
16
- description
14
+ - \#START# - \#END# or \#INVOICEMONTHNAME# in the description field
15
+ to display the start/end date or the start month of the invoiced
16
+ period in the invoice line description
17
17
  - pre-paid (invoice at period start) or post-paid (invoice at start
18
18
  of next period)
19
19
  4. The "Generate Recurring Invoices from Contracts" cron runs daily to
@@ -367,7 +367,7 @@ ul.auto-toc {
367
367
  !! This file is generated by oca-gen-addon-readme !!
368
368
  !! changes will be overwritten. !!
369
369
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
370
- !! source digest: sha256:a212fd348aaf2a7d728a431012ef54bd1b8b8fa9ee321e2a5f94309e07382c78
370
+ !! source digest: sha256:919fb3bdb7d11d60fa16cd0ad86eb9bc7ab10b06ae02adf1be846b5b7d99d5b3
371
371
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
372
372
  <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Production/Stable" src="https://img.shields.io/badge/maturity-Production%2FStable-green.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/contract/tree/17.0/contract"><img alt="OCA/contract" src="https://img.shields.io/badge/github-OCA%2Fcontract-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/contract-17-0/contract-17-0-contract"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/contract&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
373
373
  <p>This module enables contracts management with recurring invoicing
@@ -414,8 +414,9 @@ last day or years), start date, date of next invoice (automatically
414
414
  computed, can be modified) and end date (optional)</li>
415
415
  <li>auto-price, for having a price automatically obtained from the
416
416
  price list</li>
417
- <li>#START# or #END# in the description field to display the start/end
418
- date of the invoiced period in the invoice line description</li>
417
+ <li>#START# - #END# or #INVOICEMONTHNAME# in the description field to
418
+ display the start/end date or the start month of the invoiced
419
+ period in the invoice line description</li>
419
420
  <li>pre-paid (invoice at period start) or post-paid (invoice at start
420
421
  of next period)</li>
421
422
  </ul>
@@ -8,6 +8,7 @@ from collections import namedtuple
8
8
  from datetime import timedelta
9
9
 
10
10
  from dateutil.relativedelta import relativedelta
11
+ from freezegun import freeze_time
11
12
 
12
13
  from odoo import fields
13
14
  from odoo.exceptions import UserError, ValidationError
@@ -141,7 +142,7 @@ class TestContractBase(common.TransactionCase):
141
142
  0,
142
143
  {
143
144
  "product_id": False,
144
- "name": "Header for Services",
145
+ "name": "Header for #INVOICEMONTHNAME# Services",
145
146
  "display_type": "line_section",
146
147
  },
147
148
  ),
@@ -2385,3 +2386,11 @@ class TestContract(TestContractBase):
2385
2386
  self.assertEqual(len(self.contract._get_related_invoices()), 4)
2386
2387
  self.contract.recurring_create_invoice()
2387
2388
  self.assertEqual(len(self.contract._get_related_invoices()), 4)
2389
+
2390
+ @freeze_time("2023-05-01")
2391
+ def test_check_month_name_marker(self):
2392
+ """Set fixed date to check test correctly."""
2393
+ self.contract3.contract_line_ids.date_start = fields.Date.today()
2394
+ self.contract3.contract_line_ids.recurring_next_date = fields.Date.today()
2395
+ invoice_id = self.contract3.recurring_create_invoice()
2396
+ self.assertEqual(invoice_id.invoice_line_ids[0].name, "Header for May Services")
@@ -478,6 +478,13 @@
478
478
  the
479
479
  invoiced period
480
480
  </p>
481
+ <p colspan="2">
482
+ <strong>#INVOICEMONTHNAME#</strong>
483
+ : Invoice month name
484
+ of
485
+ the
486
+ invoiced period
487
+ </p>
481
488
  </group>
482
489
  </page>
483
490
  </notebook>
@@ -76,6 +76,8 @@
76
76
  <p> <strong
77
77
  >#START#</strong>: Start date of the invoiced period</p>
78
78
  <p> <strong>#END#</strong>: End date of the invoiced period</p>
79
+ <p> <strong
80
+ >#INVOICEMONTHNAME#</strong>: Invoice month name of the invoiced period</p>
79
81
  </div>
80
82
  </group>
81
83
  </form>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-contract
3
- Version: 17.0.1.1.2
3
+ Version: 17.0.1.2.0.1
4
4
  Requires-Python: >=3.10
5
5
  Requires-Dist: odoo>=17.0a,<17.1dev
6
6
  Summary: Recurring - Contracts Management
@@ -23,7 +23,7 @@ Recurring - Contracts Management
23
23
  !! This file is generated by oca-gen-addon-readme !!
24
24
  !! changes will be overwritten. !!
25
25
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
26
- !! source digest: sha256:a212fd348aaf2a7d728a431012ef54bd1b8b8fa9ee321e2a5f94309e07382c78
26
+ !! source digest: sha256:919fb3bdb7d11d60fa16cd0ad86eb9bc7ab10b06ae02adf1be846b5b7d99d5b3
27
27
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
28
28
 
29
29
  .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
@@ -84,8 +84,9 @@ Usage
84
84
  computed, can be modified) and end date (optional)
85
85
  - auto-price, for having a price automatically obtained from the
86
86
  price list
87
- - #START# or #END# in the description field to display the start/end
88
- date of the invoiced period in the invoice line description
87
+ - #START# - #END# or #INVOICEMONTHNAME# in the description field to
88
+ display the start/end date or the start month of the invoiced
89
+ period in the invoice line description
89
90
  - pre-paid (invoice at period start) or post-paid (invoice at start
90
91
  of next period)
91
92