SAPบทช่วยสอน UI5 สำหรับผู้เริ่มต้น

⚡ สรุปอย่างชาญฉลาด

SAPUI5 คือ SAPเฟรมเวิร์ก HTML5 ที่ตอบสนองต่อทุกอุปกรณ์ (Responsive HTML5) สำหรับแอปพลิเคชันเว็บระดับองค์กรบนเดสก์ท็อป มือถือ และแท็บเล็ต คู่มือนี้จะอธิบายสถาปัตยกรรม MVC รูปแบบคอมโพเนนต์ ไลบรารี และวิธีการสร้างคอมโพเนนต์หลักและคอมโพเนนต์ย่อยภายในเฟรมเวิร์กนี้ Eclipse.

  • 📱 UI ที่ตอบสนอง: SAPUI5 ใช้ไลบรารี sap.m ดังนั้นโค้ดเบสเดียวจึงสามารถปรับให้เข้ากับหน้าจอเดสก์ท็อป แท็บเล็ต และมือถือได้โดยอัตโนมัติ
  • 🧩 แบบจำลองส่วนประกอบ: UI Components สืบทอดมาจาก sap.ui.core.UIComponent ในขณะที่ Faceless Components สืบทอดมาจาก sap.ui.core.Component เพื่อให้โค้ดสามารถนำกลับมาใช้ซ้ำได้และมีลักษณะเป็นโมดูลาร์
  • ⚙️ รูปแบบ MVC: โมเดลทำหน้าที่เก็บข้อมูล วิวทำหน้าที่แสดงผลข้อมูลในรูปแบบ XML หรือ JSON และคอนโทรลเลอร์ทำหน้าที่จัดการตรรกะของเหตุการณ์อย่างอิสระ
  • 🛠️ การติดตั้งใช้งาน NetWeaver: Eclipse สีสดสวย SAP แพ็คเกจเครื่องมือพัฒนา SAPแอปพลิเคชัน UI5 ในรูปแบบแอปพลิเคชัน BSP ที่โฮสต์อยู่บนเซิร์ฟเวอร์ส่วนหน้า ABAP
  • การส่งข้อความผ่าน Event Bus: ส่วนประกอบหลักและส่วนประกอบย่อยแลกเปลี่ยนข้อมูลผ่านช่องทางการเผยแพร่และสมัครรับข้อมูลของ sap.ui.getCore().getEventBus()

SAPบทช่วยสอน UI5 สำหรับผู้เริ่มต้น

ความหมายของ SAPUI5?

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

SAPUI5 เป็นรุ่นล่าสุดในซีรีส์ของ SAP เทคโนโลยีการพัฒนา UI เพื่อที่จะจัดให้มีการบูรณาการเว็บสำหรับพื้นฐาน SAP ระบบอีอาร์พี, SAP มาพร้อมกับเทคโนโลยีการพัฒนา UI หลายอย่าง เช่น BSP (เพจเซิร์ฟเวอร์ธุรกิจ), PDK (ชุดพัฒนาพอร์ทัล), Web Dynpro Java,เว็บ Dynpro ABAP. และผู้สืบทอดของ Web Dynpro ABAP คือ SAPUI5

SAPไอยู5 Archiเทคเจอร์

SAPไอยู5 Archiเทคเจอร์
SAPไอยู5 Archiเทคเจอร์

SAPUI Archiแผนภาพเทคเจอร์

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

SAPแอปพลิเคชัน UI5 และบริการ oData อยู่บน SAP เซิร์ฟเวอร์เกตเวย์เน็ตเวิร์กเวอร์ เลเยอร์นี้ของสถาปัตยกรรมเรียกว่า 'เลเยอร์แอปพลิเคชัน'

ตรรกะทางธุรกิจที่แท้จริงถูกนำมาใช้ใน SAP ระบบหลัก เช่น ECC, CRM และ BW สามารถนำตรรกะทางธุรกิจไปใช้ได้โดยใช้ระบบเหล่านี้ SAP โปรแกรมและโมดูลฟังก์ชัน SAP ข้อมูลธุรกรรมและข้อมูลหลักอาศัยอยู่ SAP ระบบต่างๆ ชั้นนี้เรียกว่า 'ชั้นฐานข้อมูล' หรือ 'ชั้นการคงอยู่ของข้อมูล'

