diff --git a/mixin.py b/mixin.py index abd7a20..04e94f4 100644 --- a/mixin.py +++ b/mixin.py @@ -144,12 +144,20 @@ class EdocumentMixin(object): def tax_unece_code(self, tax): """ 'tax': invoice.line """ - if not (tax.unece_code or ''): + unece_code = self.get_tax_unece_code(tax) + if not unece_code: raise UserError(gettext( 'edocument_xrechnung.msg_tax_code_missing', taxname=tax.rec_name)) return tax.unece_code + def get_tax_unece_code(self, tax): + while tax: + if tax.unece_code: + return tax.unece_code + break + tax = tax.parent + def get_category_code(self, tax): while tax: if tax.unece_category_code: