PageSourceSearch

https://abapblog.github.io/network/developing-and-extending-sap-fiori-elements-apps/index.htm

html abapblog.github.io collected 2026-10-03 08:32:03 UTC 44,198 bytes, 347 lines download raw bytes

1<!DOCTYPE html>
2<html lang="ru-RU" id="html">
3<head>
4		<meta charset="UTF-8">
5	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6	<meta name="viewport" content="width=device-width, initial-scale=1.0">
7	<link rel="profile" href="../../xfn/11.html">
8	<link rel="pingback" href="https://abap-blog.ru/xmlrpc.php">
9	<title>ABAP Blog | Developing and Extending SAP Fiori Elements Apps</title>
10
11		<!-- All in One SEO 4.1.4.4 -->
12		<meta name="description" content="На OpenSAP анонсировали курс посвящённый разработке и расширению приложений на базе Fiori Elements, темы курса: Week 1: Introducing SAP Fiori Elements Week 2: Building Your First SAP Fiori Elements App Week 3: Using More SAP Fiori Elements Capabilities Week 4: Extending a Standard SAP Fiori App Week 5: Final Exam">
13		<meta name="robots" content="max-image-preview:large">
14		<meta name="keywords" content="ui5 &amp; fiori,сетевые технологии">
15		<link rel="canonical" href="index.htm">
16		
16<script type="application/ld+json" class="aioseo-schema">
17			{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/abap-blog.ru\/#website","url":"https:\/\/abap-blog.ru\/","name":"ABAP Blog","description":"\u0412\u0441\u0435 \u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445 \u043e\u0442 SAP","inLanguage":"ru-RU","publisher":{"@id":"https:\/\/abap-blog.ru\/#person"}},{"@type":"Person","@id":"https:\/\/abap-blog.ru\/#person","name":"Astrafox","image":{"@type":"ImageObject","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/907cc9d3a027be8998658f18c0a7fa4e?s=96&d=retro&r=g","width":96,"height":96,"caption":"Astrafox"}},{"@type":"BreadcrumbList","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/abap-blog.ru\/#listItem","position":1,"item":{"@type":"WebPage","@id":"https:\/\/abap-blog.ru\/","name":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f","description":"\u0412\u0441\u0435 \u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0432 SAP \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445: ABAP, HANA, UI5, OData, Fiori.","url":"https:\/\/abap-blog.ru\/"},"nextItem":"https:\/\/abap-blog.ru\/network\/#listItem"},{"@type":"ListItem","@id":"https:\/\/abap-blog.ru\/network\/#listItem","position":2,"item":{"@type":"WebPage","@id":"https:\/\/abap-blog.ru\/network\/","name":"\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438","description":"\u041d\u0430 OpenSAP \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043a\u0443\u0440\u0441 \u043f\u043e\u0441\u0432\u044f\u0449\u0451\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u0431\u0430\u0437\u0435 Fiori Elements, \u0442\u0435\u043c\u044b \u043a\u0443\u0440\u0441\u0430: Week 1: Introducing SAP Fiori Elements Week 2: Building Your First SAP Fiori Elements App Week 3: Using More SAP Fiori Elements Capabilities Week 4: Extending a Standard SAP Fiori App Week 5: Final Exam","url":"https:\/\/abap-blog.ru\/network\/"},"nextItem":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#listItem","previousItem":"https:\/\/abap-blog.ru\/#listItem"},{"@type":"ListItem","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#listItem","position":3,"item":{"@type":"WebPage","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/","name":"Developing and Extending SAP Fiori Elements Apps","description":"\u041d\u0430 OpenSAP \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043a\u0443\u0440\u0441 \u043f\u043e\u0441\u0432\u044f\u0449\u0451\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u0431\u0430\u0437\u0435 Fiori Elements, \u0442\u0435\u043c\u044b \u043a\u0443\u0440\u0441\u0430: Week 1: Introducing SAP Fiori Elements Week 2: Building Your First SAP Fiori Elements App Week 3: Using More SAP Fiori Elements Capabilities Week 4: Extending a Standard SAP Fiori App Week 5: Final Exam","url":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/"},"previousItem":"https:\/\/abap-blog.ru\/network\/#listItem"}]},{"@type":"Person","@id":"https:\/\/abap-blog.ru\/author\/admin\/#author","url":"https:\/\/abap-blog.ru\/author\/admin\/","name":"Astrafox","image":{"@type":"ImageObject","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/907cc9d3a027be8998658f18c0a7fa4e?s=96&d=retro&r=g","width":96,"height":96,"caption":"Astrafox"}},{"@type":"WebPage","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#webpage","url":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/","name":"ABAP Blog | Developing and Extending SAP Fiori Elements Apps","description":"\u041d\u0430 OpenSAP \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043a\u0443\u0440\u0441 \u043f\u043e\u0441\u0432\u044f\u0449\u0451\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u0431\u0430\u0437\u0435 Fiori Elements, \u0442\u0435\u043c\u044b \u043a\u0443\u0440\u0441\u0430: Week 1: Introducing SAP Fiori Elements Week 2: Building Your First SAP Fiori Elements App Week 3: Using More SAP Fiori Elements Capabilities Week 4: Extending a Standard SAP Fiori App Week 5: Final Exam","inLanguage":"ru-RU","isPartOf":{"@id":"https:\/\/abap-blog.ru\/#website"},"breadcrumb":{"@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#breadcrumblist"},"author":"https:\/\/abap-blog.ru\/author\/admin\/#author","creator":"https:\/\/abap-blog.ru\/author\/admin\/#author","datePublished":"2021-04-20T17:54:59+04:00","dateModified":"2021-04-20T17:54:59+04:00"},{"@type":"Article","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#article","name":"ABAP Blog | Developing and Extending SAP Fiori Elements Apps","description":"\u041d\u0430 OpenSAP \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043a\u0443\u0440\u0441 \u043f\u043e\u0441\u0432\u044f\u0449\u0451\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u0431\u0430\u0437\u0435 Fiori Elements, \u0442\u0435\u043c\u044b \u043a\u0443\u0440\u0441\u0430: Week 1: Introducing SAP Fiori Elements Week 2: Building Your First SAP Fiori Elements App Week 3: Using More SAP Fiori Elements Capabilities Week 4: Extending a Standard SAP Fiori App Week 5: Final Exam","inLanguage":"ru-RU","headline":"Developing and Extending SAP Fiori Elements Apps","author":{"@id":"https:\/\/abap-blog.ru\/author\/admin\/#author"},"publisher":{"@id":"https:\/\/abap-blog.ru\/#person"},"datePublished":"2021-04-20T17:54:59+04:00","dateModified":"2021-04-20T17:54:59+04:00","articleSection":"UI5 &amp; Fiori, \u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438","mainEntityOfPage":{"@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#webpage"},"isPartOf":{"@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#webpage"},"image":{"@type":"ImageObject","@id":"https:\/\/abap-blog.ru\/network\/developing-and-extending-sap-fiori-elements-apps\/#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/907cc9d3a027be8998658f18c0a7fa4e?s=96&d=retro&r=g","width":96,"height":96,"caption":"Astrafox"}}]}
18		</script>
18
19		
19<script type="text/javascript">
20			window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
21			ga('create', "UA-150412824-1", { 'cookieDomain': 'abap-blog.ru' } );
22			ga('require', 'outboundLinkTracker');
23			ga('send', 'pageview');
24		</script>
24
25		
25<script async="" src="../../analytics.js"></script>
25
26		
26<script async="" src="../../wp-content/plugins/all-in-one-seo-pack/app/Common/Assets/js/autotrack.js?ver=4.1.4.4"></script>
26
27		<!-- All in One SEO -->
28
29<link rel='dns-prefetch' href='../../index-1.htm'>
30<link rel='dns-prefetch' href='//fonts.googleapis.com'>
31<link rel='dns-prefetch' href='../../index-2.htm'>
32<link rel="alternate" type="application/rss+xml" title="ABAP Blog &raquo; Лента" href="../../feed/index.htm.rss">
33<link rel="alternate" type="application/rss+xml" title="ABAP Blog &raquo; Лента комментариев" href="../../comments/feed/index.htm.rss">
34<link rel="alternate" type="application/rss+xml" title="ABAP Blog &raquo; Лента комментариев к &laquo;Developing and Extending SAP Fiori Elements Apps&raquo;" href="feed/index.htm.rss">
35		
35<script type="text/javascript">
36			window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.1.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.1.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/abap-blog.ru\/wp-includes\/js\/wp-emoji-release.min.js?ver=5.8.1"}};
37			!function(e,a,t){var n,r,o,i=a.createElement("canvas"),p=i.getContext&&i.getContext("2d");function s(e,t){var a=String.fromCharCode;p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,e),0,0);e=i.toDataURL();return p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,t),0,0),e===i.toDataURL()}function c(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(o=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},r=0;r<o.length;r++)t.supports[o[r]]=function(e){if(!p||!p.fillText)return!1;switch(p.textBaseline="top",p.font="600 32px Arial",e){case"flag":return s([127987,65039,8205,9895,65039],[127987,65039,8203,9895,65039])?!1:!s([55356,56826,55356,56819],[55356,56826,8203,55356,56819])&&!s([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]);case"emoji":return!s([10084,65039,8205,55357,56613],[10084,65039,8203,55357,56613])}return!1}(o[r]),t.supports.everything=t.supports.everything&&t.supports[o[r]],"flag"!==o[r]&&(t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&t.supports[o[r]]);t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&!t.supports.flag,t.DOMReady=!1,t.readyCallback=function(){t.DOMReady=!0},t.supports.everything||(n=function(){t.readyCallback()},a.addEventListener?(a.addEventListener("DOMContentLoaded",n,!1),e.addEventListener("load",n,!1)):(e.attachEvent("onload",n),a.attachEvent("onreadystatechange",function(){"complete"===a.readyState&&t.readyCallback()})),(n=t.source||{}).concatemoji?c(n.concatemoji):n.wpemoji&&n.twemoji&&(c(n.twemoji),c(n.wpemoji)))}(window,document,window._wpemojiSettings);
38		</script>
38
39		<style type="text/css">
40img.wp-smiley,
41img.emoji {
42	display: inline !important;
43	border: none !important;
44	box-shadow: none !important;
45	height: 1em !important;
46	width: 1em !important;
47	margin: 0 .07em !important;
48	vertical-align: -0.1em !important;
49	background: none !important;
50	padding: 0 !important;
51}
52</style>
53	<link rel='stylesheet' id='urvanov_syntax_highlighter-css' href='../../wp-content/plugins/urvanov-syntax-highlighter/css/min/urvanov_syntax_highlighter.min.css?ver=2.8.22' media='all'>
54<link rel='stylesheet' id='wp-block-library-css' href='../../wp-includes/css/dist/block-library/style.min.css?ver=5.8.1' media='all'>
55<link rel='stylesheet' id='arve-main-css' href='../../wp-content/plugins/advanced-responsive-video-embedder/build/main.css?ver=b809f4d4c33c91a5ae3a5099af09bdde' media='all'>
56<link rel='stylesheet' id='contact-form-7-css' href='../../wp-content/plugins/contact-form-7/includes/css/styles.css?ver=5.5.1' media='all'>
57<link rel='stylesheet' id='bg-shce-genericons-css' href='../../wp-content/plugins/show-hidecollapse-expand/assets/css/genericons/genericons.css?ver=5.8.1' media='all'>
58<link rel='stylesheet' id='bg-show-hide-css' href='../../wp-content/plugins/show-hidecollapse-expand/assets/css/bg-show-hide.css?ver=5.8.1' media='all'>
59<link rel='stylesheet' id='dashicons-css' href='../../wp-includes/css/dashicons.min.css?ver=5.8.1' media='all'>
60<link rel='stylesheet' id='tooltip-css' href='../../wp-content/plugins/wp-poll/assets/tool-tip.min.css?ver=5.8.1' media='all'>
61<link rel='stylesheet' id='wpp-front-cb-css' href='../../wp-content/plugins/wp-poll/assets/front/css/checkbox.css?ver=5.8.1' media='all'>
62<link rel='stylesheet' id='wpp-front-css' href='../../wp-content/plugins/wp-poll/assets/front/css/style.css?ver=5.8.1' media='all'>
63<link rel='stylesheet' id='flat-fonts-css' href='../../css.css?family=Lobster%7CRoboto:400,700%7CRoboto+Slab%7CRoboto%20Condensed' media='all'>
64<link rel='stylesheet' id='flat-theme-css' href='../../wp-content/themes/flat/assets/css/flat.css?ver=1.7.11' media='all'>
65<link rel='stylesheet' id='flat-style-css' href='../../wp-content/themes/flat/style.css?ver=5.8.1' media='all'>
66<link rel='stylesheet' id='slb_core-css' href='../../wp-content/plugins/simple-lightbox/client/css/app.css?ver=2.8.1' media='all'>
67<link rel='stylesheet' id='decent-comments-widget-css' href='../../wp-content/plugins/decent-comments/css/decent-comments-widget.css' media='all'>
68<script src='../../wp-includes/js/jquery/jquery.min.js?ver=3.6.0' id='jquery-core-js'></script>
vendor: 1 bytes, line 68
68
69<script src='../../wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2' id='jquery-migrate-js'></script>
vendor: 1 bytes, line 69
69
70<script type='text/javascript' id='urvanov_syntax_highlighter_js-js-extra'>
71/* <![CDATA[ */
72var UrvanovSyntaxHighlighterSyntaxSettings = {"version":"2.8.22","is_admin":"0","ajaxurl":"https:\/\/abap-blog.ru\/wp-admin\/admin-ajax.php","prefix":"urvanov-syntax-highlighter-","setting":"urvanov-syntax-highlighter-setting","selected":"urvanov-syntax-highlighter-setting-selected","changed":"urvanov-syntax-highlighter-setting-changed","special":"urvanov-syntax-highlighter-setting-special","orig_value":"data-orig-value","debug":""};
73var UrvanovSyntaxHighlighterSyntaxStrings = {"copy":"\u041d\u0430\u0436\u043c\u0438\u0442\u0435 %s \u0434\u043b\u044f \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, %s \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438","minimize":"Click To Expand Code"};
74/* ]]> */
75</script>
vendor: 1 bytes, line 75
75
76<script src='../../wp-content/plugins/urvanov-syntax-highlighter/js/min/urvanov_syntax_highlighter.min.js?ver=2.8.22' id='urvanov_syntax_highlighter_js-js'></script>
vendor: 1 bytes, line 76
76
77<script src='../../wp-includes/js/dist/vendor/regenerator-runtime.min.js?ver=0.13.7' id='regenerator-runtime-js'></script>
vendor: 1 bytes, line 77
77
78<script src='../../wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0' id='wp-polyfill-js'></script>
vendor: 1 bytes, line 78
78
79<script async="async" src='../../wp-content/plugins/advanced-responsive-video-embedder/build/main.js?ver=b809f4d4c33c91a5ae3a5099af09bdde' id='arve-main-js'></script>
vendor: 1 bytes, line 79
79
80<script src='../../wp-content/plugins/wp-poll/assets/front/js/svgcheckbx.js?ver=5.8.1' id='wpp-front-cb-js'></script>
vendor: 1 bytes, line 80
80
81<script type='text/javascript' id='wpp-front-js-extra'>
82/* <![CDATA[ */
83var wpp_object = {"ajaxurl":"https:\/\/abap-blog.ru\/wp-admin\/admin-ajax.php","copyText":"Copied !","voteText":"Vote(s)","tempProDownload":"https:\/\/pluginbazar.com\/my-account\/downloads\/","tempProDownloadTxt":"Download Version 1.1.0"};
84/* ]]> */
85</script>
vendor: 1 bytes, line 85
85
86<script src='../../wp-content/plugins/wp-poll/assets/front/js/scripts.js?ver=5.8.1' id='wpp-front-js'></script>
vendor: 1 bytes, line 86
86
87<script src='../../wp-content/themes/flat/assets/js/flat.js?ver=1.7.11' id='flat-js-js'></script>
87
88<!--[if lt IE 9]>
89<script src='https://abap-blog.ru/wp-content/themes/flat/assets/js/html5shiv.min.js?ver=3.7.2' id='html5shiv-js'></script>
89
90<![endif]-->
91<link rel="https://api.w.org/" href="../../wp-json/index.htm.json"><link rel="alternate" type="application/json" href="../../wp-json/wp/v2/posts/7180.json"><link rel="EditURI" type="application/rsd+xml" title="RSD" href="../../xmlrpc.php.xml?rsd">
92<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="../../wp-includes/wlwmanifest.xml"> 
93<meta name="generator" content="WordPress 5.8.1">
94<link rel='shortlink' href='index.htm?p=7180'>
95<link rel="alternate" type="application/json+oembed" href="../../wp-json/oembed/1.0/embed-24.json?url=https%3A%2F%2Fabap-blog.ru%2Fnetwork%2Fdeveloping-and-extending-sap-fiori-elements-apps%2F">
96<link rel="alternate" type="text/xml+oembed" href="../../wp-json/oembed/1.0/embed-24.xml?url=https%3A%2F%2Fabap-blog.ru%2Fnetwork%2Fdeveloping-and-extending-sap-fiori-elements-apps%2F&#038;format=xml">
97
98<!-- WP Youtube Player 1.7 by unijimpe -->
99<style type="text/css">#page:before, .sidebar-offcanvas, #secondary { background-color: #272727; }@media (max-width: 1199px) { #page &gt; .container { background-color: #272727; } }body { background-size: initial; }</style><style type="text/css">#masthead .site-title {font-family:Lobster}body {font-family:Roboto }h1,h2,h3,h4,h5,h6 {font-family:Roboto Slab}#masthead .site-description, .hentry .entry-meta {font-family:Roboto Condensed}</style><style type="text/css" media="screen">body{position:relative}#dynamic-to-top{display:none;overflow:hidden;width:auto;z-index:90;position:fixed;bottom:20px;right:20px;top:auto;left:auto;font-family:sans-serif;font-size:1em;color:#fff;text-decoration:none;text-shadow:0 1px 0 #333;font-weight:bold;padding:17px 16px;border:2px solid #000;background:#4c5055;-webkit-background-origin:border;-moz-background-origin:border;-icab-background-origin:border;-khtml-background-origin:border;-o-background-origin:border;background-origin:border;-webkit-background-clip:padding-box;-moz-background-clip:padding-box;-icab-background-clip:padding-box;-khtml-background-clip:padding-box;-o-background-clip:padding-box;background-clip:padding-box;-webkit-box-shadow:0 1px 3px rgba( 0, 0, 0, 0.4 ), inset 0 0 0 1px rgba( 0, 0, 0, 0.2 ), inset 0 1px 0 rgba( 255, 255, 255, .4 ), inset 0 10px 10px rgba( 255, 255, 255, .1 );-ms-box-shadow:0 1px 3px rgba( 0, 0, 0, 0.4 ), inset 0 0 0 1px rgba( 0, 0, 0, 0.2 ), inset 0 1px 0 rgba( 255, 255, 255, .4 ), inset 0 10px 10px rgba( 255, 255, 255, .1 );-moz-box-shadow:0 1px 3px rgba( 0, 0, 0, 0.4 ), inset 0 0 0 1px rgba( 0, 0, 0, 0.2 ), inset 0 1px 0 rgba( 255, 255, 255, .4 ), inset 0 10px 10px rgba( 255, 255, 255, .1 );-o-box-shadow:0 1px 3px rgba( 0, 0, 0, 0.4 ), inset 0 0 0 1px rgba( 0, 0, 0, 0.2 ), inset 0 1px 0 rgba( 255, 255, 255, .4 ), inset 0 10px 10px rgba( 255, 255, 255, .1 );-khtml-box-shadow:0 1px 3px rgba( 0, 0, 0, 0.4 ), inset 0 0 0 1px rgba( 0, 0, 0, 0.2 ), inset 0 1px 0 rgba( 255, 255, 255, .4 ), inset 0 10px 10px rgba( 255, 255, 255, .1 );-icab-box-shadow:0 1px 3px rgba( 0, 0, 0, 0.4 ), inset 0 0 0 1px rgba( 0, 0, 0, 0.2 ), inset 0 1px 0 rgba( 255, 255, 255, .4 ), inset 0 10px 10px rgba( 255, 255, 255, .1 );box-shadow:0 1px 3px rgba( 0, 0, 0, 0.4 ), inset 0 0 0 1px rgba( 0, 0, 0, 0.2 ), inset 0 1px 0 rgba( 255, 255, 255, .4 ), inset 0 10px 10px rgba( 255, 255, 255, .1 );-webkit-border-radius:30px;-moz-border-radius:30px;-icab-border-radius:30px;-khtml-border-radius:30px;border-radius:30px}#dynamic-to-top:hover{background:#4fd650;background:#4c5055 -webkit-gradient( linear, 0% 0%, 0% 100%, from( rgba( 255, 255, 255, .2 ) ), to( rgba( 0, 0, 0, 0 ) ) );background:#4c5055 -webkit-linear-gradient( top, rgba( 255, 255, 255, .2 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -khtml-linear-gradient( top, rgba( 255, 255, 255, .2 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -moz-linear-gradient( top, rgba( 255, 255, 255, .2 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -o-linear-gradient( top, rgba( 255, 255, 255, .2 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -ms-linear-gradient( top, rgba( 255, 255, 255, .2 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -icab-linear-gradient( top, rgba( 255, 255, 255, .2 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 linear-gradient( top, rgba( 255, 255, 255, .2 ), rgba( 0, 0, 0, 0 ) );cursor:pointer}#dynamic-to-top:active{background:#4c5055;background:#4c5055 -webkit-gradient( linear, 0% 0%, 0% 100%, from( rgba( 0, 0, 0, .3 ) ), to( rgba( 0, 0, 0, 0 ) ) );background:#4c5055 -webkit-linear-gradient( top, rgba( 0, 0, 0, .1 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -moz-linear-gradient( top, rgba( 0, 0, 0, .1 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -khtml-linear-gradient( top, rgba( 0, 0, 0, .1 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -o-linear-gradient( top, rgba( 0, 0, 0, .1 ), rgba( 0, 0, 0, 0 ) );
99background:#4c5055 -ms-linear-gradient( top, rgba( 0, 0, 0, .1 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 -icab-linear-gradient( top, rgba( 0, 0, 0, .1 ), rgba( 0, 0, 0, 0 ) );background:#4c5055 linear-gradient( top, rgba( 0, 0, 0, .1 ), rgba( 0, 0, 0, 0 ) )}#dynamic-to-top,#dynamic-to-top:active,#dynamic-to-top:focus,#dynamic-to-top:hover{outline:none}#dynamic-to-top span{display:block;overflow:hidden;width:14px;height:12px;background:url( ../../wp-content/plugins/dynamic-to-top/css/images/up.png )no-repeat center center}</style><style type="text/css" id="custom-background-css">
100body.custom-background { background-image: url("../../wp-content/uploads/2014/10/escheresque_ste.png"); background-position: left top; background-size: auto; background-repeat: repeat; background-attachment: scroll; }
101</style>
102		</head>
103
104<body class="post-template-default single single-post postid-7180 single-format-standard custom-background" itemscope="" itemtype="http://schema.org/WebPage">
105		<div id="page">
106	<div class="container">
107		<div class="row row-offcanvas row-offcanvas-left" style="background: #272727;">			
108			
109			<div id="secondary1" class="col-lg-t" style="background: #272727; display:none">
110								<header id="masthead1" class="site-headerex" role="banner">
111										<div class="hgroupex">
112						<h1 class="site-title display-title"><a href="../../index.htm" title="ABAP Blog" rel="home"><span itemprop="name">ABAP Blog</span></a></h1><h2 itemprop="description" class="site-description">Все о разработке в решениях от SAP</h2>					</div>
113									</header>
114							</div>
115
116
117			<div id="secondary" class="col-lg-3" style="display:block">
118								<header id="masthead" class="site-header" role="banner">
119										<div class="hgroup">
120						<h1 class="site-title display-title"><a href="../../index.htm" title="ABAP Blog" rel="home"><span itemprop="name">ABAP Blog</span></a></h1><h2 itemprop="description" class="site-description">Все о разработке в решениях от SAP</h2>					</div>
121					<button type="button" class="btn btn-link hidden-lg toggle-sidebar" data-toggle="offcanvas" aria-label="Sidebar"><i class="fa fa-gear"></i></button>
122					<button type="button" class="btn btn-link hidden-lg toggle-navigation" aria-label="Navigation Menu"><i class="fa fa-bars"></i></button>
123					<nav id="site-navigation" class="navigation main-navigation" role="navigation">
124						<ul id="menu-glavnoe-menyu" class="nav-menu"><li id="menu-item-2313" class="fa fa-home menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-has-children menu-item-2313"><a href="../../index.htm">Главная</a>
125<ul class="sub-menu">
126	<li id="menu-item-2363" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-2363"><a href="../../category/osnovy-abap/index.htm">Основы ABAP</a>
127	<ul class="sub-menu">
128		<li id="menu-item-2906" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-2906"><a href="../../category/osnovy-abap/oop/index.htm">ABAP Objects</a></li>
129		<li id="menu-item-2370" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-2370"><a href="../../category/osnovy-abap/slovar/index.htm">ABAP Словарь</a></li>
130		<li id="menu-item-2367" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-2367"><a href="../../category/osnovy-abap/files/index.htm">Работа с файлами</a></li>
131		<li id="menu-item-2364" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-2364"><a href="../../category/osnovy-abap/sap-dynpro/index.htm">SAP Dynpro</a></li>
132		<li id="menu-item-6845" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-6845"><a href="../../category/osnovy-abap/vnutrennie-tablicy/index.htm">Внутренние таблицы</a></li>
133		<li id="menu-item-6849" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-6849"><a href="../../category/osnovy-abap/dinamicheskoe-programmirovanie/index.htm">Динамическое программирование</a></li>
134	</ul>
135</li>
136	<li id="menu-item-2366" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-2366"><a href="../../category/database-work/index.htm">Работа с БД</a>
137	<ul class="sub-menu">
138		<li id="menu-item-7303" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-7303"><a href="../../category/hana/index.htm">HANA</a></li>
139	</ul>
140</li>
141	<li id="menu-item-2368" class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-item-has-children menu-item-2368"><a href="../../category/network/index.htm">Сетевые технологии</a>
142	<ul class="sub-menu">
143		<li id="menu-item-6328" class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-item-6328"><a href="../../category/network/ui5fiori/index.htm">UI5 &amp; Fiori</a></li>
144		<li id="menu-item-6327" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-6327">
144<a href="../../category/network/odata-network/index.htm">OData</a></li>
145		<li id="menu-item-2907" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-2907"><a href="../../category/network/web-dynpro/index.htm">Web Dynpro</a></li>
146	</ul>
147</li>
148	<li id="menu-item-2369" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-2369"><a href="../../category/enhancements/index.htm">Расширения</a></li>
149	<li id="menu-item-6329" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-6329"><a href="../../category/abap-cloud/index.htm">ABAP Cloud</a></li>
150	<li id="menu-item-2365" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-2365"><a href="../../category/others/index.htm">Прочее</a></li>
151</ul>
152</li>
153<li id="menu-item-3536" class="fa fa-bell menu-item menu-item-type-post_type menu-item-object-page menu-item-3536"><a href="../../abap-the-best-practice/index.htm">ABAP Best Practice</a></li>
154<li id="menu-item-3727" class="fa fa-child menu-item menu-item-type-post_type menu-item-object-page menu-item-3727"><a href="../../vakansii/index.htm">Вакансии ABAP</a></li>
155<li id="menu-item-3885" class="fa fa-bookmark menu-item menu-item-type-post_type menu-item-object-page menu-item-3885"><a href="../../abap-notes/index.htm">Быстрые заметки</a></li>
156<li id="menu-item-2316" class="fa fa-info-circle menu-item menu-item-type-post_type menu-item-object-page menu-item-2316"><a href="../../about/index.htm">Обо мне</a></li>
157</ul>					</nav>
158									</header>
159				
160				<div class="sidebar-offcanvas">
161<div id="main-sidebar" class="widget-area" role="complementary">
162											<aside id="search-2" class="widget widget_search">
163	<form method="get" id="searchform" action="https://abap-blog.ru/">
164		<label for="s" class="assistive-text">Поиск</label>
165		<input type="text" class="field" name="s" id="s" placeholder="Поиск">
166		<input type="submit" class="submit" name="submit" id="searchsubmit" value="Поиск">
167	</form>
168					</aside>
169					<aside id="linkcat-2" class="widget widget_links">
170						<h3 class='widget-title'>Ссылки</h3>
171
172	<ul class='xoxo blogroll'>
173<li><a href="../../topics/abap.html" target="_blank">ABAP Community</a></li>
174<li><a href="../../wiki/display/ABAP/ABAP Development.html" title="Wiki по ABAP" target="_blank">ABAP Development Wiki</a></li>
175<li><a href="../../doc/abapdocu_latest_index_htm/latest/en-US/index.htm" title="Последняя версия справки по ABAP" target="_blank">ABAP Help</a></li>
176<li><a href="../../doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm" target="_blank">ABAP Help (Cloud)</a></li>
177<li><a href="../../learning-journeys/overview.html?role=Developer" target="_blank">Developer Learning Journeys</a></li>
178<li><a href="../../index-3.htm" target="_blank">Open Source Projects</a></li>
179<li><a href="../../tutorial-navigator.html" target="_blank">SAP Tutorials</a></li>
180<li><a href="https://t.me/abapblog" target="_blank"><img src="../../wp-content/uploads/2020/04/telegram-1.png" alt="Канал в Telegram"> Канал в Telegram</a></li>
181
182	</ul>
183					</aside>
184
185					<aside id="endo_wrc_widget-2" class="widget widget_endo_wrc_widget">
186						<h3 class='widget-title'>Цитаты</h3>
187<p>Худшая разновидность непрофессионализма — просто программировать по спецификации, не понимая того, почему эта спецификация подходит для решения своей задачи. Вы должны обладать достаточными познаниями в предметной области для того, чтобы распознать и исправить возможные ошибки в спецификации.<br>
188<strong>Р. Мартин</strong></p>
189					</aside>
190								<aside id="custom-post-type-recent-posts-3" class="widget widget_recent_entries">
191						<h3 class='widget-title'>Новое</h3>
192			<ul>
193													<li>
194										<a href="../../abap-notes/poluchenie-instancii-cl_gui_alv_grid-dlya-salv/index.htm">Получение инстанции cl_gui_alv_grid для SALV</a>
195											<span class="post-date">11.09.2021</span>
196														</li>
197													<li>
198										<a href="../../abap-cloud/introduction-to-abap-in-the-cloud/index.htm">Introduction to ABAP in the Cloud</a>
199											<span class="post-date">18.08.2021</span>
200														</li>
201													<li>
202										<a href="../../abap-notes/getting-started-with-fpm-bopf-integration/index.htm">Getting Started with FPM BOPF Integration</a>
203											<span class="post-date">01.06.2021</span>
204														</li>
205													<li>
206										<a href="../../abap-notes/how-to-use-authority-checks-in-business-object-processing-framework/index.htm">30. How to Use Authority Checks in Business Object Processing Framework</a>
207											<span class="post-date">29.05.2021</span>
208														</li>
209													<li>
210										<a href="../../abap-notes/bopf-extensibility/index.htm">29. BOPF Extensibility</a>
211											<span class="post-date">29.05.2021</span>
212														</li>
213													<li>
214										<a href="../../abap-notes/bopf-enterprise-procurement-model-epm/index.htm">28. BOPF Enterprise Procurement Model (EPM)</a>
215											<span class="post-date">29.05.2021</span>
216														</li>
217													<li>
218										<a href="../../abap-notes/bopf-integration/index.htm">27. BOPF Integration</a>
219											<span class="post-date">29.05.2021</span>
220														</li>
221													<li>
222										<a href="../../abap-notes/bopf-business-configuration-objects/index.htm">26. BOPF Business Configuration Objects</a>
223											<span class="post-date">29.05.2021</span>
224														</li>
225													<li>
226										<a href="../../abap-notes/bopf-performance/index.htm">25. BOPF Performance</a>
227											<span class="post-date">29.05.2021</span>
228														</li>
229													<li>
230										<a href="../../abap-notes/bopf-supportability/index.htm">24. BOPF Supportability</a>
231											<span class="post-date">29.05.2021</span>
232														</li>
233							</ul>
234								</aside>
235					<aside id="decent_comments_widget-2" class="widget widget_decent_comments_widget">
236						<h3 class='widget-title'>Последние комментарии</h3>
237<div class="decent-comments"><ul><li><div class="comment"><span class="comment-author">Николай</span><span class="comment-date"> 27.10.2021 в 15:19</span><span class="comment-link"> на <a href="../../osnovy-abap/internal-table-as-data-source-select/index.htm#comment-17857">Внутренние таблицы как источник в SQL запросах</a></span><span class="comment-excerpt">Спасибо за статью. Если нужно сделать агрегацию внутренней таблицы то агрегация через передачу во временную таблицу на БД тоже будет работать медленней чем через loop/collect? Например таблица 100к записей, которая становится 5к после агрегации. </span></div></li><li><div class="comment"><span class="comment-author">Аноним</span><span class="comment-date"> 14.10.2021 в 13:50</span><span class="comment-link"> на <a href="../../osnovy-abap/oop/dekorator-decorator-wrapper/index.htm#comment-17856">Декоратор (Decorator, Wrapper)</a></span><span class="comment-excerpt">Так поведение Decorator не надо будет повторно описывать повторно в других Component. Но это возможно при изменении типа mo_component, например, на object. </span></div></li><li><div class="comment"><span class="comment-author">Александр</span><span class="comment-date"> 11.10.2021 в 06:50</span><span class="comment-link"> на <a href="../../osnovy-abap/oop/dekorator-decorator-wrapper/index.htm#comment-17854">Декоратор (Decorator, Wrapper)</a></span><span class="comment-excerpt">Привет:) Возможно, я не так выразил мысль. Я имел ввиду, какая ценность от класса Decorator, если можно декорировать поведение от Component и от него же наследовать конкретные декораторы? (см. первую UML диаграмму) </span></div></li><li><div class="comment"><span class="comment-author">Astrafox</span><span class="comment-date"> 10.10.2021 в 12:39</span><span class="comment-link"> на <a href="../../osnovy-abap/oop/dekorator-decorator-wrapper/index.htm#comment-17853">Декоратор (Decorator, Wrapper)</a></span><span class="comment-excerpt">Привет! Можно и так, однако конкретный компонент может иметь более широкий интерфейс, нежели тот, что нужен в декораторах. Тут скорее пример не совсем удачный, декорируемое поведение лучше вынести в отдельный интерфейс, реализуемый как компонентом, так и декораторами. </span></div></li><li><div class="comment"><span class="comment-author">Александр</span><span class="comment-date"> 04.10.2021 в 12:51</span><span class="comment-link"> на <a href="../../osnovy-abap/oop/dekorator-decorator-wrapper/index.htm#comment-17850">Декоратор (Decorator, Wrapper)</a></span><span class="comment-excerpt">А какую роль играет базовый класс декоратора lcl_decorator? Что мешает конкретные декораторы наследовать от компонента lcl_concrete_component? Клиентский код и логика выполнения не поменяется. </span></div></li></ul></div>					</aside>
238											</div>
239				</div>
240			</div>
241
242						<div id="primary" class="content-area col-lg-9" itemprop="mainContentOfPage" style="">
243							<div id="content" class="site-content" role="main" itemscope="" itemtype="http://schema.org/Article">
244			<article id="post-7180" class="post-7180 post type-post status-publish format-standard hentry category-ui5fiori category-network">
245	<header class="entry-header">
246		<h1 class="entry-title" itemprop="name">Developing and Extending SAP Fiori Elements Apps</h1>
247							<div class="entry-meta"><span class="entry-date"><a href="index.htm" rel="bookmark"><time class="entry-date published" datetime="2021-04-20T21:54:59+04:00" itemprop="datepublished">20.04.2021</time></a></span> от <span class="author vcard" itemscope="" itemprop="author" itemtype="http://schema.org/Person"><a class="url fn n" href="../../author/admin/index.htm" rel="author" itemprop="url"><span itemprop="name">Astrafox</span></a></span><span class="sep">&middot;</span><span class="comments-link"><a href="index.htm#respond" itemprop="discussionUrl">Нет комментариев</a></span></div>
248			</header>
249		
250	
251	<div class="entry-content" itemprop="articleBody">
252				<p>На OpenSAP анонсировали <a href="../../courses/fiori-ea1.html" target="_blank" rel="noopener">курс</a> посвящённый разработке и расширению приложений на базе Fiori Elements, темы курса:</p>
253<ul>
254<li>Week 1: Introducing SAP Fiori Elements</li>
255<li>Week 2: Building Your First SAP Fiori Elements App</li>
256<li>Week 3: Using More SAP Fiori Elements Capabilities</li>
257<li>Week 4: Extending a Standard SAP Fiori App</li>
258<li>Week 5: Final Exam</li>
259</ul>
260							</div>
261		</article>
262	
263	<nav class="navigation post-navigation" role="navigation" aria-label="Записи">
264		<h2 class="screen-reader-text">Навигация по записям</h2>
265		<div class="nav-links"><div class="nav-previous"><a href="../../osnovy-abap/internal-table-as-data-source-select/index.htm" rel="prev"><span class="meta-nav" aria-hidden="true">Назад</span> <span class="screen-reader-text">Предыдущая запись:</span> <span class="post-title">Внутренние таблицы как источник в SQL запросах</span></a></div><div class="nav-next"><a href="../../osnovy-abap/call_transaction_sbwp/index.htm" rel="next"><span class="meta-nav" aria-hidden="true">Далее</span> <span class="screen-reader-text">Следующая запись:</span> <span class="post-title">Запуск транзакций из SBWP</span></a></div></div>
266	</nav>
267
268<div id="comments" class="comments-area">
269
270	
271	
272		<div id="respond" class="comment-respond">
273		<h3 id="reply-title" class="comment-reply-title">Добавить комментарий <small><a rel="nofollow" id="cancel-comment-reply-link" href="index.htm#respond" style="display:none;">Отменить ответ</a></small></h3><form action="https://abap-blog.ru/wp-comments-post.php" method="post" id="commentform" class="comment-form" novalidate=""><p class="comment-notes"><span id="email-notes">Ваш адрес email не будет опубликован.</span></p><p class="comment-form-comment"><label for="comment">Комментарий</label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required="required"></textarea></p><p class="comment-form-author"><label for="author">Имя</label> <input id="author" name="author" type="text" value="" size="30" maxlength="245"></p>
274<div class="anr_captcha_field"><div id="anr_captcha_field_1" class="anr_captcha_field_div"></div></div><p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Отправить комментарий"> <input type='hidden' name='comment_post_ID' value='7180' id='comment_post_ID'>
275<input type='hidden' name='comment_parent' id='comment_parent' value='0'>
276</p></form>	</div><!-- #respond -->
277	
278	
279</div>
280
281			</div>
282							</div>
283					</div>
284	</div>
285</div>
286<script type='text/javascript' id='contact-form-7-js-extra'>
287/* <![CDATA[ */
288var wpcf7 = {"api":{"root":"https:\/\/abap-blog.ru\/wp-json\/","namespace":"contact-form-7\/v1"}};
289/* ]]> */
290</script>
vendor: 1 bytes, line 290
290
291<script src='../../wp-content/plugins/contact-form-7/includes/js/index.js?ver=5.5.1' id='contact-form-7-js'></script>
vendor: 1 bytes, line 291
291
292<script src='../../wp-includes/js/jquery/ui/effect.min.js?ver=1.12.1' id='jquery-effects-core-js'></script>
vendor: 1 bytes, line 292
292
293<script src='../../wp-includes/js/jquery/ui/effect-slide.min.js?ver=1.12.1' id='jquery-effects-slide-js'></script>
vendor: 1 bytes, line 293
293
294<script src='../../wp-includes/js/jquery/ui/effect-highlight.min.js?ver=1.12.1' id='jquery-effects-highlight-js'></script>
vendor: 1 bytes, line 294
294
295<script src='../../wp-includes/js/jquery/ui/effect-fold.min.js?ver=1.12.1' id='jquery-effects-fold-js'></script>
vendor: 1 bytes, line 295
295
296<script src='../../wp-includes/js/jquery/ui/effect-blind.min.js?ver=1.12.1' id='jquery-effects-blind-js'></script>
vendor: 1 bytes, line 296
296
297<script src='../../wp-content/plugins/show-hidecollapse-expand/assets/js/bg-show-hide.js?ver=5.8.1' id='bg-show-hide-script-js'></script>
vendor: 1 bytes, line 297
297
298<script src='../../wp-includes/js/comment-reply.min.js?ver=5.8.1' id='comment-reply-js'></script>
vendor: 1 bytes, line 298
298
299<script src='../../wp-content/plugins/dynamic-to-top/js/libs/jquery.easing.js?ver=1.3' id='jquery-easing-js'></script>
vendor: 1 bytes, line 299
299
300<script type='text/javascript' id='dynamic-to-top-js-extra'>
301/* <![CDATA[ */
302var mv_dynamic_to_top = {"text":"To Top","version":"0","min":"300","speed":"1100","easing":"easeInExpo","margin":"20"};
303/* ]]> */
304</script>
vendor: 1 bytes, line 304
304
305<script src='../../wp-content/plugins/dynamic-to-top/js/dynamic.to.top.min.js?ver=3.5' id='dynamic-to-top-js'></script>
vendor: 1 bytes, line 305
305
306<script src='../../recaptcha/api.js?render=6LdA3s4UAAAAADBjYG-YFAEz4zKS3lKp1CB_BHMC&#038;ver=3.0' id='google-recaptcha-js'></script>
vendor: 1 bytes, line 306
306
307<script type='text/javascript' id='wpcf7-recaptcha-js-extra'>
308/* <![CDATA[ */
309var wpcf7_recaptcha = {"sitekey":"6LdA3s4UAAAAADBjYG-YFAEz4zKS3lKp1CB_BHMC","actions":{"homepage":"homepage","contactform":"contactform"}};
310/* ]]> */
311</script>
vendor: 1 bytes, line 311
311
312<script src='../../wp-content/plugins/contact-form-7/modules/recaptcha/index.js?ver=5.5.1' id='wpcf7-recaptcha-js'></script>
vendor: 1 bytes, line 312
312
313<script src='../../wp-includes/js/wp-embed.min.js?ver=5.8.1' id='wp-embed-js'></script>
vendor: 1 bytes, line 313
313
314<script type="text/javascript" id="slb_context">/* <![CDATA[ */if ( !!window.jQuery ) {(function($){$(document).ready(function(){if ( !!window.SLB ) { {$.extend(SLB, {"context":["public","user_guest"]});} }})})(jQuery);}/* ]]> */</script>
314
315			
315<script type="text/javascript">
316				var anr_onloadCallback = function() {
317					for ( var i = 0; i < document.forms.length; i++ ) {
318						var form = document.forms[i];
319						var captcha_div = form.querySelector( '.anr_captcha_field_div' );
320
321						if ( null === captcha_div )
322							continue;
323						captcha_div.innerHTML = '';
324						( function( form ) {
325							var anr_captcha = grecaptcha.render( captcha_div,{
326								'sitekey' : '6LfmhbAaAAAAABBrfPpMngzFHB6qZ4ATxXd3rvOR',
327								'size'  : 'normal',
328								'theme' : 'light'
329							});
330							if ( typeof jQuery !== 'undefined' ) {
331								jQuery( document.body ).on( 'checkout_error', function(){
332									grecaptcha.reset(anr_captcha);
333								});
334							}
335							if ( typeof wpcf7 !== 'undefined' ) {
336								document.addEventListener( 'wpcf7submit', function() {
337									grecaptcha.reset(anr_captcha);
338								}, false );
339							}
340						})(form);
341					}
342				};
343			</script>
343
344						
344<script src="../../recaptcha/api-1.js?onload=anr_onloadCallback&#038;render=explicit" async="" defer="">
345			</script>
345
346			</body>
347</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.