fix localname logic
This commit is contained in:
parent
e3ee3ebf69
commit
2d8ec58694
2 changed files with 14 additions and 3 deletions
|
|
@ -13,8 +13,6 @@ def set_new_name(doc):
|
|||
|
||||
doc._new_name_set = True
|
||||
autoname = frappe.get_meta(doc.doctype).autoname
|
||||
doc.localname = doc.name # for passing back to client
|
||||
doc.name = None
|
||||
|
||||
# amendments
|
||||
if getattr(doc, "amended_from", None):
|
||||
|
|
@ -24,7 +22,7 @@ def set_new_name(doc):
|
|||
if tmp and not isinstance(tmp, basestring):
|
||||
# autoname in a function, not a property
|
||||
doc.autoname()
|
||||
if doc.name and doc.localname != doc.name:
|
||||
if doc.name:
|
||||
return
|
||||
|
||||
# based on a field
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ def savedocs():
|
|||
"""save / submit / update doclist"""
|
||||
try:
|
||||
doc = frappe.get_doc(json.loads(frappe.form_dict.doc))
|
||||
set_local_name(doc)
|
||||
|
||||
# action
|
||||
doc.docstatus = {"Save":0, "Submit": 1, "Update": 1, "Cancel": 2}[frappe.form_dict.action]
|
||||
|
|
@ -50,3 +51,15 @@ def send_updated_docs(doc):
|
|||
d["localname"] = doc.localname
|
||||
|
||||
frappe.response.docs.append(d)
|
||||
|
||||
def set_local_name(doc):
|
||||
def _set_local_name(d):
|
||||
if d.get('__islocal'):
|
||||
d.localname = d.name
|
||||
d.name = None
|
||||
|
||||
_set_local_name(doc)
|
||||
if doc.get('__islocal'):
|
||||
for child in doc.get_all_children():
|
||||
_set_local_name(child)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue