I need to collect values from some fields and put them in one field type Text in the same document i used
cur_frm.add_fetch(link_field, source_fieldname, target_fieldname);
but it’s only get value of one field
I need to collect values from some fields and put them in one field type Text in the same document i used
cur_frm.add_fetch(link_field, source_fieldname, target_fieldname);
but it’s only get value of one field
@Alaa_Badri
We need to see some more code to provide better feedback. My guess is you’re looking for something along the lines of frm.set_value()
example here.
Dear @tmatteson
Thanks for your response
i have some custom fields in the event doc called (client - course name - Facilitator ) I need to collect all the values of those fields and put them in the description field it’s a standard field and has Text type
Hello @Alaa_Badri, I think you want to do a database lookup with frappe.client.get_value
and set it with frm.set_value()
. Try writing this as a custom script and then post your progress here.
Start with this:
frappe.ui.form.on("Event", {
refresh: function(frm) {
x = frappe.client.get_value( ... enter your lookup argumentss here ... ) // you may need one of these for each of client, course and facilitator
frappe.set_value("description", x);
}
});
This is in the documentation.
https://frappe.io/docs/current/api/frappe.client#frappe.client.get_value
There’s a SQL one too, but honestly, you’re better off using the native helper functions and not involving three languages to solve your problem when you can do it in one.
Dear @tmatteson
Thanks for your help
i try this
frappe.ui.form.on(“Event”, {
refresh: function(frm) {
facilitator = frappe.client.get_value(Event, facilitator)
frappe.set_value(“description”, “facilitator”);
}
});
but i got this console error
Cannot read property ‘get_value’ of undefined
also i use this script but also not working
frappe.ui.form.on(“Event”, “client”, function(frm, cdt, cdn){
frappe.call({
“method”: “frappe.client.get_value”,
args: {
doctype: “Event”,
fieldname: “client”,
filters: {
name:[“=”, frm.doc.client]
}
},
callback: function (data) {
console.log(data);
cur_frm.set_value(“description”, data.client);
}
})});
@Alaa_Badri First things first, you’re making a lot of new javascript programmer mistakes (that I have also made myself, so don’t feel bad) but I think that you should take a course to reinforce some of the places you’re going wrong.
This is a different problem:
This is because your get_value
arguments aren’t finding anything. When I get this error, 95% of the time it’s my fault because I’ve entered bad arguments, the other 5% is because I’m looking for a document that doesn’t exist. Both of those problems return “undefined” which is the framework basically saying “I can’t find what you’re looking for.”
Keep trying, you’re close.
Dear @tmatteson
First i’m sorry for my mistakes but i’m new in javascript programing
and i try this
frappe.ui.form.on(“Event”, {
refresh: function(frm) {
facilitator = client.get_value(“Event”, “name”, “facilitator”)
frappe.set_value(“description”, facilitator);
}
});
i got this error
client is not defined
Second what about the second script
can we use it in our case
I don’t know what’s in your name
variable, but again, you don’t want to search for the string “name”, which is why I guessed you’re looking for the client’s name: frm.doc.client
.