New Modules and core DocType customizations

I would like to get some help from developers about new apps and core module customization’s. Let’s say I am developing a complete new module for “Libraries” and I want keep this as a separate module so I can sell this to multiple customers. My module name is “Library Management”.

All, of the business functionality is implemented within the new module and new DocTypes are created too. However, I need some customization’s done to some of the core DocTypes such as Sales Invoice etc. Whenever, I want to install new module for my customers, I want to update the customization’s done to the core DocTypes as well.

Let’s say, In library module I have the ISBN recorded. Also, “Sales Invoice” need to have the ISBN as a reference too. How do I make sure these core module customization’s are migrated whenever, I install the new module?

Very Simple. You create a app and all modules you create should be limited to this app. And all new doctypes, reports, print formats, tools, pages must stay in your app’s modules.

Then you export the Customizations to doctypes via Fixtures. These fixtures are stored in your custom app. All the customizations, custom JS or python methods, reports, doctypes etc. stay in your app while ERPNext and Frappe remain untouched.

Some help on fixtures: Schema modification export (custom fields) - #2 by root13F

If you are well acquainted with ERPNext, I suggest you study Aditya Duggal’s Custom app provided here : rigpl-erpnext/rigpl_erpnext at master · adityaduggal/rigpl-erpnext · GitHub

1 Like

Thank you root13F!

1 Like