Stock reconciliation item

hello , i want you to write client script to get the warehouse of “item code” field and display the value automatically in “warehouse” field.

any help please .

those some thoughts but i did not applied it…

frappe.ui.form.on(‘Stock Reconciliation Item’, {
item_code: function(frm, cdt, cdn) {
var row = locals[cdt][cdn];
frappe.call({
method: “erpnext.stock.doctype.stock_reconciliation.stock_reconciliation.get_item_details”,
args: {
item_code: row.item_code,
warehouse: row.warehouse
},
callback: function(r) {
if (r.message) {
var warehouse = r.message.warehouse;
frappe.model.set_value(cdt, cdn, “warehouse”, warehouse);
}
}
});
}
});

does this code solve my issue ??

please try it on test envoirnment

frappe.ui.form.on('Stock Reconciliation Item', {
  item_code: function(frm, cdt, cdn) {
    var doc = locals[cdt][cdn];
    if (doc.item_code) {
      frappe.call({
        method: 'frappe.client.get_value',
        args: {
          doctype: 'Item',
          filters: { item_code: doc.item_code },
          fieldname: 'default_warehouse'
        },
        callback: function(r) {
          if (r.message && r.message.default_warehouse) {
            frappe.model.set_value(cdt, cdn, 'warehouse', r.message.default_warehouse);
          }
        }
      });
    }
  }
});

do i need to change any thing with hooks …
and where if any changes should be made ?

@GGR

i got this error :

Failed to get method for command erpnext.stock.doctype.stock_reconciliation.stock_reconciliation.get_item_details with module ‘erpnext.stock.doctype.stock_reconciliation.stock_reconciliation’ has no attribute ‘get_item_details’

use frappe.client.get_value method

frappe.ui.form.on('Stock Reconciliation Item', {
  item_code: function(frm, cdt, cdn) {
    var doc = locals[cdt][cdn];
    if (doc.item_code) {
      frappe.client.get_value('Item', { item_code: doc.item_code }, 'default_warehouse', function(r) {
        if (r.message && r.message.default_warehouse) {
          frappe.model.set_value(cdt, cdn, 'warehouse', r.message.default_warehouse);
        }
      });
    }
  }
});