แชร์ผ่าน


การจัดการวงจรชีวิตของแอปพลิเคชันไลบรารีคอมโพเนนต์ (ALM)

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

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

Note

ในบทความนี้ คําว่า "นําเข้า" หมายถึงการนําเข้าคอมโพเนนต์จากไลบรารีคอมโพเนนต์ไปยังแอป และไม่ควรสับสนกับการนําเข้าโซลูชันลงใน Dataverse

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

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

การสนับสนุนโซลูชันแอป Canvas และไลบรารีคอมโพเนนต์

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

การสร้างและการส่งออกไลบรารีคอมโพเนนต์ในโซลูชัน

คุณสามารถสร้างไลบรารีคอมโพเนนต์ได้โดยตรงจากภายในโซลูชัน หรือเพิ่มลงในโซลูชันที่มีอยู่

เพิ่มไลบรารีคอมโพเนนต์ที่มีอยู่ลงในโซลูชัน หรือไลบรารีใหม่

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

Note

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

ตรวจสอบโซลูชันเริ่มต้นสําหรับสถานะไลบรารีคอมโพเนนต์ของคุณ

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

อนุญาตให้กําหนดค่าคุณสมบัติที่มีการจัดการสําหรับไลบรารีคอมโพเนนต์

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

คุณไม่สามารถแก้ไขไลบรารีคอมโพเนนต์ที่ไม่อนุญาตให้มีการกําหนดค่าเองได้

การขึ้นต่อกันของไลบรารีคอมโพเนนต์

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

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

ถ้าคุณนําเข้าโซลูชันที่มีแอปที่ใช้คอมโพเนนต์จากไลบรารีคอมโพเนนต์เท่านั้น แต่ไม่รวมไลบรารีคอมโพเนนต์ คุณจะเห็นข้อความต่อไปนี้:

"การนําเข้าล้มเหลวเนื่องจากการอ้างอิงสําหรับ <ชื่อ>แอปหายไป"

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

เมื่อมีการอัปเดตไลบรารีและนําเข้าเวอร์ชันคอมโพเนนต์ที่ใหม่กว่าผ่านโซลูชัน แอปจะได้รับการแจ้งเตือนและรับการอัปเดตเมื่อเปิดแอปเพื่อแก้ไข

Note

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

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

เคล็ดลับ

การแก้ไขคอมโพเนนต์จากไลบรารีคอมโพเนนต์ภายในแอปที่ใช้จะสร้างสําเนาภายในเครื่อง ในตอนนี้ คอมโพเนนต์ไลบรารียังคงพร้อมใช้งานผ่านบานหน้าต่าง แทรก ในการลบการขึ้นต่อกันอย่างสมบูรณ์ ให้ลบคอมโพเนนต์จาก แทรก>คอมโพเนนต์ไลบรารี>... (จุดไข่ปลา) >ลบออกจากแอป

แนวทางปฏิบัติและการแก้ไขปัญหา

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

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

  • ถ้าแอปไม่สามารถรับการอัปเดตจากคอมโพเนนต์ไลบรารีในสภาพแวดล้อมเป้าหมายที่ติดตั้งโซลูชันให้ตรวจสอบโดยใช้การดําเนินการด้านล่าง:

    • การเปลี่ยนแปลงที่เกิดขึ้นกับไลบรารีคอมโพเนนต์ในสภาพแวดล้อมเป้าหมายอยู่ที่เลเยอร์บนสุดของคอมโพเนนต์ ต่อมา การกําหนดค่าเหล่านี้จะกําหนดลักษณะการทํางานของรันไทม์ของคอมโพเนนต์ เมื่อต้องการลบการกําหนดค่าที่ไม่มีการจัดการเหล่านี้ ให้ดู ลบเลเยอร์ที่ไม่มีการจัดการ
    • กําหนดชื่อตรรกะของไลบรารีคอมโพเนนต์จากมุมมองโซลูชัน ใช้โซลูชันค่าเริ่มต้นถ้าไม่มีการเพิ่มไลบรารีไปยังโซลูชันอย่างชัดเจน
    • ดาวน์โหลดแอปโดยใช้คอมโพเนนต์ไลบรารีลงในคอมพิวเตอร์เฉพาะที่โดยใช้ไฟล์>บันทึกเป็น>คอมพิวเตอร์เครื่องนี้ เปลี่ยนชื่อไฟล์ที่ดาวน์โหลดเพื่อให้มีนามสกุล .zip และคลายการบีบอัดแพคเกจ เปิดไฟล์ Properties.json แล้วค้นหาคําสําคัญ "LibraryDependencies" คุณควรเห็นชื่อทางตรรกะของไลบรารีที่ตรงกัน
    • ถ้าคุณกําลังใช้โซลูชัน ตรวจสอบว่าแอป Canvas มีการระบุไลบรารีคอมโพเนนต์อย่างถูกต้องเป็นการพึ่งพาของโซลูชัน ถ้าโซลูชันระบุไลบรารีคอมโพเนนต์เป็นการขึ้นต่อกันของโซลูชันอย่างไม่ถูกต้อง นั่นหมายความว่าการขึ้นต่อกันของแอปไปยังลิงก์ไลบรารีคอมโพเนนต์ไม่ได้ถูกสร้างขึ้นอย่างถูกต้อง ในกรณีดังกล่าว ให้ตรวจสอบกับผู้ให้บริการโซลูชันเพื่อแก้ไขปัญหา
    • ถ้าคุณเป็นผู้เผยแพร่โซลูชัน ตรวจสอบว่า ไลบรารีคอมโพเนนต์ถูกบันทึกด้วยชื่อตรรกะไลบรารีในโซลูชัน และเหมือนกับที่อ้างอิงในแพคเกจ .msapp ไลบรารีคอมโพเนนต์
  • การส่งออกโซลูชันจะส่งออกเวอร์ชันล่าสุดของไลบรารีคอมโพเนนต์เสมอ ดังนั้นอัปเดตแอปด้วยเวอร์ชันคอมโพเนนต์ล่าสุดเสมอก่อนที่จะส่งออกผ่านโซลูชัน การดําเนินการนี้ทําให้แน่ใจว่าแอปมีคอมโพเนนต์เวอร์ชันเดียวกับที่มีอยู่ในไลบรารีคอมโพเนนต์เวอร์ชันล่าสุด แอปและไลบรารีได้รับการพิจารณาให้ซิงโครไนซ์ซึ่งกันและกันเมื่อถูกย้ายไปยังสภาพแวดล้อมเป้าหมายเป็นครั้งแรก และดังนั้น คุณจะไม่ได้รับพร้อมท์สําหรับการอัปเดตใดๆ ที่พร้อมใช้งานเมื่อแก้ไขแอป

ดูเพิ่มเติม