Merge pull request #29175 from rtdany10/patch-14
fix: seperate custom field creation for KSA
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index fe62050..0b56d35 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -313,7 +313,7 @@
erpnext.patches.v13_0.update_category_in_ltds_certificate
erpnext.patches.v13_0.create_pan_field_for_india #2
erpnext.patches.v14_0.delete_hub_doctypes
-erpnext.patches.v13_0.create_ksa_vat_custom_fields
+erpnext.patches.v13_0.create_ksa_vat_custom_fields # 07-01-2022
erpnext.patches.v14_0.rename_ongoing_status_in_sla_documents
erpnext.patches.v14_0.migrate_crm_settings
erpnext.patches.v13_0.rename_ksa_qr_field
diff --git a/erpnext/regional/saudi_arabia/setup.py b/erpnext/regional/saudi_arabia/setup.py
index 2e31c03..15d524d 100644
--- a/erpnext/regional/saudi_arabia/setup.py
+++ b/erpnext/regional/saudi_arabia/setup.py
@@ -3,12 +3,10 @@
import frappe
from frappe.permissions import add_permission, update_permission_property
-from erpnext.regional.united_arab_emirates.setup import make_custom_fields as uae_custom_fields
from erpnext.regional.saudi_arabia.wizard.operations.setup_ksa_vat_setting import create_ksa_vat_setting
from frappe.custom.doctype.custom_field.custom_field import create_custom_fields
def setup(company=None, patch=True):
- uae_custom_fields()
add_print_formats()
add_permissions()
make_custom_fields()
@@ -40,38 +38,67 @@
- Company Name in Arabic
- Address in Arabic
"""
+ is_zero_rated = dict(fieldname='is_zero_rated', label='Is Zero Rated',
+ fieldtype='Check', fetch_from='item_code.is_zero_rated', insert_after='description',
+ print_hide=1)
+
+ is_exempt = dict(fieldname='is_exempt', label='Is Exempt',
+ fieldtype='Check', fetch_from='item_code.is_exempt', insert_after='is_zero_rated',
+ print_hide=1)
+
+ purchase_invoice_fields = [
+ dict(fieldname='company_trn', label='Company TRN',
+ fieldtype='Read Only', insert_after='shipping_address',
+ fetch_from='company.tax_id', print_hide=1),
+ dict(fieldname='supplier_name_in_arabic', label='Supplier Name in Arabic',
+ fieldtype='Read Only', insert_after='supplier_name',
+ fetch_from='supplier.supplier_name_in_arabic', print_hide=1)
+ ]
+
+ sales_invoice_fields = [
+ dict(fieldname='company_trn', label='Company TRN',
+ fieldtype='Read Only', insert_after='company_address',
+ fetch_from='company.tax_id', print_hide=1),
+ dict(fieldname='customer_name_in_arabic', label='Customer Name in Arabic',
+ fieldtype='Read Only', insert_after='customer_name',
+ fetch_from='customer.customer_name_in_arabic', print_hide=1),
+ dict(fieldname='ksa_einv_qr', label='KSA E-Invoicing QR',
+ fieldtype='Attach Image', read_only=1, no_copy=1, hidden=1)
+ ]
+
custom_fields = {
- 'Sales Invoice': [
- dict(
- fieldname='ksa_einv_qr',
- label='KSA E-Invoicing QR',
- fieldtype='Attach Image',
- read_only=1, no_copy=1, hidden=1
- )
+ 'Item': [is_zero_rated, is_exempt],
+ 'Customer': [
+ dict(fieldname='customer_name_in_arabic', label='Customer Name in Arabic',
+ fieldtype='Data', insert_after='customer_name'),
],
- 'POS Invoice': [
- dict(
- fieldname='ksa_einv_qr',
- label='KSA E-Invoicing QR',
- fieldtype='Attach Image',
- read_only=1, no_copy=1, hidden=1
- )
+ 'Supplier': [
+ dict(fieldname='supplier_name_in_arabic', label='Supplier Name in Arabic',
+ fieldtype='Data', insert_after='supplier_name'),
],
+ 'Purchase Invoice': purchase_invoice_fields,
+ 'Purchase Order': purchase_invoice_fields,
+ 'Purchase Receipt': purchase_invoice_fields,
+ 'Sales Invoice': sales_invoice_fields,
+ 'POS Invoice': sales_invoice_fields,
+ 'Sales Order': sales_invoice_fields,
+ 'Delivery Note': sales_invoice_fields,
+ 'Sales Invoice Item': [is_zero_rated, is_exempt],
+ 'POS Invoice Item': [is_zero_rated, is_exempt],
+ 'Purchase Invoice Item': [is_zero_rated, is_exempt],
+ 'Sales Order Item': [is_zero_rated, is_exempt],
+ 'Delivery Note Item': [is_zero_rated, is_exempt],
+ 'Quotation Item': [is_zero_rated, is_exempt],
+ 'Purchase Order Item': [is_zero_rated, is_exempt],
+ 'Purchase Receipt Item': [is_zero_rated, is_exempt],
+ 'Supplier Quotation Item': [is_zero_rated, is_exempt],
'Address': [
- dict(
- fieldname='address_in_arabic',
- label='Address in Arabic',
- fieldtype='Data',
- insert_after='address_line2'
- )
+ dict(fieldname='address_in_arabic', label='Address in Arabic',
+ fieldtype='Data',insert_after='address_line2')
],
'Company': [
- dict(
- fieldname='company_name_in_arabic',
- label='Company Name In Arabic',
- fieldtype='Data',
- insert_after='company_name'
- )
+ dict(fieldname='company_name_in_arabic', label='Company Name In Arabic',
+ fieldtype='Data', insert_after='company_name')
]
}