Disable "Add New Row" Button from Child Table

Hello,
I want to Disable only “Add new row” button from child table but want to keep “Remove” button in child table.

Thnx,
Nishant Jariwala

@Nishant_Jariwala, mark the field as read-only!

Thnx for reply @max_morais_dmm.

But if i make child table as readonly then “Remove Row” button also become disable.
i want to make “Remove Row” Button Enable and “Add New Row” Button Disable.

@Nishant_Jariwala, can you explain the use case?

@max_morais_dmm,
i have one doctype for certain criterias and i am fetching all criterias to another doctype’s child table based on condition.
Here i want to do that user can remove criteria from child table but can not add new criterias.

thnx.

@Nishant_Jariwala, do you can remove the row when the user adds, and show a message from him, something like this!

var added_row = null;

frappe.ui.form.on('DocType', 'table_field_add', function(frm, cdt, cdn){
    added_row = [cdt, cdn];
});

frappe.ui.form.on('Child', 'on_form_render', function(frm, cdt, cdn){
  if (added_row && added_row.length==2 && added_row[0] == cdt && added_row[1] == cdn){
    frappe.model.remove_from_locals(cdt, cdn);
    frm.refresh_form('table_field');
    frappe.msgprint('Hey Dude, you cant add a new row here!');
    added_row = null;
  }
});
4 Likes

Ya thats great idea.
thnx @max_morais_dmm

can u please tell me how u did that

cur_frm.set_df_property(“properties_list”, “read_only”, 1);

properties_list is your childtable field name… its working 100%

1 Like