[Improvement] Heatmap

Hi All

This topic is the continuation of Dashboard issue heatmap in v9.

Summary:

Several issues have been identified:

  • Heatmap shows only 6 days per week instead of 7
  • Heatmap shows no marks based on transaction

Several feature request have been identified:

  • Style of heatmap is fixed to “Continuous”, but it should be selectable between “Continuous” and “Discrete”
  • It should be possible to set whether the dashboard section is collapsed or not as default
  • In each doctype the marks are set based on different criteria. For e.g. in doctype “Customer”, the marks are based on the communication feed (timeline). This is a nonesense. The marks should be set based on all transactions, linked in the corresponding dashboard, against the corresponding doctype/record.

What has already been done?
I have created a pull request for frappe as well as erpnext, which fix all the above issues and implements all the above features (see screenshots). The feature “marks based on linked transactions against doctype/record”, is with this pull request only in doctype “Customer” implemented.

Pullrequests:
https://github.com/frappe/frappe/pull/5387
https://github.com/frappe/erpnext/pull/13537

What is needed by the community?
I need inputs from you like:

  • In which doctypes are heatmaps?
  • Is it enough if the records, linked in the dashboard, are used as the transaction base for the heatmap? Or are there any doctypes in which other values ​​should be considered for the heatmap?

Conclusion:
I would like to collect in this topic, together with you all, all needed requirements to the heatmap so that we can make a good pull request in the near future. The heatmap has not been working properly for too long and since it’s an eyecatcher for everyone, I’d like to finally clean up this construction!

Screenshots of the actually pull requests:
Customer heatmap:

Activity heatmap:

Global heatmap style setting and defult whether the dashboard section is collapsed as default or not in “Global Settings”:
grafik

Many thanks already to all of you!

Cheers
Joelios

7 Likes

Update on the current status:

  • Global settings feature request (done):

    • selection possibility in Global Settings of heatmap style (discrete or Continuous))
      PR: Frappe / ERPNext - Status: Pending / Pending
    • default possibility in Global Settings whether the dashboard section is collapsed or not
      PR: Frappe / ERPNext - Status: Pending / Pending
  • Heatmap feature request (for heatmap transaction based on linked records in dashboard) (done):

    • Customer - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      Sales Order, Delivery Note, Sales Invoice, Project, Issue, Opportunity, Quotation
    • Item - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      BOM, Product Bundle, Quotation, Sales Order, Delivery Note, Sales Invoice, Item Price, Pricing Rule, Material Request, Supplier Quotation, Request for Quotation, Purchase Order, Purchase Receipt, Purchase Invoice, Stock Entry, Serial No, Batch, Production Order
    • Company - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      Quotation, Sales Order, Delivery Note, Sales Invoice, Project, Issue
    • Supplier - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      Request for Quotation, Supplier Quotation, Purchase Order, Purchase Receipt, Purchase Invoice
    • Employee - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      Attendance, Leave Application, Leave Allocation, Training Event, Training Result, Appraisal, Salary Structure, Salary Slip, Timesheet, Expense Claim
    • Project - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      Timesheets, Tasks, Expense Claim, Issue, Sales Order, Delivery Note, Sales Invoice, BOM, Stock Entry
    • Member - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      Membership
    • Student - PR: Frappe / ERPNext - Status: Pending / Pending
      heatmap includes:
      Attendance, Program Enrollment, Assessment Result, Fees, Student Log, Student Leave Application
4 Likes

Maybe unrelated here but there should be a setting somewhere to globally collapse heat maps instead of the default expanded view, possibly a user preference or system setting

1 Like

Hi @Pawan

Good input, i can put this feature in the existing pull request if you want. I’ve checked it quickly, it should be very easy…

It would be great if you could do so :slight_smile:

Hi @Pawan

i have implemented your feature request in the actuall pull requests (Frappe and ERPNext).
Now you can choose in “Global Settings” whether the dashboard is per default collapsed or not.
grafik

cheers :slight_smile:

1 Like

@rmehta and Community

I have completed all scheduled tasks.
The following was planned:

Bug fixing:

  • Heatmap shows only 6 days per week instead of 7
  • Heatmap shows no marks based on transaction
    • Both fixed:
      grafik

Implement feature requests:

  • Style of heatmap is fixed to “Continuous”, but it should be selectable between “Continuous” and “Discrete”
  • It should be possible to set whether the dashboard section is collapsed or not as default
    • Setting possability in “Global Settings”:
      grafik
  • In each doctype the marks are set based on different criteria. For e.g. in doctype “Customer”, the marks are based on the communication feed (timeline). This is a nonesense. The marks should be set based on all transactions, linked in the corresponding dashboard, against the corresponding doctype/record.
    The heatmap now shows all transactions against the doctype-record as follows:
    • Customer:
      Sales Order, Delivery Note, Sales Invoice, Project, Issue, Opportunity, Quotation
    • Item:
      BOM, Product Bundle, Quotation, Sales Order, Delivery Note, Sales Invoice, Item Price, Pricing Rule, Material Request, Supplier Quotation, Request for Quotation, Purchase Order, Purchase Receipt, Purchase Invoice, Stock Entry, Serial No, Batch, Production Order
    • Company:
      Quotation, Sales Order, Delivery Note, Sales Invoice, Project, Issue
    • Supplier:
      Request for Quotation, Supplier Quotation, Purchase Order, Purchase Receipt, Purchase Invoice
    • Employee:
      Attendance, Leave Application, Leave Allocation, Training Event, Training Result, Appraisal, Salary Structure, Salary Slip, Timesheet, Expense Claim
    • Project:
      Timesheets, Tasks, Expense Claim, Issue, Sales Order, Delivery Note, Sales Invoice, BOM, Stock Entry
    • Member:
      Membership
    • Student:
      Attendance, Program Enrollment, Assessment Result, Fees, Student Log, Student Leave Application

For all bug fixes and feature implementations I created the following pull requests on github:

I can not influence more at the moment. @rmehta could you please make sure that these pull requests are merged into the master? That would be great! :slight_smile:

Important notices:
Both pull requests must be merged so that all features can be fully utilized.

Thanks & cheers!
Joelios

4 Likes

Good Job

1 Like

Too bad that the pull requests were not merged yet. Hope this happens soon …

3 Likes

@joelios Any chance that you can make those Pull Requests again? If you want, I can help you out with reviewing it so that it gets merged. I think the discrete option should be back. And also, the heatmaps currently don’t work properly.

1 Like