'Run standard methods before  `INSERT` or `UPDATE`. Standard Methods are:
- `validate`, `before_save` for **Save**.
- `validate`, `before_submit` for **Submit**.
- `before_cancel` for **Cancel**
- `before_update_after_submit` for **Update after Submit**
Will also update title_field if set'

def run_before_save_methods(self):

    self.set_title_field()
    self.reset_seen()
    self._doc_before_save = None
    if ((not self.is_new()) and getattr(self.meta, u'track_changes', False)):
        self._doc_before_save = frappe.get_doc(self.doctype, self.name)
    if self.flags.ignore_validate:
        return
    if (self._action == u'save'):
        self.run_method(u'validate')
        self.run_method(u'before_save')
    elif (self._action == u'submit'):
        self.run_method(u'validate')
        self.run_method(u'before_submit')
    elif (self._action == u'cancel'):
        self.run_method(u'before_cancel')
    elif (self._action == u'update_after_submit'):
        self.run_method(u'before_update_after_submit')
