สร้างแอปพื้นที่ทำงาน
Power Apps เป็นแพลตฟอร์มประสิทธิภาพสูงสำหรับแอปธุรกิจ คุณสามารถสร้างแอปที่เหมาะกับพิกเซลได้อย่างลงตัวด้วยพลังของพื้นที่ทำงานเปล่าใน Power Apps Studio เพื่อแบ่งปันกับผู้ใช้ของคุณ แสดงผลแอปในเบราว์เซอร์หรือฝังอยู่ในคอนเทนเนอร์ต่างๆ เช่น Teams และไซต์ SharePoint
ประสบการณ์ผู้ใช้หลักสำหรับโซลูชันแม่แบบการจัดซื้อจัดจ้างของ SAP สร้างขึ้นโดยใช้แอปพื้นที่ทำงาน และสามารถขยายเพื่อรองรับความต้องการทางธุรกิจในพื้นที่ของคุณได้อย่างง่ายดาย เพื่อเริ่มต้นใช้งาน ทำตามรูปแบบและแนวทางปฏิบัติที่ดีที่สุดในบทความนี้
ปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดและมาตรฐาน
แอปทั้งหมดได้รับการพัฒนาโดยใช้แนวทางปฏิบัติที่ดีที่สุดและมาตรฐานที่เผยแพร่ เราขอแนะนำให้คุณนำแนวทางปฏิบัติที่ดีที่สุดและมาตรฐานที่เหมือนกันหรือคล้ายคลึงกันมาใช้เมื่อคุณขยายหรือสร้างแอปใหม่
แบบมาตรฐาน | ความคิดเห็น | ข้อมูลเพิ่มเติม |
---|---|---|
สถานะคุณลักษณะ | คุณลักษณะที่เปิดหรือปิดตามค่าเริ่มต้น รวมชุดย่อยของคุณลักษณะรุ่นพรีวิว ยกเว้นคุณลักษณะรุ่นทดลอง | ทำความเข้าใจคุณลักษณะทดลอง พรีวิว และคุณลักษณะที่เลิกใช้แล้วในแอป Canvas |
การตอบสนอง | ตอบสนองต่ออุปกรณ์ประเภทเดียว เช่น แท็บเล็ตหรือมือถือ อนุญาตให้แอปสแนปไปยังหน้าจอมาตรฐานและขนาดคอนเทนเนอร์ต่างๆ รวมถึงการฝังแอปไว้ภายใน Microsoft Teams ใช้การควบคุมคอนเทนเนอร์ที่ตอบสนองการจัดวางอัตโนมัติได้กว้างขวาง | การสร้างแอปพลิเคชันแคนวาสที่ตอบสนอง |
มาตรฐานการตั้งชื่อและการกำหนดโค้ด | ตัวควบคุม ตัวแปร คอลเลกชัน และมาตรฐานการตั้งชื่อ Dataverse ได้รับการปฏิบัติตามเพื่อส่งเสริมให้ค้นพบและบำรุงรักษาได้ง่าย | Power Apps มาตรฐานและแนวทางการเขียนโค้ดแอป Canvas |
ความสามารถเข้าถึง | คุณสมบัติที่สนับสนุนการช่วยสำหรับการเข้าถึง ตัวอย่างเช่น ป้ายชื่อที่เข้าถึงได้ บทบาท การใช้งานจริง โฟกัส ความหนาของเส้นขอบ ความคมชัดของสี และลำดับแท็บ คุณสมบัติเหล่านี้หลีกเลี่ยงรูปแบบการออกแบบที่ทราบซึ่งไม่รองรับข้อกำหนดการช่วยสำหรับเข้าถึง | สร้างแอปแคนวาสที่สามารถเข้าถึงได้ และ ข้อจำกัดการเข้าถึงในแอปแคนวาส |
ประสิทธิภาพ | มีการปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดเพื่อหลีกเลี่ยงข้อจำกัดด้านประสิทธิภาพที่ทราบ | เคล็ดลับและแนวทางปฏิบัติที่ดีที่สุดในการปรับปรุงประสิทธิภาพของแอปแคนวาส |
ธีมสีของแอปส่วนกลาง
แอปทั้งหมดเป็นไปตามธีมที่กำหนดเองและสามารถเปลี่ยนแปลงได้ตามรูปแบบสีที่องค์กรของคุณต้องการ ตัวแปรส่วนกลาง ถูกตั้งค่าในคุณสมบัติ App.OnStart ในแอปทั้งหมด ตัวแปรนี้ถูกใช้โดยคุณสมบัติที่เกี่ยวข้องกับสีส่วนใหญ่ในตัวควบคุมทั้งหมดในแอป การเปลี่ยนตัวแปรธีมสีร่วมในที่เดียวจะมีผลทันทีทั่วทั้งแอปหลังจากเรียกใช้เหตุการณ์ App.OnStart
สำคัญ
แม้ว่าจะสามารถเปลี่ยนคุณสมบัติของชุดแบบสีได้หลากหลาย เราขอแนะนำให้เปลี่ยนเฉพาะคุณสมบัติสีหลักในตัวแปรชุดรูปแบบส่วนกลางเท่านั้น
Set(
varThemeColors,
{
background: ColorValue("#FAF9F8"),
backgroundFill: ColorValue("#FFFFFF"),
backgroundFillDisabled: ColorValue("#F3F2F1"),
text: ColorValue("#201F1E"),
altText: ColorValue("#FFFFFF"),
disabledText: ColorValue("#A19F9D"),
primary: ColorValue("#0078D4"),
secondary: ColorValue("#EFF6FC"),
tertiary: ColorValue("#005A9E"),
primaryGray: ColorValue("#8A8886"),
secondaryGray: ColorValue ("#C8C6C4"),
tertiaryGray: ColorValue("#605E5C"),
requiredRed: ColorValue("#A80000"),
lookupBlue: ColorValue("#0078D4")
}
)
เพิ่มโลโก้องค์กรของคุณ
เพิ่มโลโก้บริษัทของคุณลงในแอปโดยอัปโหลดไฟล์รูปภาพโลโก้ของบริษัทไปที่แอปก่อน แล้วจึงเพิ่มลงในส่วนประกอบ ScreenHeader
ข้อมูลเพิ่มเติม: การใช้ไฟล์มัลติมีเดียในแอปพื้นที่ทำงาน
การสนับสนุนการแปลเป็นภาษาท้องถิ่นและแอปส่วนกลาง
แอปพื้นที่ทำงานทั้งหมดโดยค่าเริ่มต้นจะรองรับภาษาอังกฤษ อย่างไรก็ตาม แอปทั้งหมดได้รับการออกแบบมาให้ พร้อมสำหรับการแปลเป็นภาษาท้องถิ่น และสามารถจัดการให้รองรับภาษาต่างๆ ได้มากขึ้น คุณสมบัติการควบคุมความกว้างอาจต้องเปลี่ยนแปลงโดยตรงขึ้นอยู่กับภาษาที่เลือกเพื่อปรับใช้
รูปแบบการแปลเป็นภาษาท้องถิ่นของสตริง
- ในคุณสมบัติ OnVisible ของหน้าจอแรกระหว่างการเปิดแอป แอปจะอ่านการตั้งค่าภาษาของเบราว์เซอร์ของผู้ใช้และระบุค่าตัวเลือก รหัสภาษา ISO
Set(
varISOUserLanguageCode,
Switch(
Left(
Language(),
2
),
"ar",
'ISO Language Code'.ar,
"de",
'ISO Language Code'.de,
"en",
'ISO Language Code'.en,
"es",
'ISO Language Code'.es,
"fr",
'ISO Language Code'.fr,
"he",
'ISO Language Code'.he,
"it",
'ISO Language Code'.it,
"ja",
'ISO Language Code'.ja,
"pt",
'ISO Language Code'.pt,
"zh",
'ISO Language Code'.zh,
'ISO Language Code'.en
)
)
หมายเหตุ
คุณสมบัติตัวควบคุมป้ายชื่อและการป้อนข้อมูลพยายามคาดการณ์ความกว้างของค่าข้อความที่แปลเป็นภาษาท้องถิ่น แต่อาจไม่สำเร็จเสมอไปเนื่องจากความซับซ้อนในการคำนวณ ดังนั้น เราขอแนะนำให้คุณทดสอบและแก้ไขแอปเล็กน้อยทุกครั้งเมื่อมีการแปลสตริงและทำการเปลี่ยนแปลง
เคล็ดลับ
สามารถเพิ่มและสนับสนุนภาษาเพิ่มเติมได้โดยการเพิ่มค่าให้กับส่วนประกอบตัวเลือก รหัสภาษา ISO ที่มีอยู่ในโซลูชัน SAP Base
แอปสอบถามเอนทิตี การแปลเป็นภาษาท้องถิ่นของ SAP ใน Dataverse สำหรับสตริงที่ได้รับการแปลเป็นภาษาท้องถิ่นตามภาษาที่เข้าสู่ระบบของผู้ใช้และแคชไว้ในคอลเลกชัน
ClearCollect(
colUserLocalizedStrings,
Filter(
'SAP Localizations',
Language = varISOUserLanguageCode,
'SAP Localizations (Views)'.'Active SAP Localizations'
)
)
คุณสมบัติที่เกี่ยวข้องกับข้อความทั้งหมดภายในตัวควบคุมต่างๆ เช่น ข้อความ, HintText, ป้ายชื่อที่เข้าถึงได้, InputTextPlaceholder, NoSelectionText และ ToolTips มีสูตรที่ค้นหาสตริงที่แปลเป็นภาษาท้องถิ่นก่อน หากไม่พบสิ่งที่เทียบเท่า จะมีค่าเริ่มต้นเป็นภาษาอังกฤษ ซึ่งตั้งค่าไว้ในคุณสมบัติ Text ภายในบล็อก With
With(
{Text: "Vendor name"},
If(
IsBlank(
LookUp(
colUserLocalizedStrings,
'English Value' = Text
).'Localized Value'
),
Text,
LookUp(
colUserLocalizedStrings,
'English Value' = Text
).'Localized Value'
)
)
สำหรับตัวควบคุม กล่องคำสั่งผสม ที่กรองค่าจากตาราง รายการค่าของ SAPรหัสภาษา ISO ที่แมปของผู้ใช้จากการตั้งค่าเบราว์เซอร์จะถูกนำไปใช้กับเกณฑ์การกรองเสมอ โดยตั้งค่าเริ่มต้นเป็นภาษาอังกฤษ หากไม่มีการจัดการรายการค่าสำหรับภาษาของพวกเขา
Sort(
Filter(
'SAP List of Values',
Status = 'Status (SAP List of Values)'.Active,
Domain = 'Domain (SAP List of Values)'.Country,
Language = varISOUserLanguageCode
),
'Display Value'
)
การตั้งค่าภาษาของเบราว์เซอร์
ฟิลด์ตัวเลข วันที่และเวลาทั้งหมดในแอปพื้นที่ทำงานเป็นไปตามการตั้งค่าภาษาเบราว์เซอร์ของผู้ใช้ตามค่าเริ่มต้น ตัวอย่างเช่น วันที่แสดงเป็น 3/23/2023 สำหรับผู้ใช้ที่ใช้สหรัฐอเมริกา เนื่องจากการตั้งค่าภาษาจะแสดงเป็น 23.03.2023 สำหรับผู้ใช้ที่ใช้การตั้งค่าภาษาของเยอรมนี
ข้อมูลเพิ่มเติม: สร้างการสนับสนุนส่วนกลางลงในแอปพื้นที่ทำงาน
คอมโพเนนต์
ส่วนประกอบเป็นวิธีที่ดีในการลดความซับซ้อนของกระบวนการพัฒนาและบำรุงรักษาแอปและช่วยปรับปรุงประสิทธิภาพ
สำหรับพื้นที่ที่ต้องการประสบการณ์ผู้ใช้ทั่วไป ทั้งภายในหรือระหว่างแอป ส่วนประกอบจะได้รับการกำหนดค่า ด้วยข้อจำกัดของไลบรารีส่วนประกอบเพื่อรองรับสิ่งต่างๆ เช่น การเข้าถึงขอบเขตแอปและโฟลว์ระบบคลาวด์แบบฝัง ส่วนประกอบภายในเครื่องจึงสามารถใช้ได้ในแอปทั้งหมด จากนั้นจึงนำเข้าไปยังแอปอื่นๆ ได้
ตัวอย่างเช่น มีการใช้ส่วนประกอบ VendorSearch ในแอปทั้งหมดที่รองรับกระบวนการจัดซื้อถึงชำระเงิน และสร้างขึ้นภายในแอป SAP Vendor Management เป็นหลัก และนำเข้าเพื่อใช้ภายในแอปการจัดซื้อถึงชำระเงินอื่นๆ
คำเตือน
ผลเสียของการใช้คอมโพเนนต์ของแอปในเครื่องกับไลบรารีคอมโพเนนต์คือหากมีการเปลี่ยนแปลง การเปลี่ยนแปลงเหล่านั้นจำเป็นต้องทำกับแอปทั้งหมดที่นำเข้าส่วนประกอบนั้นแล้ว
ส่วนประกอบที่ใช้ร่วมกันที่ใช้ตลอดทั้งแอป:
คอมโพเนนต์ | คำอธิบาย |
---|---|
ScreenHeader | ส่วนหัวที่ใช้ร่วมกันในทุกหน้าจอ |
LeftNavigation | การนำทางหลักที่ช่วยให้เข้าถึงแอปอื่นที่ทำงานได้อย่างรวดเร็วโดยที่มาของ รายการเมนูใน Dataverse |
CommandBar | รายการตัวควบคุมทั่วไปของออบเจ็กต์ สร้าง, เปลี่ยน, บันทึก, ยกเลิก, ค้นหา, ค้นหาล่าสุด หรือ ค้นหาขั้นสูง |
ScreenTabs | กลุ่มของส่วนประกอบทางตรรกะที่จัดเรียงเข้าด้วยกันเป็นแท็บเพื่อการนำทางที่ง่ายดาย |
NoItemsDisplay | รายการจะแสดงเป็นกริดเมื่อไม่มีเรกคอร์ด |
ObjectNameSearch | ส่วนประกอบการค้นหาอ็อบเจกต์ SAP ที่ใช้ร่วมกันจะรวมอยู่ในแอปที่เหมาะสมซึ่งใช้และสามารถนำเข้าไปยังแอปอื่นๆ ได้หากจำเป็น ตัวอย่าง ได้แก่ VendorSearch, GLAccountSearch, MaterialSearch และ RequisitionSearch |
ข้อมูลเพิ่มเติม: ภาพรวมส่วนประกอบของพื้นที่ทำงาน
ฟิลด์ SAP เพิ่มเติม
การใช้งาน SAP ทุกครั้งนั้นแตกต่างกัน และคาดว่าคุณจะเพิ่มฟิลด์ของคุณเองเพื่อรองรับกระบวนการทางธุรกิจของคุณอย่างเต็มที่ ดังนั้น จึงมีการใช้พื้นที่หน้าจอที่เพียงพอและข้อควรพิจารณาในการออกแบบเพื่อให้คุณเพิ่มฟิลด์ที่คุณต้องการได้อย่างง่ายดาย
คอนเทนเนอร์ตัวควบคุมที่ใช้ร่วมกัน
ตัวควบคุมส่วนใหญ่มีอยู่ในคอนเทนเนอร์ซึ่งประกอบด้วยตัวควบคุม label และ input ตัวอย่างเช่น ฟิลด์สำหรับบันทึกชื่อผู้จัดจำหน่ายภายในแอปการจัดการผู้จัดจำหน่าย SAP ประกอบด้วยตัวควบคุม label และ input ดังที่เห็นในภาพหน้าจอที่ตามมา หากต้องการเพิ่มฟิลด์ใหม่ ให้คัดลอกคอนเทนเนอร์ตัวควบคุมที่มีอยู่ แล้ววางในส่วนประกอบการตอบสนองที่เหมาะสม อัปเดตชื่อ ข้อความ และฟิลด์ที่แมปในท้ายที่สุด
หมายเหตุ
มีคอนเทนเนอร์ที่คล้ายกันสำหรับตัวควบคุม input ประเภทอื่นๆ เช่น Comboboxes, Date Pickers และ Buttons
คอนเทนเนอร์ที่ตอบสนองอุปกรณ์
แอปได้รับการออกแบบให้ตอบสนองต่อประเภทอุปกรณ์แท็บเล็ต/เดสก์ท็อปโดยใช้ตัวควบคุมคอนเทนเนอร์แนวตั้งและแนวนอนอย่างที่แสดงในภาพหน้าจอที่ตามมา คอนเทนเนอร์เหล่านี้ได้รับการกำหนดค่าให้มีจุดเริ่มต้นสำหรับคุณสมบัติต่างๆ เช่น ความสูง, ความกว้าง, LayoutMinHeight, LayoutMinWidth และ ครอบ เมื่อคุณเพิ่มฟิลด์เพิ่มเติมในคอนเทนเนอร์เหล่านี้ ตรวจสอบให้แน่ใจว่าคุณสมบัติเหล่านี้ได้รับการอัปเดตด้วยเพื่อจัดการการตอบสนองอย่างเหมาะสมต่อไป
ข้อมูลเพิ่มเติม: จัดวางเค้าโครงการคอนเทนเนอร์อัตโนมัติ
เชื่อมต่อกับข้อมูลอื่นๆ
ความสามารถของแอปพื้นที่ทำงานคือสามารถเชื่อมต่อกับหนึ่งในระบบและแอปพลิเคชันอื่นๆ อีกหลายร้อยระบบอย่างปลอดภัยโดยใช้ไลบรารีตัวเชื่อมต่อแบบเนทีฟ
ตัวอย่างเช่น หากกระบวนการใบสั่งซื้อของการจัดซื้อจัดจ้าง SAP ของคุณต้องการข้อมูลจากโอกาสทางการขายล่วงหน้าที่มีอยู่ใน CRM เพื่อให้กระบวนการเสร็จสมบูรณ์ คุณสามารถใช้ตัวเชื่อมต่อ Salesforce หรือ Dataverse เพื่อรวมเข้ากับ Dynamics 365 เพื่อให้คุณสามารถเพิ่มข้อมูลนั้นไปยังแอปใบสั่งซื้อ SAP ได้อย่างง่ายดายด้วยการกดปุ่มเพียงปุ่มเดียว
นอกจากนี้ หากคุณมีระบบที่เป็นกรรมสิทธิ์ภายในหรือระบบที่ไม่มีตัวเชื่อมต่อดั้งเดิม คุณสามารถทำงานร่วมกับทีมไอทีเพื่อสร้างตัวเชื่อมต่อแบบกำหนดเองที่ช่วยให้ Power Apps สามารถเชื่อมต่อกับระบบนั้นได้อย่างง่ายดายผ่าน API ที่รองรับ
ข้อมูลเพิ่มเติม:
การจัดการข้อผิดพลาดของแอป
การเรียกใช้โฟลว์แบบฝังทั้งหมดจะประเมินฟิลด์สถานะการตอบสนองที่โฟลว์ส่งกลับโดยค่าเริ่มต้น และจัดการโดยเพิ่มข้อความผ่านฟังก์ชัน Notify หากต้องการเรียนรู้เพิ่มเติม โปรดดู การจัดการข้อผิดพลาด
If(
!IsBlank(FirstError.Message),
Patch(
'SAP Integration Errors',
Defaults('SAP Integration Errors'),
{
Action: FirstError.Source,
'Additional Information': App.ActiveScreen.Name,
'Error Message': FirstError.Message,
Name: "SAP Vendor Management",
'Source Type': 'Source Type (SAP Integration Errors)'.'Power App',
'Workflow Status': 'Workflow Status (SAP Integration Errors)'.Failed
}
);
Trace(FirstError.Message);
Error(FirstError);
)
ข้อยกเว้นที่ไม่คาดคิดทั้งหมดที่สร้างโดยแอปได้รับการจัดการในคุณสมบัติ App.OnError โดยที่เรกคอร์ด ข้อผิดพลาดเทมเพลตสำหรับโซลูชัน SAP ถูกสร้างขึ้นก่อนที่ข้อผิดพลาดจะถูกส่งใหม่และติดตาม ผู้ดูแลระบบสามารถดูรายละเอียดข้อผิดพลาดและกำหนดทริกเกอร์เพื่อแจ้งเตือนเกี่ยวกับ ข้อยกเว้นที่ไม่ได้รับการจัดการของแอป ดังที่เห็นในเอกสาร ตรวจสอบข้อผิดพลาด
ข้อมูลเพิ่มเติม: คุณสมบัติ OnError
เนื้อหาที่เกี่ยวข้อง
- แอพ Canvas คืออะไร?
- เข้าใจ Power Apps Studio
- สร้างแอปแคนวาสจากภายในโซลูชัน
- การสร้าง UI ที่นำมาใช้ซ้ำได้ด้วยกรอบงานส่วนประกอบและส่วนประกอบแอปแคนวาส Power Apps
- จัดการ Microsoft Power Platform
- แอป Canvas สำหรับนักพัฒนาองค์กร พันธมิตร และ ISV
ขั้นตอนถัดไป
ขยายแอปที่ขับเคลื่อนด้วยโมเดลและ Dataverse