mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-27 17:04:47 +00:00
random time fix and other minor fixes
This commit is contained in:
@@ -56,7 +56,7 @@ def work():
|
|||||||
if random.random() < 0.5:
|
if random.random() < 0.5:
|
||||||
make_payment_entries("Purchase Invoice", "Accounts Payable")
|
make_payment_entries("Purchase Invoice", "Accounts Payable")
|
||||||
|
|
||||||
if random.random() < 0.1:
|
if random.random() < 0.4:
|
||||||
#make payment request against sales invoice
|
#make payment request against sales invoice
|
||||||
sales_invoice_name = get_random("Sales Invoice", filters={"docstatus": 1})
|
sales_invoice_name = get_random("Sales Invoice", filters={"docstatus": 1})
|
||||||
if sales_invoice_name:
|
if sales_invoice_name:
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import frappe
|
import frappe, erpnext
|
||||||
from frappe.utils import flt
|
from frappe.utils import flt
|
||||||
from frappe.utils.make_random import get_random
|
from frappe.utils.make_random import get_random
|
||||||
from erpnext.projects.doctype.timesheet.test_timesheet import make_timesheet
|
from erpnext.projects.doctype.timesheet.test_timesheet import make_timesheet
|
||||||
@@ -19,7 +19,7 @@ def run_projects(current_date):
|
|||||||
def make_timesheet_for_projects(current_date ):
|
def make_timesheet_for_projects(current_date ):
|
||||||
for data in frappe.get_all("Task", ["name", "project"], {"status": "Open", "exp_end_date": ("<", current_date)}):
|
for data in frappe.get_all("Task", ["name", "project"], {"status": "Open", "exp_end_date": ("<", current_date)}):
|
||||||
employee = get_random("Employee")
|
employee = get_random("Employee")
|
||||||
ts = make_timesheet(employee, simulate = True, billable = 1,
|
ts = make_timesheet(employee, simulate = True, billable = 1, company = erpnext.get_default_company(),
|
||||||
activity_type=get_random("Activity Type"), project=data.project, task =data.name)
|
activity_type=get_random("Activity Type"), project=data.project, task =data.name)
|
||||||
|
|
||||||
if flt(ts.total_billable_amount) > 0.0:
|
if flt(ts.total_billable_amount) > 0.0:
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import frappe, random
|
import frappe, random, json
|
||||||
from frappe.utils.make_random import how_many, get_random
|
from frappe.utils.make_random import how_many, get_random
|
||||||
from frappe.desk import query_report
|
from frappe.desk import query_report
|
||||||
from erpnext.setup.utils import get_exchange_rate
|
from erpnext.setup.utils import get_exchange_rate
|
||||||
@@ -16,14 +16,14 @@ from erpnext.buying.doctype.request_for_quotation.request_for_quotation import \
|
|||||||
def work():
|
def work():
|
||||||
frappe.set_user(frappe.db.get_global('demo_purchase_user'))
|
frappe.set_user(frappe.db.get_global('demo_purchase_user'))
|
||||||
|
|
||||||
if random.random() < 0.3:
|
if random.random() < 0.6:
|
||||||
report = "Items To Be Requested"
|
report = "Items To Be Requested"
|
||||||
for row in query_report.run(report)["result"][:random.randint(1, 5)]:
|
for row in query_report.run(report)["result"][:random.randint(1, 5)]:
|
||||||
item_code, qty = row[0], abs(row[-1])
|
item_code, qty = row[0], abs(row[-1])
|
||||||
|
|
||||||
mr = make_material_request(item_code, qty)
|
mr = make_material_request(item_code, qty)
|
||||||
|
|
||||||
if random.random() < 0.3:
|
if random.random() < 0.6:
|
||||||
for mr in frappe.get_all('Material Request',
|
for mr in frappe.get_all('Material Request',
|
||||||
filters={'material_request_type': 'Purchase', 'status': 'Open'},
|
filters={'material_request_type': 'Purchase', 'status': 'Open'},
|
||||||
limit=random.randint(1,6)):
|
limit=random.randint(1,6)):
|
||||||
@@ -36,7 +36,7 @@ def work():
|
|||||||
rfq.submit()
|
rfq.submit()
|
||||||
|
|
||||||
# Make suppier quotation from RFQ against each supplier.
|
# Make suppier quotation from RFQ against each supplier.
|
||||||
if random.random() < 0.3:
|
if random.random() < 0.6:
|
||||||
for rfq in frappe.get_all('Request for Quotation',
|
for rfq in frappe.get_all('Request for Quotation',
|
||||||
filters={'status': 'Open'}, limit=random.randint(1, 6)):
|
filters={'status': 'Open'}, limit=random.randint(1, 6)):
|
||||||
if not frappe.get_all('Supplier Quotation',
|
if not frappe.get_all('Supplier Quotation',
|
||||||
@@ -59,7 +59,7 @@ def work():
|
|||||||
exchange_rate = get_exchange_rate(party_account_currency, company_currency, args="for_buying")
|
exchange_rate = get_exchange_rate(party_account_currency, company_currency, args="for_buying")
|
||||||
|
|
||||||
# make supplier quotations
|
# make supplier quotations
|
||||||
if random.random() < 0.2:
|
if random.random() < 0.5:
|
||||||
from erpnext.stock.doctype.material_request.material_request import make_supplier_quotation
|
from erpnext.stock.doctype.material_request.material_request import make_supplier_quotation
|
||||||
|
|
||||||
report = "Material Requests for which Supplier Quotations are not created"
|
report = "Material Requests for which Supplier Quotations are not created"
|
||||||
@@ -89,7 +89,7 @@ def work():
|
|||||||
po.submit()
|
po.submit()
|
||||||
frappe.db.commit()
|
frappe.db.commit()
|
||||||
|
|
||||||
if random.random() < 0.2:
|
if random.random() < 0.5:
|
||||||
make_subcontract()
|
make_subcontract()
|
||||||
|
|
||||||
def make_material_request(item_code, qty):
|
def make_material_request(item_code, qty):
|
||||||
@@ -129,6 +129,7 @@ def make_subcontract():
|
|||||||
po = frappe.new_doc("Purchase Order")
|
po = frappe.new_doc("Purchase Order")
|
||||||
po.is_subcontracted = "Yes"
|
po.is_subcontracted = "Yes"
|
||||||
po.supplier = get_random("Supplier")
|
po.supplier = get_random("Supplier")
|
||||||
|
po.transaction_date = frappe.flags.current_date # added
|
||||||
po.schedule_date = frappe.utils.add_days(frappe.flags.current_date, 7)
|
po.schedule_date = frappe.utils.add_days(frappe.flags.current_date, 7)
|
||||||
|
|
||||||
item_code = get_random("Item", {"is_sub_contracted_item": 1})
|
item_code = get_random("Item", {"is_sub_contracted_item": 1})
|
||||||
@@ -150,7 +151,7 @@ def make_subcontract():
|
|||||||
make_material_request(po.items[0].item_code, po.items[0].qty)
|
make_material_request(po.items[0].item_code, po.items[0].qty)
|
||||||
|
|
||||||
# transfer material for sub-contract
|
# transfer material for sub-contract
|
||||||
stock_entry = frappe.get_doc(make_rm_stock_entry(po.name, po.items[0].item_code))
|
stock_entry = frappe.get_doc(make_rm_stock_entry(po.name, frappe.as_json(po.items)))
|
||||||
stock_entry.from_warehouse = "Stores - WPL"
|
stock_entry.from_warehouse = "Stores - WPL"
|
||||||
stock_entry.to_warehouse = "Supplier - WPL"
|
stock_entry.to_warehouse = "Supplier - WPL"
|
||||||
stock_entry.insert()
|
stock_entry.insert()
|
||||||
|
|||||||
@@ -12,12 +12,13 @@ from erpnext.accounts.doctype.payment_request.payment_request import make_paymen
|
|||||||
|
|
||||||
def work():
|
def work():
|
||||||
frappe.set_user(frappe.db.get_global('demo_sales_user_2'))
|
frappe.set_user(frappe.db.get_global('demo_sales_user_2'))
|
||||||
if random.random() < 0.5:
|
|
||||||
for i in range(random.randint(1,7)):
|
for i in range(random.randint(1,7)):
|
||||||
|
if random.random() < 0.5:
|
||||||
make_opportunity()
|
make_opportunity()
|
||||||
|
|
||||||
if random.random() < 0.5:
|
for i in range(random.randint(1,3)):
|
||||||
for i in range(random.randint(1,3)):
|
if random.random() < 0.5:
|
||||||
make_quotation()
|
make_quotation()
|
||||||
|
|
||||||
# lost quotations / inquiries
|
# lost quotations / inquiries
|
||||||
@@ -32,11 +33,11 @@ def work():
|
|||||||
if opportunity and opportunity.status in ('Open', 'Replied'):
|
if opportunity and opportunity.status in ('Open', 'Replied'):
|
||||||
opportunity.declare_enquiry_lost('Did not ask')
|
opportunity.declare_enquiry_lost('Did not ask')
|
||||||
|
|
||||||
if random.random() < 0.3:
|
for i in range(random.randint(1,3)):
|
||||||
for i in range(random.randint(1,3)):
|
if random.random() < 0.3:
|
||||||
make_sales_order()
|
make_sales_order()
|
||||||
|
|
||||||
if random.random() < 0.1:
|
if random.random() < 0.5:
|
||||||
#make payment request against Sales Order
|
#make payment request against Sales Order
|
||||||
sales_order_name = get_random("Sales Order", filters={"docstatus": 1})
|
sales_order_name = get_random("Sales Order", filters={"docstatus": 1})
|
||||||
if sales_order_name:
|
if sales_order_name:
|
||||||
@@ -115,8 +116,8 @@ def make_quotation():
|
|||||||
def make_sales_order():
|
def make_sales_order():
|
||||||
q = get_random("Quotation", {"status": "Submitted"})
|
q = get_random("Quotation", {"status": "Submitted"})
|
||||||
if q:
|
if q:
|
||||||
from erpnext.selling.doctype.quotation.quotation import make_sales_order
|
from erpnext.selling.doctype.quotation.quotation import make_sales_order as mso
|
||||||
so = frappe.get_doc(make_sales_order(q))
|
so = frappe.get_doc(mso(q))
|
||||||
so.transaction_date = frappe.flags.current_date
|
so.transaction_date = frappe.flags.current_date
|
||||||
so.delivery_date = frappe.utils.add_days(frappe.flags.current_date, 10)
|
so.delivery_date = frappe.utils.add_days(frappe.flags.current_date, 10)
|
||||||
so.insert()
|
so.insert()
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
from __future__ import print_function, unicode_literals
|
from __future__ import print_function, unicode_literals
|
||||||
|
|
||||||
import frappe, random
|
import frappe, random, erpnext
|
||||||
from frappe.desk import query_report
|
from frappe.desk import query_report
|
||||||
from erpnext.stock.stock_ledger import NegativeStockError
|
from erpnext.stock.stock_ledger import NegativeStockError
|
||||||
from erpnext.stock.doctype.serial_no.serial_no import SerialNoRequiredError, SerialNoQtyError
|
from erpnext.stock.doctype.serial_no.serial_no import SerialNoRequiredError, SerialNoQtyError
|
||||||
@@ -45,7 +45,7 @@ def make_delivery_note():
|
|||||||
# make purchase requests
|
# make purchase requests
|
||||||
|
|
||||||
# make delivery notes (if possible)
|
# make delivery notes (if possible)
|
||||||
if random.random() < 0.3:
|
if random.random() < 0.6:
|
||||||
from erpnext.selling.doctype.sales_order.sales_order import make_delivery_note
|
from erpnext.selling.doctype.sales_order.sales_order import make_delivery_note
|
||||||
report = "Ordered Items To Be Delivered"
|
report = "Ordered Items To Be Delivered"
|
||||||
for so in list(set([r[0] for r in query_report.run(report)["result"]
|
for so in list(set([r[0] for r in query_report.run(report)["result"]
|
||||||
@@ -68,9 +68,10 @@ def make_stock_reconciliation():
|
|||||||
from erpnext.stock.doctype.stock_reconciliation.stock_reconciliation \
|
from erpnext.stock.doctype.stock_reconciliation.stock_reconciliation \
|
||||||
import OpeningEntryAccountError, EmptyStockReconciliationItemsError
|
import OpeningEntryAccountError, EmptyStockReconciliationItemsError
|
||||||
|
|
||||||
if random.random() < 0.1:
|
if random.random() < 0.4:
|
||||||
stock_reco = frappe.new_doc("Stock Reconciliation")
|
stock_reco = frappe.new_doc("Stock Reconciliation")
|
||||||
stock_reco.posting_date = frappe.flags.current_date
|
stock_reco.posting_date = frappe.flags.current_date
|
||||||
|
stock_reco.company = erpnext.get_default_company()
|
||||||
stock_reco.get_items_for("Stores - WP")
|
stock_reco.get_items_for("Stores - WP")
|
||||||
if stock_reco.items:
|
if stock_reco.items:
|
||||||
for item in stock_reco.items:
|
for item in stock_reco.items:
|
||||||
@@ -87,7 +88,7 @@ def make_stock_reconciliation():
|
|||||||
|
|
||||||
def submit_draft_stock_entries():
|
def submit_draft_stock_entries():
|
||||||
from erpnext.stock.doctype.stock_entry.stock_entry import IncorrectValuationRateError, \
|
from erpnext.stock.doctype.stock_entry.stock_entry import IncorrectValuationRateError, \
|
||||||
DuplicateEntryForProductionOrderError, OperationsNotCompleteError
|
DuplicateEntryForWorkOrderError, OperationsNotCompleteError
|
||||||
|
|
||||||
# try posting older drafts (if exists)
|
# try posting older drafts (if exists)
|
||||||
frappe.db.commit()
|
frappe.db.commit()
|
||||||
@@ -98,7 +99,7 @@ def submit_draft_stock_entries():
|
|||||||
ste.save()
|
ste.save()
|
||||||
ste.submit()
|
ste.submit()
|
||||||
frappe.db.commit()
|
frappe.db.commit()
|
||||||
except (NegativeStockError, IncorrectValuationRateError, DuplicateEntryForProductionOrderError,
|
except (NegativeStockError, IncorrectValuationRateError, DuplicateEntryForWorkOrderError,
|
||||||
OperationsNotCompleteError):
|
OperationsNotCompleteError):
|
||||||
frappe.db.rollback()
|
frappe.db.rollback()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user