SAPส่วนประกอบ UI5

คอมโพเนนต์คือส่วนของโค้ดที่สามารถนำมาใช้ซ้ำได้ มีคอมโพเนนต์ 2 ประเภทที่จัดเตรียมโดย SAPUI5:

  1. ส่วนประกอบ UI – ส่วนประกอบเหล่านี้แสดงถึงส่วนติดต่อผู้ใช้ซึ่งประกอบด้วยองค์ประกอบ UI โดยอิงตาม SAPคลาส UI5 ที่ชื่อว่า sap.ui.core.UIComponent
  2. ส่วนประกอบไร้หน้า – ส่วนประกอบเหล่านี้ไม่มีส่วนติดต่อผู้ใช้ โดยมีพื้นฐานมาจาก... SAPคลาส UI5 เรียกว่า sap.ui.core.Component

โดยพื้นฐานแล้ว Component คือโฟลเดอร์ เมื่อคุณสร้างใหม่ SAPแอปพลิเคชัน UI5 คุณจะเห็นโครงสร้างโฟลเดอร์ที่สร้างใน Project Explorer ของคุณดังนี้

SAPส่วนประกอบ UI5

ในแอปพลิเคชัน UI5 นี้ PassNum เป็นคอมโพเนนต์ ไฟล์ Component.js เป็นสิ่งจำเป็นสำหรับแอปพลิเคชัน UI5 เพื่อให้ทำงานได้เหมือนคอมโพเนนต์ทั่วไป

ต่อไปในนี้ SAPไอยู5 Eclipse บทช่วยสอน เราจะได้เรียนรู้วิธีการตั้งค่า SAPUI5

SAPการตั้งค่า UI5

ก่อนที่เราจะเริ่ม คุณต้องตรวจสอบให้แน่ใจว่า:

  1. Eclipse (เวอร์ชัน Luna) ได้รับการติดตั้งบนแล็ปท็อปของคุณแล้ว
  2. SAP เครื่องมือพัฒนาสำหรับ Eclipse Luna ได้รับการติดตั้งบนระบบของคุณแล้ว Eclipse (SAP เครื่องมือพัฒนาสำหรับ Eclipse ลูน่า – https://tools.hana.ondemand.com/luna/)
  3. SAP โปรแกรม Logon Pad ติดตั้งเรียบร้อยแล้ว และคุณสามารถเข้าถึงได้ SAP ระบบ NetWeaver Gateway สำหรับการติดตั้งและทดสอบแอปพลิเคชันที่เราจะสร้างในบล็อกนี้

หลังจากสร้างแอปพลิเคชันเสร็จสมบูรณ์แล้ว ควรมีลักษณะดังนี้:

SAPการตั้งค่า UI5

ในการนี​​้ SAPในคู่มือสอนการใช้งาน UI5 นี้ เราจะสร้างคอมโพเนนต์ 2 ตัว คือ คอมโพเนนต์หลัก (Parent Component) และคอมโพเนนต์ย่อย (Child Component) โดยเริ่มจากการสร้างคอมโพเนนต์ย่อยก่อน แล้วจึงนำไปใช้งานในคอมโพเนนต์หลัก

มาเริ่มทำให้มือของเราสกปรกกันเถอะ

ส่วนที่ 1) สร้างแอปพลิเคชันย่อย

เป้าหมายของเราคือการสร้างคอมโพเนนต์ย่อยที่จะรับค่าตัวเลขตั้งแต่ 1 ถึง 12 และแสดงชื่อเดือน ตัวอย่างเช่น เมื่อได้รับค่า 3 ก็ควรแสดงคำว่า 'มีนาคม'

ขั้นตอนที่ 1) สร้างโครงการ UI

ไปที่ไฟล์ -> ใหม่ -> อื่น ๆ ->SAPการพัฒนาแอปพลิเคชัน UI5 -> โครงการแอปพลิเคชัน

สร้างโครงการ UI

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

สร้างโครงการ UI

