From e4e9fcc5aab6a3192cbfb8d4ff6fc7bbcdd03a6e Mon Sep 17 00:00:00 2001 From: Markus Lobedann Date: Thu, 4 Apr 2024 10:31:34 +0200 Subject: [PATCH] fix: :bug: use doctype File directly instead of save_file from file_manager.py `save_file` will change the filename and not clean up after itself after a rollback --- .../import_supplier_invoice.py | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py b/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py index 59cbf38745..a86258057d 100644 --- a/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py +++ b/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py @@ -12,7 +12,6 @@ from frappe import _ from frappe.model.document import Document from frappe.utils import flt, get_datetime_str, today from frappe.utils.data import format_datetime -from frappe.utils.file_manager import save_file import erpnext @@ -83,16 +82,15 @@ class ImportSupplierInvoice(Document): self.file_count += 1 if pi_name: self.purchase_invoices_count += 1 - save_file( - file_name, - encoded_content, - "Purchase Invoice", - pi_name, - folder=None, - decode=False, - is_private=0, - df=None, - ) + + file_doc = frappe.new_doc("File") + file_doc.file_name = file_name + file_doc.attached_to_doctype = "Purchase Invoice" + file_doc.attached_to_name = pi_name + file_doc.content = encoded_content + file_doc.decode = False + file_doc.is_private = False + file_doc.insert(ignore_permissions=True) def prepare_items_for_invoice(self, file_content, invoices_args): qty = 1 @@ -280,7 +278,6 @@ def create_supplier(supplier_group, args): return existing_supplier_name else: - new_supplier = frappe.new_doc("Supplier") new_supplier.supplier_name = re.sub("&", "&", args.supplier) new_supplier.supplier_group = supplier_group -- GitLab