Share via


ฟังก์ชัน Language

ใช้กับ: แอปพื้นที่ทำงาน โฟลว์เดสก์ท็อป Power Platform CLI

ส่งกลับแท็กภาษาของผู้ใช้ปัจจุบัน

คำอธิบาย

ฟังก์ชัน Language ส่งกลับภาษา สคริปต์ และภูมิภาคของผู้ใช้ปัจจุบัน เป็นแท็กภาษา

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

แท็กภาษา

แท็กภาษา อาจเป็นหนึ่งในสามรูปแบบ:

ค่าที่ส่งกลับ คำอธิบาย
"lg‑RE" lg เป็นตัวย่อสองอักขระสำหรับภาษา และ RE เป็นตัวย่อสองอักขระสำหรับภูมิภาค นี่คือชนิดการส่งกลับที่ใช้บ่อยที่สุด ตัวอย่างเช่น "en-GB" จะถูกส่งกลับสำหรับสหราชอาณาจักร
"lg" lg เป็นตัวย่อสองอักขระสำหรับภาษา นี่คือรูปแบบที่ใช้เมื่อ Power Apps มีข้อมูลเกี่ยวกับภาษา แต่ไม่มีข้อมูลเกี่ยวกับภูมิภาคที่เฉพาะเจาะจง
"lg‑scrp‑RE" lg เป็นตัวย่อสองอักขระสำหรับภาษา scrp เป็นตัวย่อสองอักขระสำหรับสคริปต์ และ RE เป็นตัวย่อสองอักขระสำหรับภูมิภาค

Power Apps ใช้รูปแบบ แท็กภาษา IETF BCP-47

เมื่อต้องการดูรายการของแท็กภาษาที่สนับสนุน พิมพ์ Value( "1", ) ในแถบสูตรหรือมุมมองขั้นสูง และเลื่อนไปตามรายการของตำแหน่งที่ตั้งที่แนะนำสำหรับอาร์กิวเมนต์ที่สอง

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

ไวยากรณ์

Language()

ตัวอย่าง

ตำแหน่งที่ตั้งของผู้ใช้

จะถือว่าระบบปฏิบัติการของโฮสต์และ/หรือเบราว์เซอ ร์ใช้ตำแหน่งที่ตั้งเริ่มต้นเป็นตำแหน่งที่ตั้ง

สูตร Location ค่าที่ส่งคืน
ภาษา() ลิสบอน โปรตุเกส "pt-PT"
ภาษา() รีโอเดจาเนโร บราซิล "pt-BR"
ภาษา() แอตแลนต้า สหรัฐอเมริกา "en-US"
ภาษา() แมนเชสเตอร์ สหราชอาณาจักร "en-GB"
ภาษา() ปารีส ฝรั่งเศส "fr-FR"
ภาษา() โรโซ ดอมินีกา "en"
ภาษา() เบลเกรด เซอร์เบีย "sr-cyrl-RS" หรือ "sr-latn-RS" ขึ้นกับการตั้งค่าระบบของผู้ใช้

ตารางการแปลเป็นภาษาท้องถิ่น

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

  1. สร้างตารางต่อไปนี้ใน Excel:

    ตารางการแปลเป็นภาษาท้องถิ่น

    รายการที่มี ค่าว่าง สำหรับคอลัมน์ ภาษา จะใช้เป็นค่าเริ่มต้นถ้าไม่พบสตริงข้อความที่เฉพาะเจาะจงสำหรับภาษาที่ระบุ รายการนี้ต้องปรากฏขึ้นหลังจากรายการอื่นทั้งหมดสำหรับ TextID ที่ระบุ

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

  2. ใช้ Ribbon แทรก คำสั่ง ตาราง เพื่อทำให้สิ่งนี้เป็นตาราง Excel ที่เหมาะสม ตามค่าเริ่มต้น ตารางจะมีชื่อว่า Table1 แต่คุณสามารถตั้งชื่อเป็นอะไรก็ตามที่คุณต้องการด้วย Ribbon เครื่องมือ/ออกแบบตาราง และกล่องข้อความ ชื่อตาราง: ด้านซ้ายมือสุด

  3. บันทึกไฟล์ Excel ไปยังระบบไฟล์ภายในเครื่องของคุณ

  4. ใน Power Apps ในบานหน้าต่างด้านขวา คลิกหรือแตะแท็บ แหล่งข้อมูล จากนั้นคลิกหรือแตะ เพิ่มแหล่งข้อมูล

  5. คลิกหรือแตะ เพิ่มข้อมูลแบบคงที่ไปยังแอปของคุณ คลิกหรือแตะไฟล์ Excel ที่คุณบันทึก จากนั้นคลิกหรือแตะ เปิด

  6. เลือกตารางที่คุณสร้าง จากนั้นคลิกหรือแตะ เชื่อมต่อ

ในแอปของคุณ ไม่ว่าที่ใดก็ตามที่คุณอาจจะใช้ข้อความ "Hello" ก่อนหน้า ให้ใช้สูตรนี้แทน:

  • LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText

สูตรนี้จะค้นหาค่า LocalizedText ที่เหมาะสมสำหรับภาษาของผู้ใช้ และถ้าไม่พบ จะถอยกลับไปยังเวอร์ชัน ค่าว่าง เริ่มต้น

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

Translation Service

คุณสามารถแปลข้อความตามความต้องการโดยใช้ Translation Service เช่น บริการ Microsoft Translator:

  1. ใน Power Apps ในบานหน้าต่างด้านขวา คลิกหรือแตะแท็บ แหล่งข้อมูล จากนั้นคลิกหรือแตะ เพิ่มแหล่งข้อมูล
  2. คลิกหรือแตะ Microsoft Translator

ในแอปของคุณ ไม่ว่าที่ใดก็ตามที่คุณอาจจะใช้ข้อความ "Hello" ก่อนหน้า ให้ใช้สูตรนี้แทน:

  • MicrosoftTranslator.Translate( "Hello", Language() )

บริการ Microsoft Translator ใช้แท็กภาษาเดียวกันกับที่ฟังก์ชัน Language ส่งกลับ

วิธีการนี้มาพร้อมกับข้อเสียบางอย่างเมื่อเปรียบเทียบกับตัวอย่างก่อนหน้านี้ซึ่งนำตารางที่แปลไว้ล่วงหน้าของสตริงข้อความมาใช้:

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