ป้อนชื่อโครงการ และปล่อยให้ตัวเลือกอื่นๆ เป็นไปตามที่ตัวช่วยแนะนำ

สร้างโครงการ UI

ในภาพหน้าจอข้างต้น มีห้องสมุด 2 ประเภทแสดงเป็นปุ่มตัวเลือก (radio buttons):

  1. ทรัพย์.ม
  2. sap.ui.commons

เมื่อคุณเลือก sap.m คุณกำลังบอกตัวช่วยสร้างให้สร้างโปรเจ็กต์แอปพลิเคชัน UI5 ซึ่งส่วน bootstrap จะรวมไลบรารี sap.m โดยอัตโนมัติ ซึ่งมีไว้สำหรับการสร้างเว็บแอปพลิเคชันที่ตอบสนองต่ออุปกรณ์ต่างๆ

ต่อไปในนี้ SAP ในบทช่วยสอน FIORI คุณจะเห็นส่วนหนึ่งของวิซาร์ดด้านล่างที่คุณต้องสร้างมุมมองเริ่มต้น (Initial View) มุมมองเริ่มต้นคือมุมมองที่จะแสดงผลเป็นอันดับแรกเมื่อมีการเข้าถึงแอปพลิเคชัน

สร้างโครงการ UI

ตรงนี้คุณต้องระบุชื่อของมุมมองและเลือกประเภทของมุมมอง SAPUI5 รองรับมุมมอง 4 ประเภทดังที่เห็นได้จากหน้าจอด้านบน ดังนั้น UI ของ SAPสามารถสร้างแอปพลิเคชัน UI5 ได้โดยใช้ Javaสคริปต์ หรือ XML หรือ JSON หรือ HTML ก็ได้ แล้วแต่ภาษาที่คุณถนัด

เมื่อขั้นตอนการตั้งค่าเสร็จสิ้น โครงการใหม่จะถูกสร้างขึ้นและแสดงในหน้าต่าง Project Explorer Eclipse ชอบด้านล่าง

สร้างโครงการ UI

ขั้นตอนที่ 2) รหัส Component.js

ต่อไป เรามาสร้างไฟล์ Component.js และเขียนโค้ดด้านล่างลงไปในไฟล์นั้นกัน

sap.ui.core.UIComponent.extend("DisplayMonth.Component", {

	metadata: {
	    "name": "DisplayMonth",
	    "dependencies": {
	      "components": []}
	    },

createContent: function() {
    var oViewData = {
      component: this
    };
    var oView = sap.ui.view({
      viewName: "DisplayMonth.displaymonth.DisplayMonthView",
      type: sap.ui.core.mvc.ViewType.XML,
      viewData: oViewData
    });

     return(oView);
  },

  init: function() {
    // call super init (will call function "create content")
    sap.ui.core.UIComponent.prototype.init.apply(this, arguments);

    // always use absolute paths relative to our own component
    // (relative paths will fail if running in the Fiori Launchpad)
    var sRootPath = jQuery.sap.getModulePath("DisplayMonth");


  },
});

ขั้นตอนที่ 3) รหัส Index.html

ต่อไป เราจะบอกให้ไฟล์ index.html โหลด Component.js เมื่อมีการเรียกใช้งานแอปพลิเคชัน โดยเขียนโค้ดด้านล่างลงในไฟล์ index.html

<!DOCTYPE HTML>
<html>
	<head>
	// adding meta tags to tell IE browser to render the page in IE-edge mode.
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	// adding meta tag to tell eclipse to use UTF 8 as character encoding
	<meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/>
	// Bootstrap script to tell ui5 designtime and runtime to use sap.m library, use //blue-crystal these and use complex binding syntax
		<script src="resources/sap-ui-core.js"
				id="sap-ui-bootstrap"
				data-sap-ui-libs="sap.m"
				data-sap-ui-theme="sap_bluecrystal"
				data-sap-ui-xx-bindingSyntax="complex"
				data-sap-ui-resourceroots='{"DisplayMonth": "./"}'>
		</script>

		<script>

				sap.ui.getCore().attachInit(function() {
				    new sap.m.Shell({
				      app: new sap.ui.core.ComponentContainer({
				        height : "100%",
				        name : "DisplayMonth"
				      })
				    }).placeAt("content");
				  });
		</script>

	</head>
