changeset 1657b46e91bf in tryton-tools:default details: https://hg.tryton.org/tryton-tools?cmd=changeset&node=1657b46e91bf description: Skip warnings when posting invoices diffstat:
tryton_demo.py | 21 ++++++++++++++++++--- 1 files changed, 18 insertions(+), 3 deletions(-) diffs (51 lines): diff -r 6865061c9a0a -r 1657b46e91bf tryton_demo.py --- a/tryton_demo.py Sun Oct 31 17:30:49 2021 +0100 +++ b/tryton_demo.py Sun Oct 31 17:31:09 2021 +0100 @@ -1,14 +1,15 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- import datetime +import hashlib import os import random import sys -from dateutil.relativedelta import relativedelta +from argparse import ArgumentDefaultsHelpFormatter, ArgumentParser from decimal import Decimal -from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter from itertools import chain +from dateutil.relativedelta import relativedelta from proteus import Model, Wizard from proteus import config as pconfig @@ -25,6 +26,16 @@ return pconfig.set_trytond(database, config_file=config_file) +def format_warning(name, records): + key = '|'.join(map(str, records)).encode('utf-8') + return '%s.%s' % (hashlib.md5(key).hexdigest(), name) + + +def skip_warning(config, name, records): + Warning_ = Model.get('res.user.warning') + Warning_(user=config.user, name=format_warning(name, records)).save() + + def activate_modules(config, modules): Module = Model.get('ir.module') modules = Module.find([ @@ -398,7 +409,11 @@ invoice.save() i += j invoice_date += relativedelta(days=random.randint(1, 3)) - Invoice.post([inv.id for inv in invoices[0:i]], config.context) + invoices = [inv for inv in invoices[0:i]] + for invoice in invoices: + skip_warning(config, 'invoice_payment_term', [invoice]) + skip_warning(config, 'invoice_date_future', invoices) + Invoice.click(invoices, 'post') def setup_account_payment(config, modules, company):