在合同中添加重复到期日期字段作为 recurring_next_date 字段

问题描述

from openerp 导入模型、字段、api、_ 从 openerp.addons.decimal_precision 导入 decimal_precision 作为 dp

class account_analytic_account(models.Model):

_inherit = "account.analytic.account"

recurring_date_due = fields.Date("Expiration date")
recurring_day = fields.Char("Expiration Day")

_defaults = {

    'recurring_date_due': lambda *a: time.strftime('%Y-%m-%d')

}

------------- 这是创建发票的工作---------

@api.multi

def recurring_create_invoice(self):

        current_date = time.strftime('%Y-%m-%d')

        if(self.recurring_date_due,'<=',current_date):

            value = super(account_analytic_account,self).recurring_create_invoice()

            date_due=self.recurring_date_due
            for each in value:
                invoice = self.env['account.invoice'].search([('id','=',each)])
                invoice.write({'date_due': date_due})

                self.recurring_date_due = (datetime.strptime(self.recurring_date_due,'%Y-%m-%d') + relativedelta(months=1)).strftime('%Y-%m-%d')

            return value
        else:
            raise Warning(_("You can no longer generate quotas for this contract."))

-------不行,发票生成日期到了不计算日期不填写

@api.model

def recurring_create_invoice_giganet(self):

    value = super(account_analytic_account,self)._cron_recurring_create_invoice()

    for each in value:

        invoice = self.env['account.invoice'].search([('id',each)])
        contract = self.env['account.analytic.account'].search([('code',invoice.origin)])
        date_due = (datetime.strptime(self.recurring_date_due,'%Y-%m-%d') + relativedelta(months=1)).strftime('%Y-%m-%d')

        self.env.cr.execute('update account_analytic_account set date_due = %s where id = %s',(contract.recurring_date_due,contract.id))

        invoice.write({'date_due': date_due})

    return value

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...