I created an App, and I want to modify ERPNext’s fields of doctypes after installing the App. So how to add or remove field in codes?
You have directly remove fields from Customise Form by using hide option and also add from their by using Add new row.
Go to Customise Form-> select perticular doctype , open field hide option will be their.
yeah, I know how to operate on that, I wanna know how to code…
OK I found this works.
def add_field(*, doctype, field_label, field_name, field_type, options=None, default=None): dt = frappe.get_doc('DocType', doctype) df = frappe.new_doc('DocField') df.label = field_label df.fieldname = field_name df.fieldtype = field_type df.parent = doctype df.parentfield = 'fields' df.parenttype = 'DocType' df.parent_doc = dt if options: df.options = options if default: df.default = default df.save() df.submit() dt.on_update() frappe.db.commit()
even though I dont know if it’s the right way to do that.
@nnylyj always add Custom Field instead of DocField, unless they are permanent.
Where should I place this code?
What do you mean? You already created your doctype?
1)create doctype in your application,
2) Find the doctype/<your_doctypes_name>/<your_doctypes_name>.json file and after that you understood, that you should do
If it will be so hard for you you can also use UI for creating custom fields:
If you already use existable doctype you should find this doctype there and press on Menu >`Customize’> After that you will understand, that you should do
Yeah, I want to add field to erpnext existing form like Stock > Item form through code.
Maybe you do not understand my question.
@nnylyj, You can refer below link