Forms in a Listing

I have the following forms:

Rental Guarantee
Miscellaneous risks

I need to create 6 forms, but I need the result to go to the same listing or kanban

I don’t believe there is a feature within Frappe to show more than doctype within a listing/kanban (I assume each of the forms you describe is a separate doctype?)

It might be possible to create a virtual doctype that is based on a union of multiple tables derived from these doctypes, but I don’t have any experience with that. Maybe someone with more experience with virtual doctypes can respond…


Yes, forms separated by doctypes.

I’ll look at the virtual doctypes to see what I can get, thanks for the instructions.

1 Like

I was thinking about another option, is there a way to enable and disable a form tab?

It would be another option.

I managed to solve it like this:

Define Relationships between Doctypes:
Make sure Doctypes (forms) are listed correctly.
For example, if you have 6 different Doctypes (A, B, C, D, E and F), define the relationships between them. It can be a one-to-many relationship (a Doctype is related to several other Doctypes).

Create a New Doctype:
Create a new Doctype that will be used as the unified listing.
This Doctype may be called “Unified Listing” or something similar.

Add Table Fields:
In the “Unified Listing” Doctype, add table fields to represent the other 6 Doctypes (A, B, C, D, E and F).
For example, create table fields for each of the Doctypes A, B, C, D, E and F in the “Unified Listing”.

Link Records:
When you create records in Doctypes A, B, C, D, E and F, link them to the corresponding table fields in the “Unified Listing”.
This will create a relationship between the records in the different Doctypes.

Customize the View:
Customize the “Unified List” view to display records from other Doctypes.
You can use tables, graphs, or other visualizations to show data.

Testing and Adjustment:
Create records in Doctypes A, B, C, D, E and F and check if they appear correctly in the “Unified List”.
Adjust as necessary to ensure data is displayed correctly.

Hi @weldonet:

IMO, and as @DCRob suggested above, virtual doctype is the right approach.

You will need to use SELECT .. UNION to get data directly from database, or just use API in your virtual doctype controller to build “unified” data object. Kanban needs also a “common” select field to show different columns.

Hope this helps.

Thank you, as enabled or virtual, in my environment it is disabled

Hi @weldonet:

Check this:

  • Are you in development mode?
  • Are you logged as “administrator” user?

I’m an administrator, how do I check if I’m in development mode?

it would be like this

bench set-config developer_mode 1

I’m new here and new to programming.

I’m using

Can you tell me how to access it to make this change?

Hi @weldonet:

You will need to build a custom app and install it on your Frappe Cloud bench . Even maybe you could enable developer mode depending on your FC plan but … is not so easy to create this kind of customization without some programming knowlegde, some framework notions, and python/sql skills are needed to achieve this.

I was on your situation 2 years ago … and decided to learn. It’s being a lovely journey! But, maybe you can hire someone for this.

Hope this helps.

Hi again:

This would be easier. Create a doctype with all your data, and hide sections or tabs depending on some field value (something like “Type”), using “Depends On” property.

Hope this helps.

This seems interesting to me, I’ll test it here.


I’ll need to test the virtual doctype, it didn’t work.

I’m talking to frappe.Cloud support because there’s a configuration step missing.


I managed to put it in develop mode and created an app, but I’m still in doubt about how to configure the virtual doctype.

There is some tutorial, I looked in the documentation but in fact I didn’t understand how to configure it

Switched to Develop and was able to enable Virtual IS

I created a test field and tried to save it returns with the following message

Incomplete Virtual Doctype Implementation

Virtual DocType Demand requires overriding an instance method called delete found frappe.model.document.Document.delete

Have you looked into creating a script report with a query joining all 6 tables, and add a button in a column to open the respective form ?


I’m new here, I’m still learning how to put things together.

Thank you for your suggestion, I think it is feasible, but I don’t know how to do it, can you give me instructions?