Frappe Technologies
Screenshot 2023-10-25 at 10.48.41 PM.png
Product Updates for March 2025
Preparation for Frappe Build
author

By

Jannat Patel

·

28 March 2025

·

8

min read

In the first week of April, we are hosting the second edition of Frappe Build. We started with Frappe Build last year with the intent of having a knowledge-sharing space for all engineers in our ecosystem. This time, it’s at the Koramangala Club, Bangalore.

So naturally, most of our devs were busy preparing for the conference and their respective talks. This involved deciding a topic, practicing the flow, and giving multiple rounds of mocks.

The rest of the days, here is what the team did …


Table of Content

  1. ERPNext
  2. Frappe HR
  3. Learning
  4. Insights
  5. CRM
  6. Drive
  7. Helpdesk

Improvements

  • The Account Ledger repost tool can handle Purchase Receipt now. Contributed by Lakshit Jain
  • A New flag "Hide timesheets" now controls the visibility of Timesheets in Portal View. Contributed by Marc Ramser

Bug Fixes

  • Minor Discrepancy in Debit-Credit on Transaction Currency: There are some supplementary fields in General Ledger called 'Debit in Transaction Currency' and 'Credit in Transaction Currency'. On Forex transactions with high precision exchange rates, a 0.01 difference was posted in the General Ledger. This has been addressed.
  • Incorrect UAE VAT 201 Report: Tax reports should report values in company currency. However, for forex transactions, UAE VAT 201 was incorrectly using transaction currency values. This has been addressed.
  • Bug in Offset Accounting: Offset Accounting - which allows for a balanced view of General Ledger and Trial Balance, when filtering on Accounting Dimension, had a bug. When Offsetting is enabled for a dimension, the system doesn't allow a forex transaction to be made with that dimension. This was caused by an incorrect account_currency value in one of the offsetting GL entry which caused a ValidationError. This is fixed now.
  • Better Data handling: 'Transaction Deletion Record' - a tool used to delete all transaction data (Invoice, Payments, Order, ...), was crashing if some doctypes have special characters in their name. Contributed By: Venkatesh
  • Stale User Permission: 'Create User Permission' in Employee master auto creates a 'User Permission' entry to restrict the employee’s access to his records. But, upon disabling, 'User Permission' was left behind, making it stale. Now, they will be auto-removed. Contributed By: Patrick Eißler
  • Malfunctioning Bypass flag: Credit Limit has a bypass flag for "Sales Order". This flag wasn't working on Journal Entries. Fixed now. Contributed By: Lakshit Jain

Performance

  • Bank Reconciliation tool can now reconcile vouchers in the background. Contributed By: Bhavansathru
Ruthra Kumar Engineer

Settle Leave Encashment via Payment Entry

Leave Encashment payment was always handled by creating an Additional Salary on submission, which was later paid through the Salary Slip. This was not ideal for companies that either do not use the Payroll Module or prefer to handle encashment payments separately from salary payouts.

  • Now there is an option to process Leave Encashment via a Payment Entry instead of a Salary Slip.
  • A status field has been introduced to track payment status.
  • Update payable leave encashment doc handling in the full and final statement
  • Add Status and Pay via Payment Entry filters to Leave Encashment payables in Full and Final Statement.
  • Payment status now updates when paid via Payment Entry or Salary Slip or settled through Full and Final Statement.

Fixes in Payroll

  • If the salary component through which Leave Encashment is to be paid already exists in the employee’s assigned salary structure, prevent overwriting it with the encashment amount.
  • When assigning a salary structure with opening balances, those balances should only apply to the first payroll period in which the assignment is effective. Now, opening taxable earnings and deductions are excluded from tax calculations if the salary structure's from_date is before the payroll period start date, ensuring accurate payroll processing.
  • In the Income tax Computation Report, the "Applicable Tax" column included both slab-based tax and additional charges combined. Now, these amounts are displayed in separate columns to help users clearly distinguish base tax liability from additional taxes and charges, and the sum is displayed in the Total Applicable Tax Column.
Aysha Engineer

Fixes in HR

  • Get an option to expire carry-forwarded leaves immediately before the next policy assignment. #2890
  • Improved attendance warning when submitting an attendance request. #2848
  • Allow setting shift location coordinates through employee check-in API. #2900
Asmita Hase Engineer

Onboarding Flow for Admins

We have made it easier for Admins to get started with the Frappe Learning app. Admins of newly created sites will see a guided onboarding flow that walks them through setting up their learning system step by step. This includes: - Creating their first course with chapters and lessons - Setting up their first batch - Inviting team members and students to the system

We now also show help articles in-app that redirects them to the relevant documentation pages. These help articles can be accessed even after the onboarding is complete. So in case Admins get stuck in the middle of the course creation process they can quickly refer to these articles and continue creating their courses without much interruption.

Optimized Course List

Some improvements have been made to enhance the performance of the course list page. Previously, all courses were fetched at once, leading to longer load times. Now, the system only retrieves courses from your selected category, making page loads much faster.

Filter Courses by Certification

Sometimes students are looking for courses that offer certification. A new certification filter has now been added to the course list to make this search easier. With this students can quickly filter out courses that provide ...

  • Certificates of completion
  • Certificates after evaluation

SCORM Compatibility for 360 Learning packages