// start of body of SAPUI5 application. It contains a div element.
	<body class="sapUiBody" role="application">
		<div id="content"></div>
	</body>
</html>

ขั้นตอนที่ 4) รหัส DisplayMonthView.view.xml

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

<html:style>
	#__xmlview1--id{
	margin-left: 30rem;
    margin-top: 9rem;
    font-size: 6rem;
    font-style: italic;
    background-color: burlywood;
	}
</html:style>
	<App id="fioricontent">
		<Page title="Child Component">
			<content>
				<Text id="id" xmlns="sap.m" text="{myModel>/monthname}"></Text>
			</content>
		</Page>
	</App>

หลังจากวางโค้ดด้านบนแล้ว หน้าจอของคุณควรมีลักษณะดังภาพด้านล่าง

โค้ด DisplayMonthView.view.xml

ขั้นตอนที่ 5) รหัส DisplayMonthView.controller.js

สุดท้ายนี้ เรามาเขียนโค้ดไฟล์ Controller ของ DisplayMonthView กันเถอะ

โค้ดส่วนนี้เขียนไว้เฉพาะในเมธอด onInit() เท่านั้น ดังนั้นจึงคัดลอกมาวางไว้ที่นี่เพียงส่วนเดียว ส่วนที่เหลือของไฟล์นั้นเป็นสิ่งที่เฟรมเวิร์กสร้างขึ้นมาโดยอัตโนมัติ

onInit : function() {
		sap.ui.getCore().getEventBus().subscribe("exchange", "data",
				function(channel, event, oEventData) {
					jsonModel = new sap.ui.model.json.JSONModel({
						monthumber : oEventData,
						monthname : ''

					});

					// derive month name from month number
					switch (jsonModel.oData.monthumber) {
					case "1":
						jsonModel.oData.monthname = 'January';
						break;
					case "2":
						jsonModel.oData.monthname = 'February';
						break;
					case "3":
						jsonModel.oData.monthname = 'March';
						break;
					case "4":
						jsonModel.oData.monthname = 'April';
						break;
					case "5":
						jsonModel.oData.monthname = 'May';
						break;
					case "6":
						jsonModel.oData.monthname = 'June';
						break;
					case "7":
						jsonModel.oData.monthname = 'July';
						break;
					case "8":
						jsonModel.oData.monthname = 'August';
						break;
					case "9":
						jsonModel.oData.monthname = 'September';
						break;
					case "10":
						jsonModel.oData.monthname = 'October';
						break;
					case "11":
						jsonModel.oData.monthname = 'November';
						break;
					case "12":
						jsonModel.oData.monthname = 'December';
						break;

					}
					this.getView().setModel(jsonModel, "myModel");

				}, this);
	},

ขั้นตอนที่ 6) การปรับใช้แอปพลิเคชันบน SAP เซิร์ฟเวอร์เกตเวย์เน็ตวีเวอร์

ปรับใช้โปรเจ็กต์และตั้งชื่อทางเทคนิคให้กับแอปพลิเคชัน BSP ที่สร้างขึ้นบนเซิร์ฟเวอร์ส่วนหน้า ABAP โดยตั้งชื่อว่า... zdisplaymonthโปรเจ็กต์ของคุณควรมีลักษณะดังต่อไปนี้

SAP เซิร์ฟเวอร์เกตเวย์ Netweaver

ส่วนที่ 2) การสร้างองค์ประกอบหลัก

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

ขั้นตอนที่ 1) สร้างใหม่ SAPแอปพลิเคชัน UI5

ไปที่ไฟล์ -> ใหม่ -> อื่น ๆ ->SAPการพัฒนาแอปพลิเคชัน UI5 -> โครงการแอปพลิเคชัน จากนั้นทำตามคำแนะนำของตัวช่วยสร้างเพื่อสร้างโครงการใหม่ SAPโครงการแอปพลิเคชัน UI5 ซึ่งได้อธิบายไว้โดยละเอียดในขั้นตอนที่ 1 ของส่วนที่ 1 ในบทช่วยสอนด้านบนนี้

