瀏覽代碼

Map child table if not mentioned in table_map but have the same fieldname and same table and both hhave no_copy unchecked

version-14
James T. Nixon III 10 年之前
父節點
當前提交
f46092198f
共有 1 個檔案被更改,包括 10 行新增0 行删除
  1. +10
    -0
      frappe/model/mapper.py

+ 10
- 0
frappe/model/mapper.py 查看文件

@@ -33,6 +33,16 @@ def get_mapped_doc(from_doctype, from_docname, table_maps, target_doc=None,
for df in source_doc.meta.get_table_fields(): for df in source_doc.meta.get_table_fields():
source_child_doctype = df.options source_child_doctype = df.options
table_map = table_maps.get(source_child_doctype) table_map = table_maps.get(source_child_doctype)
# if table_map isn't explicitly specified check if both source and target have the same fieldname and same table options and both of them don't have no_copy
if not table_map:
target_df = target_doc.meta.get_field(df.fieldname)
target_child_doctype = target_df.options
if target_df and target_child_doctype==source_child_doctype and not df.no_copy and not target_df.no_copy:
table_map = {
"doctype": target_child_doctype
}
if table_map: if table_map:
for source_d in source_doc.get(df.fieldname): for source_d in source_doc.get(df.fieldname):
if "condition" in table_map: if "condition" in table_map:


Loading…
取消
儲存