Imagineer ERPNext
Custom Scripts

ดึงข้อความที่อยู่ทั้งหมดบนฟิลด์ที่กำหนดเอง

ดึงข้อความที่อยู่ทั้งหมดบนฟิลด์ที่กำหนดเอง

บทความนี้จะช่วยให้คุณเพิ่มฟิลด์ที่กำหนดเองสำหรับดึงที่อยู่เต็มบน DocType ใดๆ โดยใช้แนวทาง 3 ขั้นตอน

ขั้นตอนที่ 1. การปรับแต่งเชิงสุนทรีย์บน DocType ที่จำเป็น

เราจะต้องเพิ่มฟิลด์ใหม่สองฟิลด์บน DocType สำหรับดึงที่อยู่ก่อน:-

a) ฟิลด์ประเภท 'Link' ซึ่งชี้ไปยัง Address master ของเรา

b) ฟิลด์ประเภท 'Read Only' ซึ่งจะแสดงที่อยู่เต็ม

จดบันทึกชื่อตัวแปรของฟิลด์ใหม่ที่คุณสร้าง ข้อมูลนี้จะจำเป็นในภายหลังในกระบวนการ

สำหรับข้อมูลเกี่ยวกับการสร้างฟิลด์ที่กำหนดเองบน DocType คุณสามารถอ้างอิงลิงก์ต่อไปนี้ - Custom Fields in ERPNext

เมื่อทำขั้นตอนนี้เสร็จแล้ว คุณควรมีฟิลด์ใหม่สองฟิลด์บน DocType ที่เลือก ดังแสดงด้านล่าง:-

ขั้นตอนที่ 2. เพิ่ม Client Script สำหรับดึงที่อยู่เต็มจาก Address master ของเรา

ค้นหา 'Client Script' บนแถบค้นหา และสร้าง Client Script ใหม่ เลือก DocType ที่จำเป็นซึ่งเราต้องการดึงที่อยู่บน

ในส่วนสำหรับสคริปต์ ให้วาง Client Script ต่อไปนี้:-

frappe.ui.form.on("DocType Name", "address_link_field", function(frm, cdt, cdn) {    if(frm.doc.address_link_field){     return frm.call({      method: "frappe.contacts.doctype.address.address.get_address_display",      args: {       "address_dict": frm.doc.address_link_field      },      callback: function(r) {       if(r.message)           frm.set_value("full_address_field", r.message);              }     });    }    else{        frm.set_value("full_address_field", "");    }});

ที่นี่เราจะต้องแทนที่การเปลี่ยนแปลงต่อไปนี้ตามกรณีการใช้งานของคุณ:-

a) แทนที่ 'DocType Name' ด้วยชื่อของ DocType ที่เราต้องการดึงที่อยู่บน ตัวอย่าง Sales Invoice, Purchase Order เป็นต้น

b) แทนที่ 'addresslinkfield' ด้วยชื่อตัวแปรของฟิลด์ลิงก์ที่กำหนดเองที่เราสร้างในขั้นตอนที่ 1

c) แทนที่ 'fulladdressfield' ด้วยชื่อตัวแปรของฟิลด์ read only ที่กำหนดเองที่เราสร้างในขั้นตอนที่ 1

เมื่อทำเสร็จแล้ว คุณจะมี Client Script ซึ่งมีลักษณะดังด้านล่าง:-

ขั้นตอนที่ 3. บันทึก เปิดใช้งาน และทดสอบ Client Script

เมื่อ Client Script ถูกแก้ไขตามกรณีการใช้งานของคุณ เราสามารถบันทึกและเปิดใช้งานมันโดยคลิกช่อง 'Enabled'

ไปที่ DocType ที่จำเป็นและรีเฟรชหน้าเพื่อให้การเปลี่ยนแปลงมีผล

ตอนนี้เมื่อที่อยู่ถูกเลือกบนฟิลด์ลิงก์ที่กำหนดเองของเรา ที่อยู่ทั้งหมดจะถูกดึงบนฟิลด์ read only ที่กำหนดเองของเรา ดังแสดงด้านล่าง:-

Copyright © 2026