ชื่อของโปรเจ็กต์คอมโพเนนต์หลักคือ หมายเลขรหัสผ่านชื่อทางเทคนิคของแอปพลิเคชัน BSP ที่สร้างขึ้นหลังการติดตั้งใช้งานคือ zpassnumโครงสร้างของโครงการจะเป็นดังด้านล่างนี้

สร้างใหม่ SAPแอปพลิเคชัน UI5

ต่อไปเรามาเขียนโค้ดในไฟล์ index.html, Component.js, PassNum.view.xml และ PassNum.controller.js กัน

ขั้นตอนที่ 2) แหล่งที่มา Code ของไฟล์ Index.html ของคอมponentหลัก

<!DOCTYPE HTML>
<html>
	<head>
// adding meta tags to tell IE browser to render the page in IE-edge mode.
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
// adding meta tag to tell eclipse to use UTF 8 as character encoding
	<meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/>
// Bootstrap script to tell ui5 designtime and runtime to use sap.m library, use //blue-crystal these and use complex binding syntax
		<script src="resources/sap-ui-core.js"
				id="sap-ui-bootstrap"
				data-sap-ui-libs="sap.m"
				data-sap-ui-theme="sap_bluecrystal"
				data-sap-ui-resourceroots='{"PassNum": "./"}'>
		</script>
		<script>
				  sap.ui.getCore().attachInit(function() {
				    new sap.m.Shell({
				      app: new sap.ui.core.ComponentContainer({
				        height : "100%",
				        name : "PassNum"
				      })
				    }).placeAt("content");
				  });

		</script>

	</head>
// start of Body of SAPUI5 application, Contains a div tag,
	<body class="sapUiBody" role="application">
		<div id="content"></div>
	</body>
</html>

ขั้นตอนที่ 3) ซอร์สโค้ดของไฟล์ Component.js ของ Parent Component

sap.ui.core.UIComponent.extend("PassNum.Component", {

	metadata: {
	    "name": "PassNum",
	    "dependencies": {
	      "components": []}
	    },

createContent: function() {
    var oViewData = {
      component: this
    };

// Creating Reference of a PassNum XML view
    var  myView = sap.ui.view({
      viewName: "PassNum.passnum.PassNum",
      type: sap.ui.core.mvc.ViewType.XML,
      viewData: oViewData
    });

     return(myView);
  },

  init: function() {
    // call super init (this will call function "create content")
    sap.ui.core.UIComponent.prototype.init.apply(this, arguments);
    // ensure to use absolute paths relative to own component
    // (running in the Fiori Launchpad, relative paths will fail)
    var sRootPath = jQuery.sap.getModulePath("PassNum");

  },
});

ขั้นตอนที่ 4) ซอร์สโค้ดของไฟล์ PassNum.view.xml

<Page title="Parent Component">
		<content>

			<VBox xmlns="sap.m" id="vboxid">

			<items>
				<Button xmlns="sap.m" id="1" text="First" press="clickbutton"
					class="sapUiSmallMarginEnd"></Button>
				<Button xmlns="sap.m" id="2" text="Second" press="clickbutton"
					class="sapUiSmallMarginEnd"></Button>
				<Button xmlns="sap.m" id="3" text="Third" press="clickbutton"
					class="sapUiSmallMarginEnd"></Button>
				<Button xmlns="sap.m" id="4" text="Fourth" press="clickbutton"
					class="sapUiSmallMarginEnd"></Button>
				<Button xmlns="sap.m" id="5" text="Fifth" press="clickbutton"
					class="sapUiSmallMarginEnd"></Button>

				<core:ComponentContainer id="conpcontid"
					name="DisplayMonth" manifestFirst="true" component="zdisplaymonth"></core:ComponentContainer>

				</items>
			</VBox>

		</content>
	</Page>

หลังจากที่คุณใช้โค้ดข้างต้นในส่วนแสดงผล (view) แล้ว ส่วนแสดงผลของคุณควรมีลักษณะดังต่อไปนี้

ซอร์สโค้ดของไฟล์ PassNum.view.xml

ขั้นตอนที่ 5) ซอร์สโค้ดของ PassNum.controller.js

