def set_address_details(out, party, party_type, doctype=None, company=None, party_address=None, shipping_address=None): billing_address_field = "customer_address" if party_type == "Lead" \ else party_type.lower() + "_address" out[billing_address_field] = party_address or get_default_address(party_type, party.name) if doctype: out.update(get_fetch_values(doctype, billing_address_field, out[billing_address_field])) # address display out.address_display = get_address_display(out[billing_address_field]) # shipping address if party_type in ["Customer", "Lead"]: out.shipping_address_name = shipping_address or get_party_shipping_address(party_type, party.name) out.shipping_address = get_address_display(out["shipping_address_name"]) if doctype: out.update(get_fetch_values(doctype, 'shipping_address_name', out.shipping_address_name)) if doctype and doctype in ['Delivery Note', 'Sales Invoice']: out.update(get_company_address(company)) if out.company_address: out.update(get_fetch_values(doctype, 'company_address', out.company_address)) get_regional_address_details(out, doctype, company) elif doctype and doctype == "Purchase Invoice": out.update(get_company_address(company)) if out.company_address: out["shipping_address"] = shipping_address or out["company_address"] out.shipping_address_display = get_address_display(out["shipping_address"]) out.update(get_fetch_values(doctype, 'shipping_address', out.shipping_address)) get_regional_address_details(out, doctype, company)
def set_invoice_missing_values(source, target): target.customer = _get_or_create_customer(source_name, bill_to) target.update( frappe.model.utils.get_fetch_values("Sales Invoice", "customer", target.customer)) target.customer_address = frappe.get_cached_value( "Booking Order", source_name, "{}_address".format(bill_to)) if target.customer_address: target.update( frappe.model.utils.get_fetch_values("Sales Invoice", "customer_address", target.customer_address)) target.taxes_and_charges = taxes_and_charges target.ignore_pricing_rule = 1 if posting_datetime: target.set_posting_time = 1 dt = frappe.utils.get_datetime(posting_datetime) target.posting_date = dt.date() target.posting_time = dt.time() target.run_method("set_missing_values") target.run_method("calculate_taxes_and_totals") target.update(get_company_address(target.company)) if target.company_address: target.update( frappe.model.utils.get_fetch_values("Sales Invoice", "company_address", target.company_address))
def set_missing_values(source, target): if source.po_no: if target.po_no: target_po_no = target.po_no.split(", ") target_po_no.append(source.po_no) target.po_no = ", ".join(list(set(target_po_no))) if len( target_po_no) > 1 else target_po_no[0] else: target.po_no = source.po_no # Since the credit limit check is bypassed at sales order level, # we need to check it at delivery note if cint( frappe.db.get_value( "Customer", source.customer, "bypass_credit_limit_check_at_sales_order")): check_credit_limit(source.customer, source.company) target.ignore_pricing_rule = 1 target.run_method("set_missing_values") target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update( get_fetch_values("Delivery Note", 'company_address', target.company_address))
def set_address_details(party_details, party, party_type, doctype=None, company=None, party_address=None, company_address=None, shipping_address=None): billing_address_field = "customer_address" if party_type == "Lead" \ else party_type.lower() + "_address" party_details[billing_address_field] = party_address or get_default_address(party_type, party.name) if doctype: party_details.update(get_fetch_values(doctype, billing_address_field, party_details[billing_address_field])) # address display party_details.address_display = get_address_display(party_details[billing_address_field]) # shipping address if party_type in ["Customer", "Lead"]: party_details.shipping_address_name = shipping_address or get_party_shipping_address(party_type, party.name) party_details.shipping_address = get_address_display(party_details["shipping_address_name"]) if doctype: party_details.update(get_fetch_values(doctype, 'shipping_address_name', party_details.shipping_address_name)) if company_address: party_details.update({'company_address': company_address}) else: party_details.update(get_company_address(company)) if doctype and doctype in ['Delivery Note', 'Sales Invoice', 'Sales Order']: if party_details.company_address: party_details.update(get_fetch_values(doctype, 'company_address', party_details.company_address)) get_regional_address_details(party_details, doctype, company) elif doctype and doctype in ["Purchase Invoice", "Purchase Order", "Purchase Receipt"]: if party_details.company_address: party_details["shipping_address"] = shipping_address or party_details["company_address"] party_details.shipping_address_display = get_address_display(party_details["shipping_address"]) party_details.update(get_fetch_values(doctype, 'shipping_address', party_details.shipping_address)) get_regional_address_details(party_details, doctype, company) return party_details.get(billing_address_field), party_details.shipping_address_name
def set_address_details(out, party, party_type, doctype=None, company=None): billing_address_field = "customer_address" if party_type == "Lead" \ else party_type.lower() + "_address" out[billing_address_field] = get_default_address(party_type, party.name) out.update( get_fetch_values(doctype, billing_address_field, out[billing_address_field])) # address display out.address_display = get_address_display(out[billing_address_field]) # shipping address if party_type in ["Customer", "Lead"]: out.shipping_address_name = get_default_address( party_type, party.name, 'is_shipping_address') out.shipping_address = get_address_display( out["shipping_address_name"]) out.update( get_fetch_values(doctype, 'shipping_address_name', out.shipping_address_name)) if doctype and doctype in ['Sales Invoice']: out.update(get_company_address(company)) if out.company_address: out.update( get_fetch_values(doctype, 'company_address', out.company_address))
def set_missing_values(source, target): target.ignore_pricing_rule = 1 target.run_method("set_missing_values") target.run_method("set_po_nos") target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update(get_fetch_values("Delivery Note", 'company_address', target.company_address))
def get_company_address_details(doc): """Return default company address details""" company_address = get_company_address(doc.company).company_address if not company_address: frappe.throw(_("Please set a default company address")) company_address = frappe.get_doc("Address", company_address) return company_address
def set_missing_values(source, target): target.is_pos = 0 target.ignore_pricing_rule = 1 target.flags.ignore_permissions = True target.run_method("set_missing_values") target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update(get_fetch_values("Sales Invoice", 'company_address', target.company_address))
def set_missing_values(source, target): target.run_method("set_missing_values") target.run_method("set_po_nos") target.run_method("calculate_taxes_and_totals") if source.company_address: target.update({"company_address": source.company_address}) else: # set company address target.update(get_company_address(target.company)) if target.company_address: target.update(get_fetch_values("Delivery Note", "company_address", target.company_address))
def get_shipping_address(doc): company_address = get_company_address( get_default_company()).company_address company_address = frappe.get_doc("Address", company_address) shipping_address = None if company_address: if doc.shipping_address_name: shipping_address = frappe.get_doc("Address", doc.shipping_address_name) else: shipping_address = company_address return shipping_address
def set_missing_values(source, target): target.is_pos = 0 target.ignore_pricing_rule = 1 target.run_method("set_missing_values") if len(target.get("items")) == 0: frappe.throw(_("All these items have already been invoiced")) target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update(get_fetch_values("Sales Invoice", 'company_address', target.company_address))
def get_shipping_address(doc): company = get_default_company() if not doc.company else doc.company company_address = get_company_address(company).company_address if not company_address: frappe.throw(_("Please set up your company's shipping address"), frappe.AuthenticationError) company_address = frappe.get_doc("Address", company_address) shipping_address = None if company_address: if doc.shipping_address_name: shipping_address = frappe.get_doc("Address", doc.shipping_address_name) else: shipping_address = company_address return shipping_address
def set_missing_values(source, target): target.is_pos = 0 target.ignore_pricing_rule = 1 target.flags.ignore_permissions = True target.run_method("set_missing_values") target.run_method("calculate_taxes_and_totals") # Since the credit limit check is bypassed at sales order level, we need to check it at sales invoice if cint(frappe.db.get_value("Customer", source.customer, "bypass_credit_limit_check_at_sales_order")): check_credit_limit(source.customer, source.company) # set company address target.update(get_company_address(target.company)) if target.company_address: target.update(get_fetch_values("Sales Invoice", 'company_address', target.company_address))
def set_missing_values(source, target): if (not source.allow_delivery and source.advance_paid < source.rounded_total): frappe.throw( _('Not allowed to create the Delivery Note before Payment')) target.ignore_pricing_rule = 1 target.run_method("set_missing_values") target.run_method("set_po_nos") target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update( get_fetch_values("Delivery Note", 'company_address', target.company_address))
def set_missing_values(source, target): target.is_pos = 0 target.ignore_pricing_rule = 1 target.flags.ignore_permissions = True target.run_method("set_missing_values") target.run_method("set_po_nos") target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update(get_fetch_values("Sales Invoice", 'company_address', target.company_address)) # set the redeem loyalty points if provided via shopping cart if source.loyalty_points and source.order_type == "Shopping Cart": target.redeem_loyalty_points = 1
def set_missing_values(source, target): if source.po_no: if target.po_no: target_po_no = target.po_no.split(", ") target_po_no.append(source.po_no) target.po_no = ", ".join(list(set(target_po_no))) if len(target_po_no) > 1 else target_po_no[0] else: target.po_no = source.po_no target.ignore_pricing_rule = 1 target.run_method("set_missing_values") target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update(get_fetch_values("Delivery Note", 'company_address', target.company_address))
def set_missing_values(source, target): so = [d.against_sales_order for d in target.items] if so: po_no_list = frappe.get_all('Sales Order', 'po_no', filters={'name': ('in', so)}) target.po_no = ', '.join(d.po_no for d in po_no_list if d.po_no) target.ignore_pricing_rule = 1 target.run_method("set_missing_values") target.run_method("calculate_taxes_and_totals") # set company address target.update(get_company_address(target.company)) if target.company_address: target.update( get_fetch_values("Delivery Note", 'company_address', target.company_address))
def get_shipper(delivery_note_name): shipper = RequestedShipment() delivery_note_company = frappe.db.get_value("Delivery Note", delivery_note_name, "company") if delivery_note_company: shipper.contact.PersonName = delivery_note_company shipper.contact.CompanyName = delivery_note_company company = frappe.db.get_values("Company", delivery_note_company, ["phone_no", "country"], as_dict=True) if company: shipper.contact.PhoneNumber = company[0].phone_no shipper.address.Country = company[0].country shipper.address.CountryCode = get_country_code( shipper.address.Country) shipper_address = None company_address = get_company_address( delivery_note_company).company_address if company_address: shipper_address = frappe.get_doc("Address", company_address) if shipper_address: shipper.address.StreetLines.append( shipper_address.address_line1) if shipper_address.address_line2: shipper.address.StreetLines.append( shipper_address.address_line2) shipper.address.City = shipper_address.city shipper.address.PostalCode = shipper_address.pincode shipper.address.StateOrProvinceCode = shipper_address.state return shipper
def set_missing_values(source, target): target.ignore_pricing_rule = 1 target.flags.ignore_permissions = True target.run_method("set_missing_values") target.run_method("set_po_nos") target.run_method("calculate_taxes_and_totals") if source.company_address: target.update({'company_address': source.company_address}) else: # set company address target.update(get_company_address(target.company)) if target.company_address: target.update( get_fetch_values("Sales Invoice", 'company_address', target.company_address)) # set print heading target.select_print_heading = frappe.db.get_single_value( 'ERPNext France Settings', 'deposit_print_heading')
def set_missing_values(source, target): target.run_method("set_missing_values") target.run_method("set_po_nos") if len(target.get("items")) == 0: frappe.throw( _("All these items have already been Invoiced/Returned")) target.run_method("calculate_taxes_and_totals") # set company address if source.company_address: target.update({"company_address": source.company_address}) else: # set company address target.update(get_company_address(target.company)) if target.company_address: target.update( get_fetch_values("Sales Invoice", "company_address", target.company_address))
def set_company_address(self): address = get_company_address(self.company) self.company_address = address.company_address self.company_address_display = address.company_address_display