fix: Remove patch for setting next date in Subscription (#24158)
This commit is contained in:
parent
23d6afe43a
commit
21168eab7f
@ -450,7 +450,6 @@ erpnext.patches.v8_9.set_member_party_type
|
||||
erpnext.patches.v9_0.add_user_to_child_table_in_pos_profile
|
||||
erpnext.patches.v9_0.set_schedule_date_for_material_request_and_purchase_order
|
||||
erpnext.patches.v9_0.student_admission_childtable_migrate
|
||||
erpnext.patches.v9_0.fix_subscription_next_date #2017-10-23
|
||||
erpnext.patches.v9_0.add_healthcare_domain
|
||||
erpnext.patches.v9_0.set_variant_item_description
|
||||
erpnext.patches.v9_0.set_uoms_in_variant_field
|
||||
|
@ -1,48 +0,0 @@
|
||||
# Copyright (c) 2017, Frappe and Contributors
|
||||
# License: GNU General Public License v3. See license.txt
|
||||
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.utils import getdate
|
||||
from frappe.automation.doctype.auto_repeat.auto_repeat import get_next_schedule_date
|
||||
|
||||
def execute():
|
||||
frappe.reload_doc('accounts', 'doctype', 'subscription')
|
||||
fields = ["name", "reference_doctype", "reference_document",
|
||||
"start_date", "frequency", "repeat_on_day"]
|
||||
|
||||
for d in fields:
|
||||
if not frappe.db.has_column('Subscription', d):
|
||||
return
|
||||
|
||||
doctypes = ('Purchase Order', 'Sales Order', 'Purchase Invoice', 'Sales Invoice')
|
||||
for data in frappe.get_all('Subscription',
|
||||
fields = fields,
|
||||
filters = {'reference_doctype': ('in', doctypes), 'docstatus': 1}):
|
||||
|
||||
recurring_id = frappe.db.get_value(data.reference_doctype, data.reference_document, "recurring_id")
|
||||
if recurring_id:
|
||||
frappe.db.sql("update `tab{0}` set subscription=%s where recurring_id=%s"
|
||||
.format(data.reference_doctype), (data.name, recurring_id))
|
||||
|
||||
date_field = 'transaction_date'
|
||||
if data.reference_doctype in ['Sales Invoice', 'Purchase Invoice']:
|
||||
date_field = 'posting_date'
|
||||
|
||||
start_date = frappe.db.get_value(data.reference_doctype, data.reference_document, date_field)
|
||||
|
||||
if start_date and getdate(start_date) != getdate(data.start_date):
|
||||
last_ref_date = frappe.db.sql("""
|
||||
select {0}
|
||||
from `tab{1}`
|
||||
where subscription=%s and docstatus < 2
|
||||
order by creation desc
|
||||
limit 1
|
||||
""".format(date_field, data.reference_doctype), data.name)[0][0]
|
||||
|
||||
next_schedule_date = get_next_schedule_date(last_ref_date, data.frequency, data.repeat_on_day)
|
||||
|
||||
frappe.db.set_value("Subscription", data.name, {
|
||||
"start_date": start_date,
|
||||
"next_schedule_date": next_schedule_date
|
||||
}, None)
|
Loading…
x
Reference in New Issue
Block a user