in this post we want to suggest a feature for the Kanban Boards in ERPNext.
In ERPNext it is possible to view Items in Kanban perpective.
You create a Kanban board and choose on which column basis your items will be shown. On picture 1 the possible column basis could be “Status” or “Priorität” in engl.: “status” or “priority”.
In our opinion this is not flexible enough to use it in the german market.
If you compare Kanban Boards from other services you can always self declare what the column basis should be. You can see an example in picture 2.
“Spalte hinzufügen” in engl.:“add column”. In Asana you can declare columns as you want.
Could it be possible in ERPNext to implement a feature that you can choose the columns how you want them to be and after that you can add the items.
Thank you for your help and we are excited to hear from you soon.
You can already do this, it’s just not where you expect to find it. Go to Customize Form, add a new Select-Field, add all columns you would like under Options (one line per column). Then you can create a new Kanban board based on this new field.
The columns must be project-dependent in any case, and you must not see columns (or drop-down values) from other projects in a project.
eg.:
In Project 1 (a software) we need only the columns: Ideas, Approved, Doing, Testing, Done
In Project 2 (a landingpage) we need only the columns: Content, Technical, Layout
In Project 3 (a event) we need only the columns: Location, Catering, Speaker, Invitations
And so on…
To have user acceptance for ERPNext, it should work similar to any Kanban system on this planet (e.g. Microsoft Planner, Trello, Asana, Restyaboard, …): The user creates a new project (=Kanbanboard), it might have one (Tasks) or three (Tasks, Doing, Done) predefined columns and the user renames the columns and adds new columns for this project and starts to enter cards. This takes about 30 seconds in each tool.
I agree, Ideally each Kanban Board would have it’s own set of columns/ stages. Ideally is just a DocType in which stages are defined and then you pick the ones you want to use for each project. That’s how It’s implemented in Kanboard, Wekan and Odoo. I think it’s more flexible, and avoids customization of the existing DocTypes.
Now we’re getting closer to the real requirements. So we need a DocType Kanban Board, similiar to Report, where we can store the reference DocType (for example, “Project”) and filters (for example, project="Landing page"). Columns get their own DocType. Also, some way to store which document belongs to which column. Here’s a draft data model:
Kanban Board
Title (Data)
Reference DocType (Link)
Filters (Table)
Kanban Column
Title (Data)
Kanban Board (Link)
Kanban Column Membership
Reference DocType (Link)
Reference Name (Dynamic Link)
Kanban Column (Link)
With this we have all the flexibility and it’s fairly easy to implement. It would even be possible to get multiple DocTypes in the same Kanban Board.
We need to keep in mind that the current kanban boards are integrated with Workflows which is not taken care of in my approach above.
U can also add more columns by adding options to the „status“ field
True, however this approach leaves u with the same structure for every KanBan (of the same Doctype).
What I find a missing feature is that u can not prioritize tasks (I guess that’s the main usecase for a KanBan) by vertical position in the column
What I think to be a great feature in the existing KanBan is the ability to throw any kind of Documents (not only project tasks) into a KanBan. This makes it extremely flexible and should be preserved. Use case … make a KanBan of projects (not tasks, the entire project) and move them through the stages you ideally can freely define. Cherry on Top … you can enter a particular projects KanBan from such a the project card. This principle could be called ‘nesting’. It is pretty common feature in video editing software.
It’s very useful to have any document in a Kanban Board indeed! What I’ve seen (not that familiar with ERPNext yet) is that the Board is pretty much always based on the status field, and this field is used for workflows, etc. So instead of defining status as a selection field, have a DocType in which they are stored, and define filters for each DocType.
For example each project could have a filter for which status can It’s task be.
Kanban can be one of the most attractive features to be enriched in ERPNext.
We would love to have the following in Kanban
Better column sorting: Each column is sorted independently
Sort by oldest/newest sorts by age of column status (e.g. in Opportunity Kanban view: Sort cards in column “Quotation submitted” by oldest, shows the opportunity that has been the longest in this stage)
Summary <-> Detail views: Define 2 lists in the Kanban View Doctype. Summary list has upto 3 fields Detail list has upto 6 fields. The rendering of the elements can be left to the intelligence of Frappe. For example: a field of type image can be dispalyed at top left corner of the card, a date on top-right corner etc.
Better UI to control Hide/Show columns. The current UI (either while viewing the Kanban itself or via Kanban Board List) is clumsy and inconsistent. It uses Archive Column and when you need to bring back an archived column the whle Kanban starts to act wierd.
Control columns insertion: Adding new columns in the Kanban should not be allowed as it inserts new records in the relevant filed and causes wrong application behavior. Maybe this feature can be controlled via the roles restrictions as is the current setting
It would be nice if the each column header in the Kanban could display data as well.
Eg. If each kanban card had an estimated amount of time to perform a task, let’s say 2 hours each… then if there were 3 cards in the kanban column, then the Column Header could display a field that shows the total.
Not asking for the Kanban board itself to perform the calculation… just for an additional field to be able to be displayed in the column header.
Is it possible to expose the position of a card on a Kanban Board?
So, in a Kanban board column I may have 3 cards. The top card should be 1, the second card would be 2, and the third would be 3.
I’d then like to have a field in my docType that represents the position of the card on the board. If the card changed position on the board, then the field would be updated.
This would be used to imply an order of events. Example… if I had a Kanban of Delivery notes where the columns were the Drivers… then I could tell the driver the order in which I want the deliveries made.
This is just an example… there are many other reasons to expose the order of cards in a column.
Sure, both are interesting features and could be implemented. Let me know if you’d like to sponsor development. For reference, the improvement mentioned above (display of field values in kanban cards), was ~4 days of work.