Hello,
I have create a DocType in which a user has to select Sales Order
and then only they can see Items
. Here only those Items which are in Sales Order should be visible in the list.
I have defined the field of Type Link and am linking it to Items.
How can we do this with custom script?
TIA
Yogi Yang
1 Like
Hello,
I managed to solve my problem putting following code in my DocType.
Code in file my_work_order.js
sales_order:function(frm){
//Code to get Selected Items Qty to Mfg
let so_num = frm.doc.sales_order;
if(so_num){
frm.set_value({
"production_item": ""
});
frappe.call({
method: "mymfg.api.get_items_from_sales_order",
args: {sales_order_name: so_num}
}).done((r) => {
frm.set_query('production_item', function(){
return {
filters: [
["Item","name", "in", r.message]
]
};
})
})
}
}
Code in file api.py
@frappe.whitelist()
def get_items_from_sales_order(sales_order_name):
out = frappe.db.sql_list(
"""
select item_code from `tabSales Order Item` where parent = %s
""",
(sales_order_name),
)
return out
I hope this will help others.
TIA
Yogi Yang