แชร์ผ่าน


สร้างแอปพื้นที่ทำงานที่มีการเชื่อมโยงโดยตรงไปยังหน้าจอเฉพาะ

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

เพื่อเชื่อมโยงโดยตรงไปยัง Power Apps คุณจะใช้ไวยากรณ์ URL นี้: https://apps.powerapps.com/play/{App ID}?{Query}

ในไวยากรณ์นี้:

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

ในบทความนี้ คุณจะเรียนรู้เกี่ยวกับวิธี:

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

ข้อกำหนดเบื้องต้น

สร้างแอป

สร้างแอป โดยใช้ตาราง บัญชี ใน Microsoft Dataverse

แอปของคุณเปิดไปยัง BrowseScreen ที่แสดงรายการบัญชีในแกลเลอรี ตามค่าเริ่มต้น แกลเลอรีนี้แสดงที่อยู่อีเมล เมือง และชื่อบัญชีผู้ใช้ แอปนี้ยังมี DetailScreen และ EditScreen

อัปเดตการนำทาง

ตอนนี้ คุณจะต้องตั้งค่าการนำทางเพื่อใช้บริบทที่เราจะใช้เพื่อนำผู้ใช้ไปยังหน้าจออื่น

  1. บนหน้าจอ BrowseScreen เลือก เค้าโครง ภายใต้คุณสมบัติแกลเลอรี แล้วเลือก ชื่อเรื่อง คำบรรยาย และเนื้อหา

    มุมมองรายการบัญชี

  2. เลือกบันทึกแรกของแกลเลอรี BrowseGallery จากนั้น ภายใต้ OnSelect ป้อนรายละเอียดต่อไปนี้:

    Navigate(DetailScreen1, Fade, {accountVal:ThisItem})
    

    ตั้งค่า AccountVal

    ฟังก์ชั่น Navigate() สร้างตัวแปรบริบทที่เรียกว่า accountVal ตัวแปรนี้จะถูกเติมเมื่อใดก็ตามที่คุณเลือกเรกคอร์ดจากแกลเลอรี เมื่อเลือกเรกคอร์ด คุณจะถูกนำไปที่ DetailScreen ด้วยค่าที่เลือก (ในตัวอย่างนี้คือ บัญชี) ใน accountVal

  3. จาก มุมมองแบบทรี ที่ด้านซ้ายของหน้าจอ ให้ขยาย DetailScreen1 และเลือก DetailForm1

    เลือก DetailForm1 จากมุมมองแบบทรี

  4. จากบานหน้าต่างคุณสมบัติทางด้านขวาของหน้าจอ ให้เลือก แก้ไขฟิลด์ และเพิ่มฟิลด์ บัญชีผู้ติดต่อหลัก และ อีเมล

    มุมมองรายละเอียดบัญชี

  5. เลือก DetailForm และตั้งค่า รายการ เป็น accountVal

    AccountVal

  6. บันทึก ด้วยชื่อ "Account deep linking"

รับรหัสแอป

รหัสแอป เป็น GUID ที่ไม่ซ้ำกัน ซึ่งแสดงถึงแอปที่กำหนด และสร้างขึ้นเมื่อคุณบันทึกแอปไปยังระบบคลาวด์

ในการรับ ID แอป ให้เปิดแท็บใหม่และไปที่ Power Apps>แอป> เลือกแอปของคุณ >รายละเอียด ข้อมูลเพิ่มเติม: รับรหัสแอป

รายละเอียดแอป

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

  1. เลือก แอป จาก มุมมองแบบทรี บนด้านซ้ายของหน้าจอ

    เคล็ดลับ

    ถ้าคุณปิด Power Apps Studio ให้เปิดแอป "การเชื่อมโยงโดยตรงกับบัญชี" ที่บันทึกไว้อีกครั้ง โดย การแก้ไข แอป

  2. เลือกคุณสมบัติ OnStart จากรายการคุณสมบัติ

  3. เพื่อจัดเก็บค่า รหัสแอป อัปเดตสูตรคุณสมับติ OnStart ดังต่อไปนี้

    Set(AppID, "GUID");
    If(Not(IsBlank(Param("accountId"))),Set(accountId,Param("accountId")));
    

    ในสูตรนี้ ฟังก์ชัน Set() กำหนด รหัสแอป ไปยัง GUID ของแอป และฟังก์ชัน Param() เก็บค่าในตัวแปร accountId เมื่อไม่เว้นว่าง

    หมายเหตุ

    ตรวจสอบให้แน่ใจว่าคุณได้แทนที่ "GUID" ในสูตรข้างต้นเป็นรหัสแอปของคุณตามความเหมาะสม

    สูตร App OnStart พร้อมฟังก์ชัน Set และ Param

  4. เลือกคุณสมบัติ StartScreen สำหรับแอป และเพิ่มสิ่งต่อไปนี้:

    If(Not(IsBlank(Param("accountId"))),DetailScreen1,BrowseScreen1)
    

    ฟังก์ชันนี้จะตรวจสอบว่า Param ว่างหรือไม่ จากนั้นให้อยู่บน BrowseScreen1 หรือไปที่ DetailScreen1

    สูตร App StartScreen พร้อมฟังก์ชัน Param เพื่อเปลี่ยนเส้นทางหรือคงอยู่ตามค่าตัวแปร

  5. เลือก DetailScreen1 จาก มุมมองแบบทรี

  6. เลือกคุณสมบัติ OnVisible และป้อนรายละเอียดต่อไปนี้:

    If(Not(IsBlank(accountId)), UpdateContext({accountVal:LookUp(Accounts, Account = GUID(accountId))}))
    

    ฟังก์ชันนี้ใช้ accountId ที่เก็บไว้จากขั้นตอนก่อนหน้า เพื่อตั้งค่าตัวแปร accountVal

    DetailScreen1 พร้อมสูตรคุณสมบัติ OnVisible

