Compare commits
3 commits
ver-6.0.12
...
main
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a5bf930e55 | ||
![]() |
ea5a83d7c1 | ||
![]() |
02221601e7 |
8 changed files with 38 additions and 45 deletions
|
@ -1,7 +1,5 @@
|
||||||
Copyright (C) 2015-2023 Cédric Krier.
|
Copyright (C) 2021-2025 martin-data services.
|
||||||
Copyright (C) 2015-2023 B2CK SPRL.
|
Copyright (C) 2024-2025 Mathias Behrle
|
||||||
Copyright (C) 2021-2024 martin-data services.
|
|
||||||
Copyright (C) 2024 Mathias Behrle
|
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
|
37
README.rst
37
README.rst
|
@ -9,42 +9,37 @@ pip install mds-edocument-xrechnung
|
||||||
|
|
||||||
Requires
|
Requires
|
||||||
========
|
========
|
||||||
- Tryton 6.0
|
- Tryton 7.0
|
||||||
|
|
||||||
Changes
|
Changes
|
||||||
=======
|
=======
|
||||||
|
|
||||||
*6.0.12 - 09.01.2025*
|
*7.0.10 - 12.12.2024*
|
||||||
|
|
||||||
- handle tax childs (Jan Grasnick <jan@mittelwind.de>)
|
|
||||||
|
|
||||||
*6.0.11 - 19.12.2024*
|
|
||||||
|
|
||||||
- Lookup parent taxes for unece tax codes.
|
|
||||||
- Improve the help text of xrechnung_routeid. Correct a translation.
|
|
||||||
(Mathias Behrle <mathiasb@m9s.biz>)
|
|
||||||
|
|
||||||
*6.0.10 - 12.12.2024*
|
|
||||||
|
|
||||||
- fix missing views
|
- fix missing views
|
||||||
- Remove arguments in super() calls. (Mathias Behrle)
|
- Remove arguments in super() calls. (Mathias Behrle)
|
||||||
|
|
||||||
*6.0.9 - 11.12.2024*
|
*7.0.9 - 11.12.2024*
|
||||||
|
|
||||||
- fix name of party in exceptions
|
- fix name of party in exceptions
|
||||||
|
|
||||||
*6.0.7 - 10.12.2024*
|
*7.0.7 - 10.12.2024*
|
||||||
|
|
||||||
- add: export of factur-x 1.07.2, XRechnung 2.3 + 3.0
|
- add iban to xml-export
|
||||||
|
|
||||||
*6.0.2 - 30.06.2023*
|
*7.0.6 - 09.12.2024*
|
||||||
|
|
||||||
- add: credit-note
|
- add: check for valid data to generate xml
|
||||||
|
|
||||||
*6.0.1 - 20.10.2022*
|
*7.0.5 - 05.12.2024*
|
||||||
|
|
||||||
- works
|
- add: export Factur-X 1.07.2
|
||||||
|
|
||||||
*6.0.0 - 17.10.2022*
|
*7.0.4 - 05.12.2024*
|
||||||
|
|
||||||
- init
|
- add: export XRechnung 2.3 + 3.0
|
||||||
|
- updt: xrechnung-route-id optional
|
||||||
|
|
||||||
|
*7.0.3 - 22.12.2023*
|
||||||
|
|
||||||
|
- compatibility to Tryton 7.0
|
||||||
|
|
14
mixin.py
14
mixin.py
|
@ -10,6 +10,7 @@ from trytond.exceptions import UserError
|
||||||
from trytond.i18n import gettext
|
from trytond.i18n import gettext
|
||||||
from trytond.tools import cached_property
|
from trytond.tools import cached_property
|
||||||
from trytond.pool import Pool
|
from trytond.pool import Pool
|
||||||
|
from trytond.modules.product import round_price
|
||||||
|
|
||||||
|
|
||||||
class EdocumentMixin(object):
|
class EdocumentMixin(object):
|
||||||
|
@ -183,6 +184,19 @@ class EdocumentMixin(object):
|
||||||
taxname=tax.rec_name))
|
taxname=tax.rec_name))
|
||||||
return unece_category_code
|
return unece_category_code
|
||||||
|
|
||||||
|
def round_unitprice(self, value):
|
||||||
|
""" round value by digits in unit_price of account.invoice.line
|
||||||
|
|
||||||
|
Args:
|
||||||
|
value (Decimal): unit-price
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
Decimal: rounded value
|
||||||
|
"""
|
||||||
|
if value is not None:
|
||||||
|
return round_price(value)
|
||||||
|
return value
|
||||||
|
|
||||||
def quote_text(self, text):
|
def quote_text(self, text):
|
||||||
""" replace critical chars
|
""" replace critical chars
|
||||||
"""
|
"""
|
||||||
|
|
6
setup.py
6
setup.py
|
@ -13,11 +13,9 @@ here = path.abspath(path.dirname(__file__))
|
||||||
MODULE = 'edocument_xrechnung'
|
MODULE = 'edocument_xrechnung'
|
||||||
PREFIX = 'mds'
|
PREFIX = 'mds'
|
||||||
|
|
||||||
# Get the long description from the README file
|
|
||||||
with open(path.join(here, 'README.rst'), encoding='utf-8') as f:
|
with open(path.join(here, 'README.rst'), encoding='utf-8') as f:
|
||||||
long_description = f.read()
|
long_description = f.read()
|
||||||
|
|
||||||
# tryton.cfg einlesen
|
|
||||||
config = ConfigParser()
|
config = ConfigParser()
|
||||||
config.readfp(open('tryton.cfg'))
|
config.readfp(open('tryton.cfg'))
|
||||||
info = dict(config.items('tryton'))
|
info = dict(config.items('tryton'))
|
||||||
|
@ -36,7 +34,7 @@ with open(path.join(here, 'versiondep.txt'), encoding='utf-8') as f:
|
||||||
modversion[l2[0]] = {'min': l2[1], 'max': l2[2], 'prefix': l2[3]}
|
modversion[l2[0]] = {'min': l2[1], 'max': l2[2], 'prefix': l2[3]}
|
||||||
|
|
||||||
# tryton-version
|
# tryton-version
|
||||||
major_version = 6
|
major_version = 7
|
||||||
minor_version = 0
|
minor_version = 0
|
||||||
|
|
||||||
requires = []
|
requires = []
|
||||||
|
@ -87,6 +85,8 @@ setup(
|
||||||
'Programming Language :: Python :: 3.8',
|
'Programming Language :: Python :: 3.8',
|
||||||
'Programming Language :: Python :: 3.9',
|
'Programming Language :: Python :: 3.9',
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
|
'Programming Language :: Python :: 3.11',
|
||||||
|
'Programming Language :: Python :: 3.12',
|
||||||
],
|
],
|
||||||
|
|
||||||
keywords='tryton xrechnung edcoument',
|
keywords='tryton xrechnung edcoument',
|
||||||
|
|
|
@ -76,7 +76,7 @@ this repository contains the full copyright notices and license terms. -->
|
||||||
</ram:SpecifiedTradeProduct>
|
</ram:SpecifiedTradeProduct>
|
||||||
<ram:SpecifiedLineTradeAgreement>
|
<ram:SpecifiedLineTradeAgreement>
|
||||||
<ram:NetPriceProductTradePrice>
|
<ram:NetPriceProductTradePrice>
|
||||||
<ram:ChargeAmount py:attrs="{'currencyID': this.invoice.currency.code}">${this.invoice.currency.round(line.unit_price)}</ram:ChargeAmount>
|
<ram:ChargeAmount py:attrs="{'currencyID': this.invoice.currency.code}">${this.round_unitprice(line.unit_price)}</ram:ChargeAmount>
|
||||||
</ram:NetPriceProductTradePrice>
|
</ram:NetPriceProductTradePrice>
|
||||||
</ram:SpecifiedLineTradeAgreement>
|
</ram:SpecifiedLineTradeAgreement>
|
||||||
<ram:SpecifiedLineTradeDelivery>
|
<ram:SpecifiedLineTradeDelivery>
|
||||||
|
|
|
@ -2,17 +2,3 @@
|
||||||
# This file is part of the edocument-module for Tryton from m-ds.de.
|
# This file is part of the edocument-module for Tryton from m-ds.de.
|
||||||
# The COPYRIGHT file at the top level of this repository contains the
|
# The COPYRIGHT file at the top level of this repository contains the
|
||||||
# full copyright notices and license terms.
|
# full copyright notices and license terms.
|
||||||
|
|
||||||
import trytond.tests.test_tryton
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
from .test_edocument import EdocTestCase
|
|
||||||
|
|
||||||
__all__ = ['suite']
|
|
||||||
|
|
||||||
|
|
||||||
def suite():
|
|
||||||
suite = trytond.tests.test_tryton.suite()
|
|
||||||
suite.addTests(unittest.TestLoader().loadTestsFromTestCase(
|
|
||||||
EdocTestCase))
|
|
||||||
return suite
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
[tryton]
|
[tryton]
|
||||||
version=6.0.12
|
version=7.0.10
|
||||||
depends:
|
depends:
|
||||||
edocument_uncefact
|
edocument_uncefact
|
||||||
party
|
party
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
full copyright notices and license terms. -->
|
full copyright notices and license terms. -->
|
||||||
<data>
|
<data>
|
||||||
|
|
||||||
<xpath expr="/form/separator[@id='move']" position="before">
|
<xpath expr="/form/separator[@id='currency_exchange']" position="before">
|
||||||
|
|
||||||
<separator id="edocument" colspan="4" string="eDocument"/>
|
<separator id="edocument" colspan="4" string="eDocument"/>
|
||||||
<field name="edocument_bank" colspan="2" height="200"/>
|
<field name="edocument_bank" colspan="2" height="200"/>
|
||||||
|
|
Loading…
Reference in a new issue