Share via


แมปฟิลด์อินพุตของส่วนประกอบ

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

เคล็ดลับ

หากต้องการเรียนรู้เกี่ยวกับคุณสมบัติอินพุตและเอาต์พุตแบบกำหนดเองในส่วนประกอบ โปรดดูที่ คุณสมบัติที่กำหนดเองในส่วนประกอบ

แมปคอลัมน์

ใช้ฟังก์ชัน RenameColumns() เพื่อเปลี่ยนชื่อคอลัมน์อย่างน้อยหนึ่งคอลัมน์ของตารางเพื่อให้ตรงกับสคีมาคุณสมบัติอินพุตสำหรับการเลือกคอลัมน์อินพุต

ตัวอย่างเช่น พิจารณาส่วนประกอบที่คาดหวังอินพุตตารางด้วยรูปแบบต่อไปนี้:

รสชาติ UnitPrice QuantitySold
สตรอเบอร์รี่ 1.99 20
ช็อกโกแลต 2.99 45

คุณสมบัติอินพุตต้องการชนิดข้อมูลตาราง:

คุณสมบัติอินพุตแบบกำหนดเองต้องการชนิดข้อมูลตาราง:

สคีมาของคุณสมบัติอินพุตดูเหมือนสูตรต่อไปนี้:

Table({Flavor: "Strawberry",UnitPrice: 1.99, QuantitySold:20})

สูตรคุณสมบัติอินพุตแบบกำหนดเองที่กำหนดเป็นค่าตารางและตัวอย่าง

แอปที่ใช้ส่วนประกอบนี้มีตารางดังต่อไปนี้ IceCreams ที่ไม่ตรงกับสคีมาส่วนประกอบ:

FlavorName ราคา SaleNumber
สตรอเบอร์รี่ 1.99 20
ช็อกโกแลต 2.99 45

สคีมาของตาราง IceCreams

ในการแมปฟิลด์ที่ถูกต้อง ให้ใช้ฟังก์ชัน RenameColumn() เพื่อเปลี่ยนชื่อคอลัมน์ที่คาดไว้

RenameColumns(IceCreams,"cra56_flavorname","Flavor","cra56_price","UnitPrice","cra56_salenumber","QuantitySold")

แอปที่ใช้ส่วนประกอบที่ใช้การแมปคุณสมบัติอินพุตแบบกำหนดเองพร้อมคอลัมน์ที่ถูกต้องโดยใช้ฟังก์ชัน RenameColumns

ฟิลด์อินพุตที่ส่วนประกอบคาดหวังได้รับการแมปกับคอลัมน์ที่ตรงกันจากแหล่งข้อมูล

แมปเรกคอร์ด

ใช้ฟังก์ชั่น With() เพื่อแมปเรกคอร์ดเดียว

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

{Flavor: "Strawberry",UnitPrice: 1.99, QuantitySold: 20}

สูตรคุณสมบัติอินพุตแบบกำหนดเองที่กำหนดเป็นค่าเรกคอร์ดและตัวอย่าง

ตั้งแต่แหล่งข้อมูล IceCreams คาดหวังชื่อคอลัมน์เป็น FlavorName, Price และ SaleNumber เราจะต้องเปลี่ยนการแมปสำหรับเรกคอร์ดเมื่อมีการเพิ่มองค์ประกอบลงในแอปแล้ว

ใช้ฟังก์ชัน With() เพื่อเลือกคอลัมน์ของตาราง IceCreams และแมปกับฟิลด์อินพุตของส่วนประกอบ:

With(Gallery3.Selected,{Flavor:FlavorName,UnitPrice:Price,QuantitySold:SaleNumber})

เรกคอร์ดคอมโพเนนต์ในแอปที่แมปกับสคีมาของแหล่งข้อมูล

ภาพเคลื่อนไหวต่อไปนี้แสดงตัวอย่างของส่วนประกอบต์ที่เพิ่มลงในแอปซึ่งแสดงเรกคอร์ดที่เลือกจากแกลเลอรี (เหนือส่วนประกอบ):

ภาพเคลื่อนไหวที่แสดงการเลือกเรกคอร์ดจากแกลเลอรีด้านบน ซึ่งเปลี่ยนข้อความอินสแตนซ์ของส่วนประกอบด้านล่าง

แม็ปตาราง

ใช้ฟังก์ชัน ForAll() เพื่อแมปตารางเรคคอร์ดกับเรคคอร์ดที่ส่วนประกอบเพิ่มลงในแอปที่คาดไว้

ตัวอย่างเช่น ในตอนท้ายของตัวอย่าง แมปคอลัมน์ คุณสามารถใช้ฟังก์ชัน ForAll() เพื่อแมปทั้งตารางด้วยคอลัมน์เฉพาะ เพื่อชี้ไปที่ฟิลด์จากองค์ประกอบสำหรับแต่ละแถว:

ForAll(IceCreams,{Flavor:FlavorName,UnitPrice:Price,QuantitySold:SaleNumber})

แมปตารางโดยใช้ฟังก์ชัน ForAll() สำหรับเรกคอร์ดทั้งหมด

แมปโดยใช้เมนูแบบหล่นลง (เลิกใช้แล้ว)

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

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

วิธีที่เลิกใช้แล้วในการเลือกการแมปฟิลด์โดยใช้เมนูดรอปดาวน์ในส่วนคุณสมบัติขั้นสูงของส่วนประกอบที่เพิ่มลงในแอป

วิธีการเลือกการแมปโดยใช้เมนูแบบหล่นลง เลิกใช้แล้ว ให้ใช้วิธีการแมป คอลัมน์ เรกคอร์ด หรือ ตาราง แทน ตามที่อธิบายไว้ตอนต้นของบทความนี้

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

อนุญาตให้กำหนดฟิลด์โดยอัตโนมัติสำหรับการตั้งค่าข้อมูลป้อนเข้าของส่วนประกอบ

เมื่อเปิดการตั้งค่า ตรวจสอบให้แน่ใจว่าคุณได้บันทึกและเปิดแอปอีกครั้งใน Power Apps Studio เมื่อเปิดใหม่อีกครั้ง ให้อัปเดตสูตรคุณสมบัติอินพุตเพื่อทริกเกอร์การตรวจสอบสูตร เพื่อให้ตัวเลือกดรอปดาวน์เริ่มปรากฏในบานหน้าต่างคุณสมบัติขั้นสูง

ดูเพิ่มเติม