Custom script working in version9 but not working in version12

Hi everyone,

We upgraded our system from version 9 to version 12, All is fine, but in version 9 for quotation doctype there is a script that is working fine there, But its not working in version12 quotation .Please help.Please find below script.

frappe.ui.form.on(“Quotation”, “new_item_code”, function(frm, cdt, cdn) {

frappe.call({
    method: "frappe.client.get_list",
    args: {
        doctype: "Item",
        filters: {
            "item_group": frm.doc.item_group,


            "is_sales_item": 1
        },
        fields: ["item_code", "item_name", "description", "stock_uom"]
    },
    callback: function(r) {
        var items = [];
        frm.clear_table("items");
        for (var i = 0; i < r.message.length; i++) {
            var d = frm.add_child("items");
            for (var key in r.message[i]) {
                if (r.message[i].hasOwnProperty(key)) {
                    frappe.model.set_value(d.doctype, d.name, key, r.message[i][key]);
                }
            }

            if (!d.qty) d.qty = 1;
        }
        frm.refresh_field("items");
    }
})

})

frappe.ui.form.on(“Quotation”, “item_group”, function(frm, cdt, cdn) {

frappe.call({
    method: "frappe.client.get_list",
    args: {
        doctype: "Item",
        filters: {
            "item_group": frm.doc.item_group1,

            "is_sales_item": 1
        },
        fields: ["item_code", "item_name", "description", "stock_uom"]
    },
    callback: function(r) {
        var items = [];
       
        for (var i = 0; i < r.message.length; i++) {
            var d = frm.add_child("items");
            for (var key in r.message[i]) {
                if (r.message[i].hasOwnProperty(key)) {
                    frappe.model.set_value(d.doctype, d.name, key, r.message[i][key]);
                }
            }

            if (!d.qty) d.qty = 1;
        }
    }
})

})
cur_frm.add_fetch(‘item_code’,‘part_no’,‘part_no’)

frappe.ui.form.on(“Quotation”,“customer”, function(frm, cdt, cdn) {

frappe.call({
    method: "frappe.client.get_list",
    args: {
       
        doctype: "Customer Item",
        filters:{
              "customer_name" : frm.doc.customer
        },


               //fields: ["equipment", "serial_no", "manf_year", "pressure"]
    },
  
    callback: function(r) {
            var items = [];
            frm.clear_table("customer_item");
            for(var i=0; i< r.message.length; i++) {
                var d = frm.add_child("customer_item");
	for (var key in r.message[i]) {
		    if (r.message[i].hasOwnProperty(key)) {           
		frappe.model.set_value(d.doctype, d.name, key, r.message[i][key]);
		    }
	}

                if(!d.qty) d.qty = 1;
            }
            frm.refresh_field("customer_item");
        }

})

})

frappe.ui.form.on(“Quotation”, “item_group”, function(frm, cdt, cdn) {

frappe.call({
    method: "frappe.client.get_list",
    args: {
        doctype: "Product Bundle",
        filters: {
            "parent_item": frm.doc.parent_item,

            "is_sales_item": 1
        },
        fields: ["item_code", "item_name", "description", "stock_uom"]
    },
    callback: function(r) {
        var items = [];
       
        for (var i = 0; i < r.message.length; i++) {
            var d = frm.add_child("items");
            for (var key in r.message[i]) {
                if (r.message[i].hasOwnProperty(key)) {
                    frappe.model.set_value(d.doctype, d.name, key, r.message[i][key]);
                }
            }

            if (!d.qty) d.qty = 1;
        }
    }
})

})

frappe.ui.form.on(“Customer Item”, “get_items”, function(frm, cdt, cdn) {
var m = locals[cdt][cdn]

frappe.call({
    method: "frappe.client.get_list",
    args:{
		doctype: "Product Bundle Item",
		fields: ["item_code", "qty","description","service_type","parent","uom","rate"],
		filters:[
			["parent","=", m.equipment]
		],
		
	},
    callback: function(r) {
      
        console.log(r)
        for (var i = 0; i < r.message.length; i++) {
            var d = frm.add_child("items");
	console.log(frm.doc.items)
            for (var key in r.message[i]) {
	    frappe.model.set_value(d.doctype, d.name, "item_name", r.message[i]["item_code"]);
	    frappe.model.set_value(d.doctype, d.name, "product_bundle", r.message[i]["parent"]);
                if (r.message[i].hasOwnProperty(key)) {
                    frappe.model.set_value(d.doctype, d.name, key, r.message[i][key]);
                }
            }

          
        }
    }
})

})

frappe.ui.form.on(“Quotation”, “customer”, function(frm, cdt, cdn) {

frappe.call({
    method: "frappe.client.get_list",
async:false,
    args:{
		doctype: "Customer Item",
		fields: ["equipment", "serial_no","pressure","ref_code","manf_year"],
		filters:[
			["parent","=", frm.doc.customer]
		],
		
	},
    callback: function(r) {
      
       frm.doc.customer_items = []
        for (var i = 0; i < r.message.length; i++) {
            var d = frm.add_child("customer_items");
	
            for (var key in r.message[i]) {
	    
                if (r.message[i].hasOwnProperty(key)) {
                    frappe.model.set_value(d.doctype, d.name, key, r.message[i][key]);
                }
            }
	
	frappe.call({
    method: "frappe.client.get_list",
async:false,
    args:{
		doctype: "Product Bundle Item",
		fields: ["item_code", "qty","description","service_type","parent","uom","rate"],
		filters:[
			["parent","=", r.message[i].equipment]
		],
		
	},
    callback: function(r) {
      
        console.log(r)
        frm.doc.items = []
        for (var i = 0; i < r.message.length; i++) {
            var d = frm.add_child("items");
	

            for (var key in r.message[i]) {

		frappe.form.link_formatters['Item'] = function(value, doc) {


		return value +':'+ doc.description;
}
	    frappe.model.set_value(d.doctype, d.name, "item_name", r.message[i]["item_code"]);
	    frappe.model.set_value(d.doctype, d.name, "product_bundle", r.message[i]["parent"]);
                if (r.message[i].hasOwnProperty(key)) {
                    frappe.model.set_value(d.doctype, d.name, key, r.message[i][key]);
                }
            }

             	frappe.call({
    method: "frappe.client.get_list",
async:false,
    args:{
		doctype: "Item Price",
		fields: ["price_list_rate"],
		filters:[
			["price_list","=", "Standard Selling"],["item_code","=", r.message[i]["item_code"]]
		],
		
	},
    callback: function(r) {
		
                    frappe.model.set_value(d.doctype, d.name, "rate", r.message[0].price_list_rate);
           
          
        }
    
})
        }
    }
})
          
        }
    }
})

})

cur_frm.add_fetch(‘item_code’,‘part_no’,‘part_no’)

Thnxx.

alot of things has been changed since version 9. kindly post your script from past bin … thanks