PAMPERO
October 12, 2018, 2:59pm
#1
I have a child table (CONTEOS) with two columns: “n_granos” and “porcentaje” in a Doctype call “Mieles Pampero”. In the Doctype I have a field call “entomofilos”. I have done the script for “total” that sum “n_granos”. I want to calculate the “porcentaje” / percentage in each row like: n_granos/total. I have done the srcipt below but it does not work, becuase it does not refresh the number each row I include.
Can somebody help me? Thats what I have:
frappe.ui.form.on("CONTEOS", {
n_granos:function(frm, cdt, cdn){
var child = locals[cdt][cdn];
if(d.tipo_de_polinizacion == "Entomofilia") {
frappe.model.set_value(cdt,cdn ,"porcentaje", child.n_granos/cur_frm.doc.entomofilos * 100);
}
}
});
Thanks!!
PAMPERO:
frappe.ui.form.on(“CONTEOS”, { n_granos:function(frm, cdt, cdn){ var child = locals[cdt][cdn]; if(d.tipo_de_polinizacion == “Entomofilia”) { frappe.model.set_value(cdt,cdn ,“porcentaje”, child.n_granos/cur_frm.doc.entomofilos * 100); } } });
frappe.ui.form.on("CONTEOS", {
n_granos:function(frm, cdt, cdn){
var child = locals[cdt][cdn];
if(child.tipo_de_polinizacion == "Entomofilia") {
frappe.model.set_value(cdt,cdn ,"porcentaje", child.n_granos/cur_frm.doc.entomofilos * 100);
}
}
});
have you tried this ?
refresh_field('table field name ')
PAMPERO
November 9, 2018, 12:23am
#5
I found a solution like this:
frappe.ui.form.on(“Analisis Palinologicos”, {
“calcular”: function(frm) { cur_frm.clear_table(“table_24”);
frappe.model.with_doc(“Analisis Palinologicos”, frm.doc.name, function() {
var tabletransfer= frappe.model.get_doc(“Analisis Palinologicos”, frm.doc.name)
$.each(tabletransfer.table_14, function(index, row){
d = frm.add_child(“table_24”);
d.tipo_polinico = row.tipo_polinico;
d.n_granos = row.n_granos;
d.tipo_de_polinizacion = row.tipo_de_polinizacion;
d.taxon = row.taxon;
d.nombre_vulgar = row.nombre_vulgar;
d.genero = row.genero;
d.tribus_o_subfamilias = row.tribus_o_subfamilias;
d.familia = row.familia;
d.orden = row.orden;
d.grupo = row.grupo;
d.subclase = row.subclase;
d.clase = row.clase;
d.subdivision = row.subdivision;
d.division = row.division;
frm.refresh_field(“table_24”);
d.porcentaje = (d.n_granos * 100 / cur_frm.doc.entomofilos);
frm.refresh_field(“table_24”);
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje > 45) d.clasificacion = “Polen dominante (>45%)”;
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje < 3) d.clasificacion = “Polen traza (<3%)”;
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje > 3 && d.porcentaje < 15) d.clasificacion = “Polen minoritario (3-15%)”;
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje > 15 && d.porcentaje < 45) d.clasificacion = “Polen secundario (16-45%)”;
frm.refresh_field(“table_24”);
});
});
}
});
frappe.ui.form.on(“Analisis Palinologicos”, {
“calcular”: function(frm) { cur_frm.clear_table(“table_14”);
frappe.model.with_doc(“Analisis Palinologicos”, frm.doc.name, function() {
var tabletransfer= frappe.model.get_doc(“Analisis Palinologicos”, frm.doc.name)
$.each(tabletransfer.table_24, function(index, row){
d = frm.add_child(“table_14”);
d.tipo_polinico = row.tipo_polinico;
d.n_granos = row.n_granos;
d.tipo_de_polinizacion = row.tipo_de_polinizacion;
d.taxon = row.taxon;
d.nombre_vulgar = row.nombre_vulgar;
d.genero = row.genero;
d.tribus_o_subfamilias = row.tribus_o_subfamilias;
d.familia = row.familia;
d.orden = row.orden;
d.grupo = row.grupo;
d.subclase = row.subclase;
d.clase = row.clase;
d.subdivision = row.subdivision;
d.division = row.division;
frm.refresh_field(“table_14”);
d.porcentaje = (d.n_granos * 100 / cur_frm.doc.entomofilos);
frm.refresh_field(“table_14”);
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje > 45) d.clasificacion = “Polen dominante (>45%)”;
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje < 3) d.clasificacion = “Polen traza (<3%)”;
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje > 3 && d.porcentaje < 15) d.clasificacion = “Polen minoritario (3-15%)”;
if(d.tipo_de_polinizacion == “Entomofilia” && d.porcentaje > 15 && d.porcentaje < 45) d.clasificacion = “Polen secundario (16-45%)”;
frm.refresh_field(“table_14”);
});
});
}
});