มีการเปลี่ยนแปลงเฉพาะเมธอด onInit() เท่านั้น ส่วนอื่นๆ ในไฟล์นี้ยังคงเหมือนเดิม

onInit: function() {

	jQuery.sap.registerModulePath("DisplayMonth", "../zdisplaymonth");
	},

	clickbutton:function(oEvent)
	{
		sap.ui.getCore().getEventBus().publish("exchange",
				"data", oEvent.oSource.sId.split("--")[1]);


	}

ขั้นตอนที่ 6) การปรับใช้องค์ประกอบหลักไปที่ SAP เซิร์ฟเวอร์เกตเวย์เน็ตวีเวอร์

ติดตั้งแอปพลิเคชันบนเซิร์ฟเวอร์ ABAP frontend แล้วเรียกใช้งาน คุณควรจะสามารถเรียกใช้งานได้โดยการคลิกขวาที่โปรเจ็กต์แล้วเลือกตัวเลือก 'Run on ABAP server'

การปรับใช้องค์ประกอบหลักไปที่ SAP เซิร์ฟเวอร์เกตเวย์ Netweaver

ด้านล่าง URL จะเปิดใน Eclipse เบราว์เซอร์
http://hostname:8000/sap/bc/ui5_ui5/sap/zpassnum/index.html

คัดลอก URL และเรียกใช้งานในเบราว์เซอร์จริง ในตัวอย่างข้างต้น โฮสต์เนม (ที่ทำเครื่องหมายสีเหลือง) คือโฮสต์เนมของเซิร์ฟเวอร์ ABAP frontend ของคุณ

เอาท์พุต

SAP เอาต์พุตเซิร์ฟเวอร์เกตเวย์ Netweaver

คลิกที่ปุ่ม 'แรก' แล้วเดือนมกราคมจะปรากฏในส่วนประกอบย่อย

SAP เอาต์พุตเซิร์ฟเวอร์เกตเวย์ Netweaver

เพลิดเพลินกับการสร้างเว็บแอปพลิเคชันที่สวยงามและตอบสนองได้ดีโดยใช้ SAPUI5

คำถามที่พบบ่อย

SAPUI5 คือซอฟต์แวร์รุ่นเชิงพาณิชย์ที่เป็นกรรมสิทธิ์ซึ่งจัดส่งมาพร้อมกับซอฟต์แวร์ SAP ใบอนุญาต OpenUI5 เป็นชุดย่อยโอเพนซอร์สของ Apache 2.0 ซึ่งขาดส่วนควบคุมระดับองค์กรบางอย่าง เช่น สมาร์ทฟอร์ม sap.ui.comp

ฟิโอริคือ SAPระบบการออกแบบและแคตตาล็อกแอปของบริษัท SAPUI5 คือ Javaเฟรมเวิร์กสคริปต์ที่ใช้ในการแสดงผลแอป Fiori ดังนั้นทุกหน้าจอของ Fiori จึงสร้างขึ้นบนเฟรมเวิร์กนี้ SAPส่วนควบคุม UI5

เริ่มต้นด้วย sap.m สำหรับส่วนควบคุมที่ตอบสนองต่อขนาดหน้าจอ sap.ui.table สำหรับข้อมูลแบบตาราง และ sap.viz สำหรับแผนภูมิ ทั้งสามอย่างนี้ครอบคลุมหน้าจอระดับองค์กรส่วนใหญ่ที่คุณจะสร้างขึ้น

ใช่. SAP สร้าง Code และ GitHub Copilot สามารถสร้างโครงร่างมุมมอง XML, ตัวควบคุมจำลอง และการผูก JSONModel จากข้อความแจ้งด้วยภาษาธรรมชาติได้ แม้ว่านักพัฒนาจะยังคงตรวจสอบโค้ดที่สร้างขึ้นก็ตาม

ผู้ช่วย AI สร้างเคสทดสอบ OPA5 และ QUnit แนะนำค่า aria-label และแจ้งเตือนตัวจัดการแป้นพิมพ์ที่ขาดหายไป ช่วยเหลือping ทีมพบกัน SAP มาตรฐานการเข้าถึงได้เร็วขึ้น

สรุปโพสต์นี้ด้วย: