How to display a new module on the dashboard (desk) screen

Hi,

I’ve created a new DocType called “Contacts”.
While creating the new DocType it asked me to select an existing Module or create a new Module.
I created a new Module called “Contact Management”.
While creating the new Module it asked me to enter app-name which I put it as “contacts-application”

Now, I want to be able to add this newly created module (Contact Management) to be shown on the dashboard like other default modules (HR, Sales, etc.). I’ve tried everything on this forum in my efforts to resolve this issue but I am unable to find a fix. Below are the things that I’ve already tried.

  1. Changed the View Settings of the DocType to select an option from the “Show in module section” drop-down. Also added details in the fields like “Title Field”, “Icon”, “Search Fields”, etc.
  2. Changed the Permission Rules for the DocType.
  3. Added desktop.py and module_name.py files in /erpnext/erpnext/config/ directory
  4. Changed the environment from production to development mode and repeated above steps
  5. Changed user permissions to include the module
  6. Checked the show / hide cards option on the dashboard (module name is missing from this list)
  7. Created new domain and enabled it from domain settings. Restricted the DocType to that particular domain.

After trying all of the above, I am still not able to get the module to display on the dashboard.

Points to note:

  1. The DocType and Module that I created are showing in the top search bar and also in the DocType list and Module Def List
  2. If I add the DocType in any of the default available Module like HR, Sales, etc. then its showing correctly under that particular module when I click on it from the dashboard

If anybody here could help me out to resolve this issue it’d be really great. Please send me a detailed step-by-step instructions to resolve it so that there is no confusion from my end in implementing the possible solution.

Thanks.
Shashank

var contacts_icon = {
    			module_name: 'Contacts',
    			label: 'Contacts',
    			_label: __('Contacts'),
    			_id: 'Contacts',
    			_doctype: '',
    			icon: 'octicon octicon-megaphone',
    			color: '#7578f6',
    			link: 'modules/Contacts'
    		};

contacts_icon.app_icon=frappe.ui.app_icon.get_html(contacts_icon);
all_icons.push(contacts_icon);

Add this code Snippet into desktop.py file

Hi,

Thanks for your reply @ROHAN_JAIN1

I’ve already managed to get this to work. I had a lot of confusion initially related to the core terms of ERPNext and Frappe like Sites, Apps, Modules, Apps, DocTypes, etc. but I have got it all figured out now with many days of trial and error.

Nevertheless, once again thanks for your reply :grinning:

1 Like

Hi.

How did you make it work?

Clement

Hello

Even I need to display my module on desk in frappe V12, how did you achieve it?

1 Like

I got the solution. just make app_name.py file in config folder. and return object. You can refer such file of ny erpnext module and check the format.