action_ids = self.search(cr, uid, action_dom, context=context)
for action in self.browse(cr, uid, action_ids, context=context):
now = datetime.now()
- last_run = get_datetime(action.last_run) if action.last_run else False
+ if action.last_run:
+ last_run = get_datetime(action.last_run)
+ else:
+ last_run = datetime.utcfromtimestamp(0)
# retrieve all the records that satisfy the action's condition
- model = self.pool.get(action.model_id.model)
+ model = self.pool[action.model_id.model]
domain = []
ctx = dict(context)
if action.filter_id:
record_dt = get_record_dt(record)
if not record_dt:
continue
- action_dt = get_datetime(record_dt) + delay
+ action_dt = self._check_delay(cr, uid, action, record, record_dt, context=context)
- if last_run and (last_run <= action_dt < now) or (action_dt < now):
+ if last_run <= action_dt < now:
try:
+ context = dict(context or {}, action=True)
self._process(cr, uid, action, [record.id], context=context)
except Exception:
import traceback
_inherit = 'account.fiscal.position'
_columns = {
'name': fields.char('Fiscal Position', size=64, required=True, translate=True),
+ 'note': fields.text('Notes', translate=True),
}
-account_fiscal_position()
class account_fiscal_position_template(osv.osv):
_inherit = 'account.fiscal.position.template'
_columns = {
'name': fields.char('Fiscal Position Template', size=64, required=True, translate=True),
+ 'note': fields.text('Notes', translate=True),
}
-account_fiscal_position_template()
class account_journal(osv.osv):