fixed conflict
diff --git a/accounts/doctype/gl_entry/gl_entry.py b/accounts/doctype/gl_entry/gl_entry.py
index 64d84b0..429cc10 100644
--- a/accounts/doctype/gl_entry/gl_entry.py
+++ b/accounts/doctype/gl_entry/gl_entry.py
@@ -108,8 +108,8 @@
and not 'Accounts Manager' in webnotes.user.get_roles():
msgprint(_("Account") + ": " + self.doc.account + _(" has been freezed. \
Only Accounts Manager can do transaction against this account"), raise_exception=1)
-
- if ret and ret[0]["company"] != self.doc.company:
+
+ if self.doc.is_cancelled in ("No", None) and ret and ret[0]["company"] != self.doc.company:
msgprint(_("Account") + ": " + self.doc.account + _(" does not belong to the company") \
+ ": " + self.doc.company, raise_exception=1)
@@ -124,9 +124,10 @@
return self.cost_center_company[self.doc.cost_center]
- if self.doc.cost_center and _get_cost_center_company() != self.doc.company:
- msgprint(_("Cost Center") + ": " + self.doc.cost_center \
- + _(" does not belong to the company") + ": " + self.doc.company, raise_exception=True)
+ if self.doc.is_cancelled in ("No", None) and \
+ self.doc.cost_center and _get_cost_center_company() != self.doc.company:
+ msgprint(_("Cost Center") + ": " + self.doc.cost_center \
+ + _(" does not belong to the company") + ": " + self.doc.company, raise_exception=True)
def check_freezing_date(self, adv_adj):
"""
diff --git a/patches/april_2013/p05_update_file_data.py b/patches/april_2013/p05_update_file_data.py
index 986e5b9..d387741 100644
--- a/patches/april_2013/p05_update_file_data.py
+++ b/patches/april_2013/p05_update_file_data.py
@@ -5,28 +5,36 @@
webnotes.reload_doc("core", "doctype", "file_data")
webnotes.reset_perms("File Data")
- singles = webnotes.conn.sql_list("""select name from tabDocType
- where ifnull(issingle,0)=1""")
+ singles = get_single_doctypes()
+
for doctype in webnotes.conn.sql_list("""select parent from tabDocField where
fieldname='file_list' and fieldtype='Text'"""):
- if doctype in singles:
- doc = webnotes.doc(doctype, doctype)
- if doc.file_list:
- update_for_doc(doctype, doc)
- webnotes.conn.set_value(doctype, None, "file_list", None)
- else:
- try:
- for doc in webnotes.conn.sql("""select name, file_list from `tab%s` where
- ifnull(file_list, '')!=''""" % doctype, as_dict=True):
- update_for_doc(doctype, doc)
- webnotes.conn.commit()
- webnotes.conn.sql("""alter table `tab%s` drop column file_list""" % doctype)
- except Exception, e:
- if e.args[0]!=1054: raise e
+ update_file_list(doctype, singles)
webnotes.conn.sql("""delete from tabDocField where fieldname='file_list'
and parent=%s""", doctype)
+
# export_to_files([["DocType", doctype]])
+
+def get_single_doctypes():
+ return webnotes.conn.sql_list("""select name from tabDocType
+ where ifnull(issingle,0)=1""")
+
+def update_file_list(doctype, singles):
+ if doctype in singles:
+ doc = webnotes.doc(doctype, doctype)
+ if doc.file_list:
+ update_for_doc(doctype, doc)
+ webnotes.conn.set_value(doctype, None, "file_list", None)
+ else:
+ try:
+ for doc in webnotes.conn.sql("""select name, file_list from `tab%s` where
+ ifnull(file_list, '')!=''""" % doctype, as_dict=True):
+ update_for_doc(doctype, doc)
+ webnotes.conn.commit()
+ webnotes.conn.sql("""alter table `tab%s` drop column file_list""" % doctype)
+ except Exception, e:
+ if e.args[0]!=1054: raise e
def update_for_doc(doctype, doc):
for filedata in doc.file_list.split("\n"):
@@ -45,10 +53,17 @@
exists = False
if exists:
- webnotes.conn.sql("""update `tabFile Data`
- set attached_to_doctype=%s, attached_to_name=%s
- where name=%s""", (doctype, doc.name, fileid))
-
+ if webnotes.conn.exists("File Data", fileid):
+ fd = webnotes.bean("File Data", fileid)
+ if not (fd.doc.attached_to_doctype and fd.doc.attached_to_name):
+ fd.doc.attached_to_doctype = doctype
+ fd.doc.attached_to_name = doc.name
+ fd.save()
+ else:
+ fd = webnotes.bean("File Data", copy=fd.doclist)
+ fd.doc.attached_to_doctype = doctype
+ fd.doc.attached_to_name = doc.name
+ fd.insert()
else:
webnotes.conn.sql("""delete from `tabFile Data` where name=%s""",
- fileid)
\ No newline at end of file
+ fileid)
\ No newline at end of file
diff --git a/patches/april_2013/p07_update_file_data_custom_field.py b/patches/april_2013/p07_update_file_data_custom_field.py
new file mode 100644
index 0000000..909df05
--- /dev/null
+++ b/patches/april_2013/p07_update_file_data_custom_field.py
@@ -0,0 +1,11 @@
+import webnotes
+def execute():
+ from patches.april_2013.p05_update_file_data import update_file_list, get_single_doctypes
+ singles = get_single_doctypes()
+ for doctype in webnotes.conn.sql("""select parent from `tabCustom Field` where
+ fieldname='file_list' and fieldtype='Text'"""):
+ update_file_list(doctype, singles)
+
+ webnotes.conn.sql("""delete from `tabCustom Field` where fieldname='file_list'
+ and parent=%s""", doctype)
+
\ No newline at end of file
diff --git a/patches/patch_list.py b/patches/patch_list.py
index 1b874d6..9bc9a2d 100644
--- a/patches/patch_list.py
+++ b/patches/patch_list.py
@@ -247,5 +247,6 @@
"execute:webnotes.reload_doc('Stock', 'DocType', 'Delivery Note Item')",
"patches.april_2013.p06_default_cost_center",
"execute:webnotes.reset_perms('File Data')",
+ "patches.april_2013.p07_update_file_data_custom_field",
"patches.april_2013.rebuild_sales_browser",
]
\ No newline at end of file
diff --git a/utilities/doctype/rename_tool/rename_tool.py b/utilities/doctype/rename_tool/rename_tool.py
index 2e368ce..5accf3c 100644
--- a/utilities/doctype/rename_tool/rename_tool.py
+++ b/utilities/doctype/rename_tool/rename_tool.py
@@ -34,7 +34,8 @@
rename_log = []
for row in rows:
- if len(row) > 2:
+ # if row has some content
+ if len(row) > 1 and row[0] and row[1]:
try:
if rename_doc(select_doctype, row[0], row[1]):
rename_log.append(_("Successful: ") + row[0] + " -> " + row[1])
@@ -45,5 +46,5 @@
rename_log.append("<span style='color: RED'>" + \
_("Failed: ") + row[0] + " -> " + row[1] + "</span>")
rename_log.append("<span style='margin-left: 20px;'>" + repr(e) + "</span>")
-
+
return rename_log
\ No newline at end of file