แอปของคุณได้รับการกำหนดค่าให้รับ accountId เป็นพารามิเตอร์ที่มี GUID สำหรับบัญชีจากตาราง บัญชี และเมื่อพารามิเตอร์นี้ได้รับการร้องขอไปยังแอป แอปจะเปิดหน้าจอรายละเอียดโดยตรง (DetailScreen1) กับ accountId ที่ให้มา

ในการเรียกใช้แอปด้วยค่าพารามิเตอร์ เราต้องใช้ไวยากรณ์ต่อไปนี้:

https://apps.powerapps.com/play/{App ID}?{Query}

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

ตัวอย่างเช่น เมื่อป้อน URL ต่อไปนี้ในเบราว์เซอร์สำหรับผู้เช่าตัวอย่าง แอป Account deep linking จะเปิดโดยตรงกับค่าพารามิเตอร์ accountId ที่ให้มา (ในตัวอย่างนี้คือ "A. Datum Corporation (Sample)"): https://apps.powerapps.com/play/061b64cd-e5a0-4a7a-a77f-b6f8586dd6c7?accountId=01e5bf81-7d44-ec11-8c60-002248094566

ลิงค์ตัวอย่างกับรายละเอียด A. Datum Corporation (ตัวอย่าง) เปิด

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

เพื่อจุดประสงค์นี้ เราจะสร้างปุ่มและเพิ่มความสามารถในการเรียกใช้อีเมลจากภายในแอปด้วยลิงก์การเชื่อมโยงโดยตรง ไปยังหน้าจอรายละเอียดของบัญชีที่เลือกจากแอป Account deep linking

  1. เลือก ข้อมูล จากทางด้านซ้ายของหน้าจอ

  2. เลือก เพิ่มข้อมูล> ค้นหาและเลือก Office 365 Outlook> เลือก เชื่อมต่อ

    หมายเหตุ

    การกระทำนี้จะเพิ่มการเชื่อมต่อ Microsoft 365 Outlook เพื่อให้เราสามารถใช้ขั้นตอนต่อไปเพื่อเรียกใช้การเขียนอีเมลเพื่อแบ่งปันข้อมูลบัญชี

  3. เลือก DetailScreen1 จาก มุมมองแบบทรี

  4. แทรกปุ่มที่ด้านล่างขวาของหน้าจอ และเปลี่ยนชื่อเป็น ใช้บัญชีร่วมกัน

  5. บนปุ่มคุณสมบัติของ OnSelect ป้อนข้อมูลต่อไปนี้:

    Office365Outlook.SendEmailV2("Recipient", "Subject", "Here's the deep link to the selected account - https://apps.powerapps.com/play/{App ID}?accountId=" & accountVal.Account)
    

    สูตรนี้ใช้ตัวเชื่อมต่อ Microsoft 365 สำหรับ Outlook เพื่อส่งอีเมล โดยใช้การดำเนินการ SendEmailV2

    หมายเหตุ

    แทนที่ ผู้รับเรื่อง และ AppID ในสูตรด้านบนที่มีที่อยู่อีเมลของผู้รับ หัวเรื่องของอีเมล และ ID ของแอป

    ปุ่ม แบ่งปันบัญชี

  6. บันทึกและเผยแพร่ แอป

ทดสอบแอป

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

อีเมลที่ส่งโดยใช้ปุ่ม แบ่งปันบัญชี

เปิดอีเมล และคัดลอกลิงก์การเชื่อมโยงโดยตรงที่ชี้ไปยังบัญชีที่เลือก และคุณจะถูกนำไปที่หน้าจอรายละเอียดบัญชีในแอป Account deep linking โดยตรง แทนหน้าจอเรียกดูเริ่มต้น

เปิดแอปโดยใช้ลิงก์จากอีเมล

ดูเพิ่มเติม