Many users faced issues when trying to use SCORM packages generated from 360 Learning due to path errors. These packages contained relative paths that weren’t being read correctly. This issue has now been fixed, ensuring that SCORM content from 360 Learning loads smoothly.

Jannat Patel Product Engineer

Datatable for queries

Created a new QueryDataTable wrapper component to integrate DataTable with useQuery. This standardized UI-based query operations like renaming columns, quick filtering, sorting, loading counts, downloading results, and drill-downs.

Drill-down explorations

For drill-down exploration, query.drill_down(col, row) now creates a new query returning the drill-down results, which is interfaced with QueryDataTable and QueryOperations components, making it a simple and intuitive way to explore data.

Now, you can double-click on a cell to drill down, then group and aggregate using quick actions or perform other operations from the familiar operations sidebar.

Sharing dashboard with specific users

Previously, you could share a dashboard by enabling public access or by sharing the workbook. There was no way to just share a dashboard with other users without sharing access to the workbook. You can now do so.

Setup data alerts

You can now setup alerts that triggers when data changes. This has also been requested quite a few times.

Minor Features

  • For PostgresSQL data source, users can now specify schema names to fetch tables, supporting comma-separated values for multiple schemas. (ref)
  • If a table cell starts with http:// or https://, it will be rendered as a clickable link. (ref)
  • Users can now configure the number of column values displayed in pivot tables (ref)
  • In table charts, number columns can now be selected as rows, not just string columns (ref)

Fixes

  • Single-line expressions no longer require server scripts to be enabled (ref)
  • Number charts now show 0 instead of empty cards when no rows are returned (ref)
  • Fixed drill downs not working when columns were renamed (ref)
  • Fixed drill downs in row charts (ref)
  • Corrected logic for recent view logs (ref)
  • Drill down queries now reset when closing the dialog (ref)
  • Redirect users to the setup wizard if setup is incomplete (ref)
  • Enable server scripts after Docker setup (ref)
Saqib Ansari Product Engineer

Customize Field Dependency:

This month we worked to make the helpdesk more customizable to suit a larger audience, making the ticket categorization simple for agents. We introduced many customizations in this month:

  • Custom dialogs in Single Ticket View for agent & customer.
  • Custom API calls.
  • Display and mandatory depends on: You can choose when to make a field mandatory & also show or hide fields while creating tickets based on your custom conditions.

  • Dynamic filters: Apply filters to Link fields to show limited options to customers while creating tickets.
  • Select/ Option depends on: While creating a ticket, you can update the options for each Select field or Link field depending on some other field. This will help you to create dynamic forms and better categorisation of tickets.
  • To know how to implement new customisations read our documentation

Ritvik Sardana Engineer

Minor Features:

Auto close replied tickets: A new feature in helpdesk which auto closes the tickets in replied state after “n” number of days. Number of days can be set from HD settings. #2211

Ticket Restrictions: This feature allows you to restrict the tickets in the list view based on the team in which the agent is.

Customize Quick Filters

List View has quick filters that are displayed based on the in_standard_filter field property.

Previously, to show a field in the quick filter area, you had to navigate to Desk → Customize Form → Select DocType and set the in_standard_filter value of that field to Yes. The order in which quick filters were rendered was also determined by the field order in the Customize Form layout.

Now, we have introduced a feature that allows you to customize quick filters directly from the UI. Check the screenshots below to see how it works.

Onboarding

Frappe CRM now includes an Onboarding feature to help new users get started quickly. It provides step-by-step guidance to understand the system, making the learning process smoother. Users have full control over onboarding steps—they can skip, skip all, reset, or reset all at any time. Even after completing onboarding, users can reset the steps if they need a refresher.

Help Centre

The new Help Centre feature brings CRM-related articles directly into the system, offering quick access to documentation. It includes a basic search feature to find relevant topics easily. Clicking on an article redirects users to the full documentation, ensuring they have all the information they need to navigate Frappe CRM effectively.

Bug Fixes

  • Sync translations from Crowdin #636
  • Show title value if it exists in breadcrumbs or name #661
  • Also consider CRM Deal as party type for ERPNext CRM Integration #46529
  • Avoid auto setting mobile no as primary via validate method #685
  • Button inside tooltip is triggered twice #689
  • Exclude Arabic font from InterVar & Inter #280
Shariq Ansari Product Engineer

Drive is on its way to becoming a public consumer app. This month, we built the sign-up and invite flow, allowing anyone on the internet to use Drive on what will soon be drive.frappe.io.

We added a few new features:

  • Links
  • Storage Bar

We also ironed out many bugs and polished the UI.

Stay tuned for our launch in Frappe Build!

Safwan Samsudeen Trainee Engineer

And that's it 👋

That's all for this month. Do register for Frappe Build if you haven't already. We have an amazing lineup of talks. You will also get to meet the entire engineering team. See you next month!

Published by

Jannat Patel

on

28 March 2025

Share

Add your comment

Success!

Error

Comments

No comments, yet.

Discussion

image7f7d4e.png

Paul Mugambi

·

3 days

ago

Beautiful read, and an insight into an individual I respect and have learned a lot from. Am inspired to trust the process and never give up.

image4c43d6.png

Anna Dane

·

5 days

ago

I must say this is a really amazing post, and for some of my friends who provide Best British Assignment Help, I must recommend this post to them.

Add your comment

Comment