deploy: d2725b5bf0
This commit is contained in:
parent
d5790b8abb
commit
7e9d4c18d3
232 changed files with 25544 additions and 58300 deletions
|
|
@ -2,7 +2,7 @@
|
|||
<head>
|
||||
<meta charset=utf-8>
|
||||
<meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no">
|
||||
<meta name=generator content="Hugo 0.92.2">
|
||||
<meta name=generator content="Hugo 0.93.0">
|
||||
<meta name=robots content="index, follow">
|
||||
<link rel="shortcut icon" href=/favicons/favicon.ico>
|
||||
<link rel=apple-touch-icon href=/favicons/apple-touch-icon-180x180.png sizes=180x180>
|
||||
|
|
@ -14,8 +14,7 @@
|
|||
<link rel=icon type=image/png href=/favicons/android-96x96.png sizes=96x96>
|
||||
<link rel=icon type=image/png href=/favicons/android-144x144.png sizes=144x144>
|
||||
<link rel=icon type=image/png href=/favicons/android-192x192.png sizes=192x192>
|
||||
<title>Extending the Role Center Headlines | alguidelines.dev - Business Central Design Patterns</title>
|
||||
<meta name=description content="By David Bastide at Microsoft Development Center Copenhagen
|
||||
<title>Extending the Role Center Headlines | alguidelines.dev - Business Central Design Patterns</title><meta name=description content="By David Bastide at Microsoft Development Center Copenhagen
|
||||
|
||||
Context
|
||||
Headlines are designed as a page of type HeadlinePart containing at least one …">
|
||||
|
|
@ -48,8 +47,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<link href=/scss/main.min.84a617ff0c0265eb62b5cd2929c572f4ed37dc4907d0cf068be4eb2974f6d60f.css rel=stylesheet integrity>
|
||||
<script src=https://code.jquery.com/jquery-3.6.0.min.js integrity=sha384-vtXRMe3mGCbOeY7l30aIg8H9p3GdeSe4IFlP6G8JMa7o7lXvnz3GFKzPxzJdPfGK crossorigin=anonymous></script>
|
||||
<script src=https://unpkg.com/lunr@2.3.9/lunr.min.js integrity=sha384-203J0SNzyqHby3iU6hzvzltrWi/M41wOP5Gu+BiJMz5nwKykbkUx8Kp7iti0Lpli crossorigin=anonymous></script>
|
||||
</head>
|
||||
<body class=td-page>
|
||||
</head><body class=td-page>
|
||||
<header>
|
||||
<nav class="js-navbar-scroll navbar navbar-expand navbar-dark flex-column flex-md-row td-navbar">
|
||||
<a class=navbar-brand href=/>
|
||||
|
|
@ -61,36 +59,24 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class=nav-link href=/docs/><i class="fas fa-book"></i><span>Docs</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
</li><li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class=nav-link href=https://github.com/microsoft/alguidelines/discussions/ target=_blank><i class="fas fa-comments"></i><span>Discussions</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
</li><li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class=nav-link href=https://github.com/microsoft/alguidelines target=_blank><i class="fab fa-github"></i><span>GitHub</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
</li><li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class=nav-link href=https://discord.gg/4wbfNv3 target=_blank><i class="fab fa-discord"></i><span>Discord</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="navbar-nav d-none d-lg-block"><input type=search class="form-control td-search-input" placeholder=" Search this site…" aria-label="Search this site…" autocomplete=off data-offline-search-index-json-src=/offline-search-index.9ab69a84696ad11cb17318558d9706e3.json data-offline-search-base-href=/ data-offline-search-max-results=10>
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
<div class="container-fluid td-outer">
|
||||
</li></ul></div><div class="navbar-nav d-none d-lg-block"><input type=search class="form-control td-search-input" placeholder=" Search this site…" aria-label="Search this site…" autocomplete=off data-offline-search-index-json-src=/offline-search-index.c6558a635de208ea1007e79e444e323a.json data-offline-search-base-href=/ data-offline-search-max-results=10>
|
||||
</div></nav></header><div class="container-fluid td-outer">
|
||||
<div class=td-main>
|
||||
<div class="row flex-xl-nowrap">
|
||||
<aside class="col-12 col-md-3 col-xl-2 td-sidebar d-print-none">
|
||||
<div id=td-sidebar-menu class=td-sidebar__inner>
|
||||
<div id=content-mobile>
|
||||
<form class="td-sidebar__search d-flex align-items-center">
|
||||
<input type=search class="form-control td-search-input" placeholder=" Search this site…" aria-label="Search this site…" autocomplete=off data-offline-search-index-json-src=/offline-search-index.9ab69a84696ad11cb17318558d9706e3.json data-offline-search-base-href=/ data-offline-search-max-results=10>
|
||||
<input type=search class="form-control td-search-input" placeholder=" Search this site…" aria-label="Search this site…" autocomplete=off data-offline-search-index-json-src=/offline-search-index.c6558a635de208ea1007e79e444e323a.json data-offline-search-base-href=/ data-offline-search-max-results=10>
|
||||
<button class="btn btn-link td-sidebar__toggle d-md-none p-0 ml-3 fas fa-bars" type=button data-toggle=collapse data-target=#td-section-nav aria-controls=td-docs-nav aria-expanded=false aria-label="Toggle section navigation">
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
<div id=content-desktop></div>
|
||||
<nav class="collapse td-sidebar-nav" id=td-section-nav>
|
||||
</form></div><div id=content-desktop></div><nav class="collapse td-sidebar-nav" id=td-section-nav>
|
||||
<ul class="td-sidebar-nav__section pr-md-3 ul-0">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docs-li>
|
||||
<a href=/docs/ title="AL Guidelines" class="align-left pl-0 td-sidebar-link td-sidebar-link__section tree-root" id=m-docs><span>Docs</span></a>
|
||||
|
|
@ -108,9 +94,9 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/patterns/facade-pattern/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docspatternsfacade-pattern><span>Façade</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docspatternsgeneric-method-pattern-li>
|
||||
<a href=/docs/patterns/generic-method-pattern/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docspatternsgeneric-method-pattern><span>Generic Method</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsbestpractices-li>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docspatternsno-series-li>
|
||||
<a href=/docs/patterns/no-series/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docspatternsno-series><span>No. Series</span></a>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsbestpractices-li>
|
||||
<a href=/docs/bestpractices/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsbestpractices><span>Best Practices</span></a>
|
||||
<ul class="ul-2 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsbestpracticesapi-page-li>
|
||||
|
|
@ -157,9 +143,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/bestpractices/variable-naming/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsbestpracticesvariable-naming><span>Variable Naming</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsbestpracticesvariables-declarations-order-li>
|
||||
<a href=/docs/bestpractices/variables-declarations-order/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsbestpracticesvariables-declarations-order><span>Variables Declarations Order</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docsnavpatterns-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docsnavpatterns-li>
|
||||
<a href=/docs/navpatterns/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns><span>NAV Patterns Archive</span></a>
|
||||
<ul class="ul-2 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docsnavpatternspatterns-li>
|
||||
|
|
@ -174,9 +158,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<ul class="ul-4 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatternspatternsblocked-entitydata-driven-blocked-entity-li>
|
||||
<a href=/docs/navpatterns/patterns/blocked-entity/data-driven-blocked-entity/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsblocked-entitydata-driven-blocked-entity><span>Data Driven Blocked Entity</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternscached-web-service-calls-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternscached-web-service-calls-li>
|
||||
<a href=/docs/navpatterns/patterns/cached-web-service-calls/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternscached-web-service-calls><span>Cached Web Server Calls</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsconditional-cascading-update-li>
|
||||
<a href=/docs/navpatterns/patterns/conditional-cascading-update/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsconditional-cascading-update><span>Conditional Cascading Update</span></a>
|
||||
|
|
@ -231,9 +213,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<ul class="ul-4 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatternspatternsnet-exception-handling-in-caltryfunction-net-exception-handling-in-cal-li>
|
||||
<a href=/docs/navpatterns/patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsnet-exception-handling-in-caltryfunction-net-exception-handling-in-cal><span>TryFunction NET Exception Handling in CAL</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsno-series-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsno-series-li>
|
||||
<a href=/docs/navpatterns/patterns/no-series/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsno-series><span>No Series</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsnavpatternspatternsnotifications-li>
|
||||
<a href=/docs/navpatterns/patterns/notifications/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatternspatternsnotifications><span>Notifications</span></a>
|
||||
|
|
@ -242,9 +222,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/patterns/notifications/in-context-notifications/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsnotificationsin-context-notifications><span>In-context Notifications</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatternspatternsnotificationsnotification-lifecycle-management-pattern-li>
|
||||
<a href=/docs/navpatterns/patterns/notifications/notification-lifecycle-management-pattern/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsnotificationsnotification-lifecycle-management-pattern><span>Notification Lifecycle Management Pattern</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsobserver-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsobserver-li>
|
||||
<a href=/docs/navpatterns/patterns/observer/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsobserver><span>Observer</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsposting-routine-select-behavior-li>
|
||||
<a href=/docs/navpatterns/patterns/posting-routine-select-behavior/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsposting-routine-select-behavior><span>Posting Routine - Select Behavior</span></a>
|
||||
|
|
@ -259,9 +237,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/patterns/queries/use-queries-to-detect-duplicate-records/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsqueriesuse-queries-to-detect-duplicate-records><span>Use Queries to Detect Duplicate Records</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatternspatternsqueriesuse-queries-to-replace-nested-loops-li>
|
||||
<a href=/docs/navpatterns/patterns/queries/use-queries-to-replace-nested-loops/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsqueriesuse-queries-to-replace-nested-loops><span>Use Queries to Replace Nested Loops</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsread-once-initialization-and-validation-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsread-once-initialization-and-validation-li>
|
||||
<a href=/docs/navpatterns/patterns/read-once-initialization-and-validation/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsread-once-initialization-and-validation><span>Read-once Initialization and Validation</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsreleased-entity-li>
|
||||
<a href=/docs/navpatterns/patterns/released-entity/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsreleased-entity><span>Released Entity</span></a>
|
||||
|
|
@ -280,9 +256,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/patterns/security/4-masked-text/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternssecurity4-masked-text><span>Masked Text</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatternspatternssecurity5-ssl-in-nav-li>
|
||||
<a href=/docs/navpatterns/patterns/security/5-ssl-in-nav/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternssecurity5-ssl-in-nav><span>SSL in NAV</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternssetup-specificity-fallback-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternssetup-specificity-fallback-li>
|
||||
<a href=/docs/navpatterns/patterns/setup-specificity-fallback/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternssetup-specificity-fallback><span>Setup Specificity Fallback</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternssilent-file-upload-and-download-li>
|
||||
<a href=/docs/navpatterns/patterns/silent-file-upload-and-download/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternssilent-file-upload-and-download><span>Silent File Upload and Download</span></a>
|
||||
|
|
@ -298,11 +272,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/patterns/singleton/singleton-table/cue-table/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternssingletonsingleton-tablecue-table><span>Cue Table</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatternspatternssingletonsingleton-tablesetup-table-li>
|
||||
<a href=/docs/navpatterns/patterns/singleton/singleton-table/setup-table/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternssingletonsingleton-tablesetup-table><span>Setup Table</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsstandard-journal-li>
|
||||
</li></ul></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsstandard-journal-li>
|
||||
<a href=/docs/navpatterns/patterns/standard-journal/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsstandard-journal><span>Standard Journal</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternstemporary-dataset-report-li>
|
||||
<a href=/docs/navpatterns/patterns/temporary-dataset-report/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternstemporary-dataset-report><span>Temporary Dataset Report</span></a>
|
||||
|
|
@ -312,18 +282,14 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/patterns/transfer-custom-fields/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternstransfer-custom-fields><span>Transfer Custom Fields</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternspatternsvariant-facade-li>
|
||||
<a href=/docs/navpatterns/patterns/variant-facade/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternspatternsvariant-facade><span>Variant Facade</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsnavpatterns2-anti-patterns-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsnavpatterns2-anti-patterns-li>
|
||||
<a href=/docs/navpatterns/2-anti-patterns/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns2-anti-patterns><span>2. Anti-Patterns</span></a>
|
||||
<ul class="ul-3 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns2-anti-patternsnav-upgrade-li>
|
||||
<a href=/docs/navpatterns/2-anti-patterns/nav-upgrade/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns2-anti-patternsnav-upgrade><span>Nav Upgrade</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns2-anti-patternsreusable-bugs-li>
|
||||
<a href=/docs/navpatterns/2-anti-patterns/reusable-bugs/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns2-anti-patternsreusable-bugs><span>Reusable Bugs</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsnavpatterns3-cal-coding-guidelines-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsnavpatterns3-cal-coding-guidelines-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns3-cal-coding-guidelines><span>3. CAL Coding Guidelines</span></a>
|
||||
<ul class="ul-3 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesdesign-li>
|
||||
|
|
@ -357,18 +323,14 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/3-cal-coding-guidelines/design/variable-capacity-mismatch/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesdesignvariable-capacity-mismatch><span>Variable Capacity Mismatch</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesdesignwith-scope-name-collision-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/design/with-scope-name-collision/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesdesignwith-scope-name-collision><span>WITH Scope Name Collision</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesinternally-used-dot-net-types-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesinternally-used-dot-net-types-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/internally-used-dot-net-types/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesinternally-used-dot-net-types><span>Internally used DotNet Types</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesinternationalization-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/internationalization/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns3-cal-coding-guidelinesinternationalization><span>Internationalization</span></a>
|
||||
<ul class="ul-4 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesinternationalizationusing-calcdate-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/internationalization/using-calcdate/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesinternationalizationusing-calcdate><span>Using Calcdate</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelineslocalizability-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelineslocalizability-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/localizability/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns3-cal-coding-guidelineslocalizability><span>Localizability</span></a>
|
||||
<ul class="ul-4 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelineslocalizabilitycaptionml-for-system-tables-li>
|
||||
|
|
@ -381,9 +343,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/3-cal-coding-guidelines/localizability/use-text-constants/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelineslocalizabilityuse-text-constants><span>Use Text Constants</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelineslocalizabilityusing-optioncaptionml-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/localizability/using-optioncaptionml/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelineslocalizabilityusing-optioncaptionml><span>Using OptionCaptionML</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesreadability-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesreadability-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/readability/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns3-cal-coding-guidelinesreadability><span>Readability</span></a>
|
||||
<ul class="ul-4 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesreadabilitybegin-as-an-afterword-li>
|
||||
|
|
@ -450,9 +410,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/3-cal-coding-guidelines/readability/variable-naming/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesreadabilityvariable-naming><span>Variable Naming</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesreadabilityvariables-declarations-order-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/readability/variables-declarations-order/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesreadabilityvariables-declarations-order><span>Variables Declarations Order</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesux-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesux-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/ux/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns3-cal-coding-guidelinesux><span>UX</span></a>
|
||||
<ul class="ul-4 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesuxactions-images-li>
|
||||
|
|
@ -463,11 +421,7 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/3-cal-coding-guidelines/ux/fielderror/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesuxfielderror><span>FIELDERROR</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns3-cal-coding-guidelinesuxmessage-and-error-li>
|
||||
<a href=/docs/navpatterns/3-cal-coding-guidelines/ux/message-and-error/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns3-cal-coding-guidelinesuxmessage-and-error><span>MESSAGE and ERROR</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsnavpatterns4-get-involved-li>
|
||||
</li></ul></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsnavpatterns4-get-involved-li>
|
||||
<a href=/docs/navpatterns/4-get-involved/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsnavpatterns4-get-involved><span>(OLD) Get Involved</span></a>
|
||||
<ul class="ul-3 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns4-get-involvedcode-of-conduct-li>
|
||||
|
|
@ -476,13 +430,9 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/navpatterns/4-get-involved/patterns-authors/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns4-get-involvedpatterns-authors><span>Patterns Authors</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docsnavpatterns4-get-involvedtemplate-for-writing-nav-design-patterns-li>
|
||||
<a href=/docs/navpatterns/4-get-involved/template-for-writing-nav-design-patterns/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatterns4-get-involvedtemplate-for-writing-nav-design-patterns><span>Template for writing Nav Design Patterns</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternsrelated-links-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsnavpatternsrelated-links-li>
|
||||
<a href=/docs/navpatterns/related-links/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsnavpatternsrelated-links><span>Related Links</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docscontributing-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docscontributing-li>
|
||||
<a href=/docs/contributing/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docscontributing><span>Contributing</span></a>
|
||||
<ul class="ul-2 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docscontributingformattingtips-li>
|
||||
|
|
@ -498,27 +448,14 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href=/docs/contributing/installhugo/manuallyonwindows11/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontributinginstallhugomanuallyonwindows11><span>Manually on Windows 11</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docscontributinginstallhugousingpowershellonwindows11-li>
|
||||
<a href=/docs/contributing/installhugo/usingpowershellonwindows11/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontributinginstallhugousingpowershellonwindows11><span>Powershell on Windows 11</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docscontributingtemplates-li>
|
||||
</li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child collapse" id=m-docscontributingtemplates-li>
|
||||
<a href=/docs/contributing/templates/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docscontributingtemplates><span>Templates</span></a>
|
||||
<ul class="ul-3 foldable">
|
||||
<li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docscontributingtemplatespatterns-li>
|
||||
<a href=/docs/contributing/templates/patterns/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontributingtemplatespatterns><span>Pattern Name</span></a>
|
||||
</li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child collapse" id=m-docscontributingtemplatesbestpractice-li>
|
||||
<a href=/docs/contributing/templates/bestpractice/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontributingtemplatesbestpractice><span>Title Here</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
</aside>
|
||||
<aside class="d-none d-xl-block col-xl-2 td-sidebar-toc d-print-none">
|
||||
</li></ul></li></ul></li></ul></li></ul></nav></div></aside><aside class="d-none d-xl-block col-xl-2 td-sidebar-toc d-print-none">
|
||||
<div class="td-page-meta ml-2 pb-1 pt-2 mb-0">
|
||||
<a href=https://github.com/microsoft/alguidelines/tree/main/content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/index.md class=td-page-meta--view target=_blank rel=noopener><i class="fa fa-file-alt fa-fw"></i> View page source</a>
|
||||
<a href=https://github.com/microsoft/alguidelines/edit/main/content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/index.md class=td-page-meta--edit target=_blank rel=noopener><i class="fa fa-edit fa-fw"></i> Edit this page</a>
|
||||
|
|
@ -526,197 +463,105 @@ Description The Dynamics 365 Business Central release (April 2018) introduces a
|
|||
<a href="https://github.com/microsoft/alguidelines/issues/new?title=Extending%20the%20Role%20Center%20Headlines" class=td-page-meta--issue target=_blank rel=noopener><i class="fab fa-github fa-fw"></i> Create Issue</a>
|
||||
<a href="https://github.com/microsoft/alguidelines/discussions?discussions_q=Extending%20the%20Role%20Center%20Headlines" class=td-page-meta--issue target=_blank rel=noopener><i class="fab fa-github fa-fw"></i> Discussions</a>
|
||||
<a href=https://github.com/microsoft/alguidelines/issues/new class=td-page-meta--project-issue target=_blank rel=noopener><i class="fas fa-tasks fa-fw"></i> Create project issue</a>
|
||||
</div>
|
||||
<div class=td-toc><nav id=TableOfContents>
|
||||
</div><div class=td-toc><nav id=TableOfContents>
|
||||
<ul>
|
||||
<li><a href=#context>Context</a></li>
|
||||
<li><a href=#description>Description</a></li>
|
||||
<li><a href=#usage>Usage</a>
|
||||
<li><a href=#context>Context</a></li><li><a href=#description>Description</a></li><li><a href=#usage>Usage</a>
|
||||
<ul>
|
||||
<li><a href=#examples>Examples:</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href=#usages-in-nav>Usages in NAV:</a></li>
|
||||
</ul>
|
||||
</nav></div>
|
||||
<div class="taxonomy taxonomy-terms-cloud taxo-tags">
|
||||
<h5 class=taxonomy-title>Tag Cloud</h5>
|
||||
<ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/al/ data-taxonomy-term=al><span class=taxonomy-label>AL</span><span class=taxonomy-count>29</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/api/ data-taxonomy-term=api><span class=taxonomy-label>API</span><span class=taxonomy-count>3</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/c/al/ data-taxonomy-term=c/al><span class=taxonomy-label>C/AL</span><span class=taxonomy-count>136</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/decoupling/ data-taxonomy-term=decoupling><span class=taxonomy-label>Decoupling</span><span class=taxonomy-count>2</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/extendability/ data-taxonomy-term=extendability><span class=taxonomy-label>Extendability</span><span class=taxonomy-count>3</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/interface/ data-taxonomy-term=interface><span class=taxonomy-label>Interface</span><span class=taxonomy-count>1</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/performance/ data-taxonomy-term=performance><span class=taxonomy-label>Performance</span><span class=taxonomy-count>2</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/readability/ data-taxonomy-term=readability><span class=taxonomy-label>Readability</span><span class=taxonomy-count>53</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/telemetry/ data-taxonomy-term=telemetry><span class=taxonomy-label>Telemetry</span><span class=taxonomy-count>1</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/testability/ data-taxonomy-term=testability><span class=taxonomy-label>Testability</span><span class=taxonomy-count>2</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="taxonomy taxonomy-terms-cloud taxo-categories">
|
||||
<h5 class=taxonomy-title>Categories</h5>
|
||||
<ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/categories/best-practice/ data-taxonomy-term=best-practice><span class=taxonomy-label>Best Practice</span><span class=taxonomy-count>86</span></a></li>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/categories/pattern/ data-taxonomy-term=pattern><span class=taxonomy-label>Pattern</span><span class=taxonomy-count>70</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</aside>
|
||||
<main class="col-12 col-md-9 col-xl-8 pl-md-5" role=main>
|
||||
<li><a href=#examples>Examples:</a></li></ul></li><li><a href=#usages-in-nav>Usages in NAV:</a></li></ul></nav></div><div class="taxonomy taxonomy-terms-cloud taxo-tags">
|
||||
<h5 class=taxonomy-title>Tag Cloud</h5><ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/al/ data-taxonomy-term=al><span class=taxonomy-label>AL</span><span class=taxonomy-count>30</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/api/ data-taxonomy-term=api><span class=taxonomy-label>API</span><span class=taxonomy-count>3</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/c/al/ data-taxonomy-term=c/al><span class=taxonomy-label>C/AL</span><span class=taxonomy-count>136</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/decoupling/ data-taxonomy-term=decoupling><span class=taxonomy-label>Decoupling</span><span class=taxonomy-count>2</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/extendability/ data-taxonomy-term=extendability><span class=taxonomy-label>Extendability</span><span class=taxonomy-count>3</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/interface/ data-taxonomy-term=interface><span class=taxonomy-label>Interface</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/performance/ data-taxonomy-term=performance><span class=taxonomy-label>Performance</span><span class=taxonomy-count>2</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/readability/ data-taxonomy-term=readability><span class=taxonomy-label>Readability</span><span class=taxonomy-count>53</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/telemetry/ data-taxonomy-term=telemetry><span class=taxonomy-label>Telemetry</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/tags/testability/ data-taxonomy-term=testability><span class=taxonomy-label>Testability</span><span class=taxonomy-count>2</span></a></li></ul></div><div class="taxonomy taxonomy-terms-cloud taxo-categories">
|
||||
<h5 class=taxonomy-title>Categories</h5><ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/categories/best-practice/ data-taxonomy-term=best-practice><span class=taxonomy-label>Best Practice</span><span class=taxonomy-count>86</span></a></li><li><a class=taxonomy-term href=https://alguidelines.dev/categories/pattern/ data-taxonomy-term=pattern><span class=taxonomy-label>Pattern</span><span class=taxonomy-count>71</span></a></li></ul></div></aside><main class="col-12 col-md-9 col-xl-8 pl-md-5" role=main>
|
||||
<nav aria-label=breadcrumb class=td-breadcrumbs>
|
||||
<ol class=breadcrumb>
|
||||
<li class=breadcrumb-item>
|
||||
<a href=https://alguidelines.dev/docs/>Docs</a>
|
||||
</li>
|
||||
<li class=breadcrumb-item>
|
||||
</li><li class=breadcrumb-item>
|
||||
<a href=https://alguidelines.dev/docs/navpatterns/>NAV Patterns Archive</a>
|
||||
</li>
|
||||
<li class=breadcrumb-item>
|
||||
</li><li class=breadcrumb-item>
|
||||
<a href=https://alguidelines.dev/docs/navpatterns/patterns/>1. Patterns</a>
|
||||
</li>
|
||||
<li class="breadcrumb-item active" aria-current=page>
|
||||
</li><li class="breadcrumb-item active" aria-current=page>
|
||||
<a href=https://alguidelines.dev/docs/navpatterns/patterns/extending-the-role-center-headlines/>Extending the Role Center Headlines</a>
|
||||
</li>
|
||||
</ol>
|
||||
</nav>
|
||||
<div class=td-content>
|
||||
<h1>Extending the Role Center Headlines</h1>
|
||||
<header class=article-meta>
|
||||
</li></ol></nav><div class=td-content>
|
||||
<h1>Extending the Role Center Headlines</h1><header class=article-meta>
|
||||
<div class="taxonomy taxonomy-terms-article taxo-tags">
|
||||
<h5 class=taxonomy-title>Tags:</h5>
|
||||
<ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/c/al/ data-taxonomy-term=c/al><span class=taxonomy-label>C/AL</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="taxonomy taxonomy-terms-article taxo-categories">
|
||||
<h5 class=taxonomy-title>Categories:</h5>
|
||||
<ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/categories/pattern/ data-taxonomy-term=pattern><span class=taxonomy-label>Pattern</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</header>
|
||||
<p><em>By David Bastide at Microsoft Development Center Copenhagen</em></p>
|
||||
<p><a href=3733.logo.png><img src=3733.logo.png alt=" "></a></p>
|
||||
<h2 id=context>Context</h2>
|
||||
<p>Headlines are designed as a page of type HeadlinePart containing at least one text field. The part is added to the top of Role Center pages.<br>
|
||||
This document provides an elegant and extensible pattern about how to extend the Role Center headlines to add your own business headlines based on your data, and display them only if relevant.</p>
|
||||
<h2 id=description>Description</h2>
|
||||
<p>The Dynamics 365 Business Central release (April 2018) introduces a new HeadlinePart page type. This page type defines a page that rotates a display of several headlines after another, in the web client. A user can also click to switch to another headline. Headlines can also include a drilldown action that will be invoked when the user clicks the headline Text of the payload can be emphasized.<br>
|
||||
Headlines are divided in 2 parts: the qualifier, and the payload as you can see in the figure below.</p>
|
||||
<p><a href=Headline.png><img src=Headline.png alt=" "></a></p>
|
||||
<p><em>Figure 1: Qualifier, Payload and emphasized text.</em></p>
|
||||
<h2 id=usage>Usage</h2>
|
||||
<p>A page part has been added to each major Role Center:</p>
|
||||
<ul>
|
||||
<li>Page 9006 Order Processor Role Center, contains Page 1441 Headline RC Order Processor</li>
|
||||
<li>Page 9015 Job Project Manager RC, contains Page 1443 Headline RC Project Manager</li>
|
||||
<li>Page 9022 Business Manager Role Center, contains Page 1440 Headline RC Business Manager</li>
|
||||
<li>Page 9024 Security Admin Role Center, contains Page 1445 Headline RC Administrator</li>
|
||||
<li>Page 9026 Sales & Relationship Mgr. RC, contains Page 1444 Headline RC Relationship Mgt.</li>
|
||||
<li>Page 9027 Accountant Role Center, contains Page 1442 Headline RC Accountant</li>
|
||||
<li>Page 9028 Team Member Role Center, contains Page 1446 Headline RC Team Member</li>
|
||||
<li>Page 9010 Production Planner Role Center, contains Page 1447 Headline RC Prod. Planner</li>
|
||||
<li>Page 9016 Service Dispatcher Role Center, contains Page 1448 Headline RC Serv. Dispatcher</li>
|
||||
</ul>
|
||||
<p>You can create extensions that extend these pages to add your own headlines.<br>
|
||||
If no headline is added on these pages, fallback headlines will be displayed.</p>
|
||||
<p>The process to extend the headlines of a Role Center is simple:</p>
|
||||
<ol>
|
||||
<li>In a V2 extension, extend the pages (PAG1440 to 1446) with one or more fields you want to add as headlines. The field and its visibility should be variables that are populated in OnAfterGetRecord.</li>
|
||||
<li>Subscribe to the OnComputeHeadlines event from the codeunits associated with the page (same ID and name as the page). Here you can compute your headlines. You should store the result in a table in your extension, so you can quickly get the results in step 3. The computation is done in a background task, not to decrease the performance of the role center pages.</li>
|
||||
<li>Subscribe to the OnIsAnyExtensionHeadlineVisible event from the page. This event is used to determine if any extension has visible headlines, and if so, hide the fallback headlines. You should set the ExtensionHeadlinesVisible variable to true if your extension has headlines to display at the time of the event. Otherwise, do nothing.</li>
|
||||
<li>In the page, in the OnAfterGetRecord trigger, get the headline text and visibility values and copy them to your added fields.</li>
|
||||
</ol>
|
||||
<p>To format headlines, you should use Codeunit 1439 Headline Management functions:</p>
|
||||
<ul>
|
||||
<li>Truncate: to truncate a text gracefully when possible with “…”. For example, HeadlineManagement.Truncate(‘the text’,6) returns “the…”.</li>
|
||||
<li>Emphasize: to emphasize part of the headline payload. Emphasized text is shown with a different style.</li>
|
||||
<li>GetHeadlineText: to build the headline text. You provide the headline qualifier and payload, and you get the headline in a format that will be interpreted and formatted correctly by the client. It returns false if the qualifier exceeds its maximum length (50 characters) or payload exceeds its maximum length (75 characters). In that case it will not return the headline. If the qualifier you specify is empty, the default text “HEADLINE” will be displayed in the qualifier area. The payload must not be empty.</li>
|
||||
</ul>
|
||||
<h3 id=examples>Examples:</h3>
|
||||
<h4 id=1-extending-the-page-with-a-new-headline>1. Extending the page with a new headline:</h4>
|
||||
<div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al><span style=color:#204a87;font-weight:700>group</span><span style=color:#ce5c00;font-weight:700>(</span>LargestSale<span style=color:#ce5c00;font-weight:700>)
|
||||
</span><span style=color:#ce5c00;font-weight:700></span>{<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>Visible<span style=color:#f8f8f8;text-decoration:underline> </span>=<span style=color:#f8f8f8;text-decoration:underline> </span>LargestSaleVisible<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>ShowCaption=false<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>Editable=false<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>field</span><span style=color:#ce5c00;font-weight:700>(</span>LargestSaleText<span style=color:#000;font-weight:700>;</span>LargestSaleText<span style=color:#ce5c00;font-weight:700>)
|
||||
</span><span style=color:#ce5c00;font-weight:700> </span>{<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>ApplicationArea<span style=color:#f8f8f8;text-decoration:underline> </span>=<span style=color:#f8f8f8;text-decoration:underline> </span>Basic<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>Suite<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>DrillDown=true<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>trigger</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnDrillDown<span style=color:#ce5c00;font-weight:700>()
|
||||
</span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#204a87;font-weight:700>var</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusHeadlineMgt<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Codeunit</span><span style=color:#f8f8f8;text-decoration:underline> </span>"Essential Bus. Headline Mgt."<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusHeadlineMgt<span style=color:#ce5c00;font-weight:700>.</span>OnDrillDownLargestSale<span style=color:#ce5c00;font-weight:700>()</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>}<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline></span>}<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></code></pre></div><h4 id=2-subscribing-to-the-oncomputeheadlines-event-and-computing-headlines>2. Subscribing to the OnComputeHeadlines event, and computing headlines</h4>
|
||||
<div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al>[EventSubscriber<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#204a87;font-weight:700>ObjectType</span><span style=color:#000;font-weight:700>::</span><span style=color:#204a87;font-weight:700>Codeunit</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Codeunit</span><span style=color:#000;font-weight:700>::</span>"Headline RC Business Manager"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>'OnComputeHeadlines'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>''</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span>]<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>procedure</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnComputeHeadlinesBusinessManager<span style=color:#ce5c00;font-weight:700>()
|
||||
</span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic>// [...] compute headline, and init the EssentialBusinessHeadline record
|
||||
</span><span style=color:#8f5902;font-style:italic></span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>if</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>not</span><span style=color:#f8f8f8;text-decoration:underline> </span>ShowHeadline<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>then</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>exit</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic>// not enough data to compute headline
|
||||
</span><span style=color:#8f5902;font-style:italic></span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>if</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>not</span><span style=color:#f8f8f8;text-decoration:underline> </span>HeadlineManagement<span style=color:#ce5c00;font-weight:700>.</span>GetHeadlineText<span style=color:#ce5c00;font-weight:700>(
|
||||
</span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#4e9a06>'Insight from last week'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>StrSubstNo<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#4e9a06>'The largest posted sales invoice was for %1'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>HeadlineManagement<span style=color:#ce5c00;font-weight:700>.</span>Emphasize<span style=color:#ce5c00;font-weight:700>(</span>Format<span style=color:#ce5c00;font-weight:700>(</span>CustomerLedgerEntry<span style=color:#ce5c00;font-weight:700>.</span>Amount<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#0000cf;font-weight:700>0</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>TypeHelper<span style=color:#ce5c00;font-weight:700>.</span>GetAmountFormatWithUserLocale<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#4e9a06>'$'</span><span style=color:#ce5c00;font-weight:700>))))
|
||||
</span><span style=color:#ce5c00;font-weight:700> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Text"<span style=color:#ce5c00;font-weight:700>)
|
||||
</span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#204a87;font-weight:700>then</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>exit</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>Validate<span style=color:#ce5c00;font-weight:700>(</span>"Headline Visible"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span><span style=color:#204a87;font-weight:700>Modify</span><span style=color:#ce5c00;font-weight:700>()</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></code></pre></div><h4 id=3-subscribing-to-the-onisanyextensionheadlinevisible-event>3. Subscribing to the OnIsAnyExtensionHeadlineVisible event</h4>
|
||||
<div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al>[EventSubscriber<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#204a87;font-weight:700>ObjectType</span><span style=color:#000;font-weight:700>::</span><span style=color:#204a87;font-weight:700>Page</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Page</span><span style=color:#000;font-weight:700>::</span>"Headline RC Business Manager"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>'OnIsAnyExtensionHeadlineVisible'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>''</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span>]<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>procedure</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnIsAnyExtensionHeadlineVisible<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#204a87;font-weight:700>var</span><span style=color:#f8f8f8;text-decoration:underline> </span>ExtensionHeadlinesVisible<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Boolean</span><span style=color:#ce5c00;font-weight:700>)
|
||||
</span><span style=color:#ce5c00;font-weight:700></span><span style=color:#204a87;font-weight:700>var</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Record</span><span style=color:#f8f8f8;text-decoration:underline> </span>"Essential Business Headline"<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>AtLeastOneHeadlineVisible<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Boolean</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>SetRange<span style=color:#ce5c00;font-weight:700>(</span>"Headline Visible"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>SetFilter<span style=color:#ce5c00;font-weight:700>(</span>"Headline Name"<span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>'%1|%2|%3|%4|%5'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>LargestOrder<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>LargestSale<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>BusiestResource<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>MostPopularItem<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>SalesIncrease<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>TopCustomer<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>AtLeastOneHeadlineVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>not</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>IsEmpty<span style=color:#ce5c00;font-weight:700>()</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic>// only modify the var if this extension is making some headlines visible, setting to false could override some other extensions setting the value to true
|
||||
</span><span style=color:#8f5902;font-style:italic></span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>if</span><span style=color:#f8f8f8;text-decoration:underline> </span>AtLeastOneHeadlineVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>then</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>ExtensionHeadlinesVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></code></pre></div><h4 id=heading></h4>
|
||||
<h4 id=4-setting-the-headline-text-on-the-page>4. Setting the headline text on the page</h4>
|
||||
<div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al><span style=color:#204a87;font-weight:700>trigger</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnAfterGetRecord<span style=color:#ce5c00;font-weight:700>()
|
||||
</span><span style=color:#ce5c00;font-weight:700></span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>GetHeadline<span style=color:#ce5c00;font-weight:700>(</span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>LargestSale<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>LargestSaleVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Visible"<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline> </span>LargestSaleText<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Text"<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></code></pre></div><p><a href=0724.Headline-sequence-diagram-v2.png><img src=0724.Headline-sequence-diagram-v2.png alt=" "></a></p>
|
||||
<p><em>Figure 2: Sequence diagram of headline usage</em></p>
|
||||
<h2 id=usages-in-nav>Usages in NAV:</h2>
|
||||
<ul>
|
||||
<li>Essential Business Headlines extension</li>
|
||||
</ul>
|
||||
<div class="text-muted mt-5 pt-3 border-top">
|
||||
<h5 class=taxonomy-title>Tags:</h5><ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/tags/c/al/ data-taxonomy-term=c/al><span class=taxonomy-label>C/AL</span></a></li></ul></div><div class="taxonomy taxonomy-terms-article taxo-categories">
|
||||
<h5 class=taxonomy-title>Categories:</h5><ul class=taxonomy-terms>
|
||||
<li><a class=taxonomy-term href=https://alguidelines.dev/categories/pattern/ data-taxonomy-term=pattern><span class=taxonomy-label>Pattern</span></a></li></ul></div></header><p><em>By David Bastide at Microsoft Development Center Copenhagen</em></p><p><a href=3733.logo.png><img src=3733.logo.png alt=" "></a></p><h2 id=context>Context</h2><p>Headlines are designed as a page of type HeadlinePart containing at least one text field. The part is added to the top of Role Center pages.<br>
|
||||
This document provides an elegant and extensible pattern about how to extend the Role Center headlines to add your own business headlines based on your data, and display them only if relevant.</p><h2 id=description>Description</h2><p>The Dynamics 365 Business Central release (April 2018) introduces a new HeadlinePart page type. This page type defines a page that rotates a display of several headlines after another, in the web client. A user can also click to switch to another headline. Headlines can also include a drilldown action that will be invoked when the user clicks the headline Text of the payload can be emphasized.<br>
|
||||
Headlines are divided in 2 parts: the qualifier, and the payload as you can see in the figure below.</p><p><a href=Headline.png><img src=Headline.png alt=" "></a></p><p><em>Figure 1: Qualifier, Payload and emphasized text.</em></p><h2 id=usage>Usage</h2><p>A page part has been added to each major Role Center:</p><ul>
|
||||
<li>Page 9006 Order Processor Role Center, contains Page 1441 Headline RC Order Processor</li><li>Page 9015 Job Project Manager RC, contains Page 1443 Headline RC Project Manager</li><li>Page 9022 Business Manager Role Center, contains Page 1440 Headline RC Business Manager</li><li>Page 9024 Security Admin Role Center, contains Page 1445 Headline RC Administrator</li><li>Page 9026 Sales & Relationship Mgr. RC, contains Page 1444 Headline RC Relationship Mgt.</li><li>Page 9027 Accountant Role Center, contains Page 1442 Headline RC Accountant</li><li>Page 9028 Team Member Role Center, contains Page 1446 Headline RC Team Member</li><li>Page 9010 Production Planner Role Center, contains Page 1447 Headline RC Prod. Planner</li><li>Page 9016 Service Dispatcher Role Center, contains Page 1448 Headline RC Serv. Dispatcher</li></ul><p>You can create extensions that extend these pages to add your own headlines.<br>
|
||||
If no headline is added on these pages, fallback headlines will be displayed.</p><p>The process to extend the headlines of a Role Center is simple:</p><ol>
|
||||
<li>In a V2 extension, extend the pages (PAG1440 to 1446) with one or more fields you want to add as headlines. The field and its visibility should be variables that are populated in OnAfterGetRecord.</li><li>Subscribe to the OnComputeHeadlines event from the codeunits associated with the page (same ID and name as the page). Here you can compute your headlines. You should store the result in a table in your extension, so you can quickly get the results in step 3. The computation is done in a background task, not to decrease the performance of the role center pages.</li><li>Subscribe to the OnIsAnyExtensionHeadlineVisible event from the page. This event is used to determine if any extension has visible headlines, and if so, hide the fallback headlines. You should set the ExtensionHeadlinesVisible variable to true if your extension has headlines to display at the time of the event. Otherwise, do nothing.</li><li>In the page, in the OnAfterGetRecord trigger, get the headline text and visibility values and copy them to your added fields.</li></ol><p>To format headlines, you should use Codeunit 1439 Headline Management functions:</p><ul>
|
||||
<li>Truncate: to truncate a text gracefully when possible with “…”. For example, HeadlineManagement.Truncate(’the text’,6) returns “the…”.</li><li>Emphasize: to emphasize part of the headline payload. Emphasized text is shown with a different style.</li><li>GetHeadlineText: to build the headline text. You provide the headline qualifier and payload, and you get the headline in a format that will be interpreted and formatted correctly by the client. It returns false if the qualifier exceeds its maximum length (50 characters) or payload exceeds its maximum length (75 characters). In that case it will not return the headline. If the qualifier you specify is empty, the default text “HEADLINE” will be displayed in the qualifier area. The payload must not be empty.</li></ul><h3 id=examples>Examples:</h3><h4 id=1-extending-the-page-with-a-new-headline>1. Extending the page with a new headline:</h4><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al><span style=display:flex><span><span style=color:#204a87;font-weight:700>group</span><span style=color:#ce5c00;font-weight:700>(</span>LargestSale<span style=color:#ce5c00;font-weight:700>)
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700></span>{<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>Visible<span style=color:#f8f8f8;text-decoration:underline> </span>=<span style=color:#f8f8f8;text-decoration:underline> </span>LargestSaleVisible<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>ShowCaption=false<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>Editable=false<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>field</span><span style=color:#ce5c00;font-weight:700>(</span>LargestSaleText<span style=color:#000;font-weight:700>;</span>LargestSaleText<span style=color:#ce5c00;font-weight:700>)
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700> </span>{<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>ApplicationArea<span style=color:#f8f8f8;text-decoration:underline> </span>=<span style=color:#f8f8f8;text-decoration:underline> </span>Basic<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>Suite<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>DrillDown=true<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>trigger</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnDrillDown<span style=color:#ce5c00;font-weight:700>()
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#204a87;font-weight:700>var</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusHeadlineMgt<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Codeunit</span><span style=color:#f8f8f8;text-decoration:underline> </span>"Essential Bus. Headline Mgt."<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusHeadlineMgt<span style=color:#ce5c00;font-weight:700>.</span>OnDrillDownLargestSale<span style=color:#ce5c00;font-weight:700>()</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>}<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span>}<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span></code></pre></div><h4 id=2-subscribing-to-the-oncomputeheadlines-event-and-computing-headlines>2. Subscribing to the OnComputeHeadlines event, and computing headlines</h4><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al><span style=display:flex><span>[EventSubscriber<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#204a87;font-weight:700>ObjectType</span><span style=color:#000;font-weight:700>::</span><span style=color:#204a87;font-weight:700>Codeunit</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Codeunit</span><span style=color:#000;font-weight:700>::</span>"Headline RC Business Manager"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>'OnComputeHeadlines'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>''</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span>]<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>procedure</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnComputeHeadlinesBusinessManager<span style=color:#ce5c00;font-weight:700>()
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic>// [...] compute headline, and init the EssentialBusinessHeadline record
|
||||
</span></span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic></span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>if</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>not</span><span style=color:#f8f8f8;text-decoration:underline> </span>ShowHeadline<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>then</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>exit</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic>// not enough data to compute headline
|
||||
</span></span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic></span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>if</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>not</span><span style=color:#f8f8f8;text-decoration:underline> </span>HeadlineManagement<span style=color:#ce5c00;font-weight:700>.</span>GetHeadlineText<span style=color:#ce5c00;font-weight:700>(
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#4e9a06>'Insight from last week'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>StrSubstNo<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#4e9a06>'The largest posted sales invoice was for %1'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>HeadlineManagement<span style=color:#ce5c00;font-weight:700>.</span>Emphasize<span style=color:#ce5c00;font-weight:700>(</span>Format<span style=color:#ce5c00;font-weight:700>(</span>CustomerLedgerEntry<span style=color:#ce5c00;font-weight:700>.</span>Amount<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#0000cf;font-weight:700>0</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>TypeHelper<span style=color:#ce5c00;font-weight:700>.</span>GetAmountFormatWithUserLocale<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#4e9a06>'$'</span><span style=color:#ce5c00;font-weight:700>))))
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Text"<span style=color:#ce5c00;font-weight:700>)
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700> </span><span style=color:#204a87;font-weight:700>then</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>exit</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>Validate<span style=color:#ce5c00;font-weight:700>(</span>"Headline Visible"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span><span style=color:#204a87;font-weight:700>Modify</span><span style=color:#ce5c00;font-weight:700>()</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span></code></pre></div><h4 id=3-subscribing-to-the-onisanyextensionheadlinevisible-event>3. Subscribing to the OnIsAnyExtensionHeadlineVisible event</h4><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al><span style=display:flex><span>[EventSubscriber<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#204a87;font-weight:700>ObjectType</span><span style=color:#000;font-weight:700>::</span><span style=color:#204a87;font-weight:700>Page</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Page</span><span style=color:#000;font-weight:700>::</span>"Headline RC Business Manager"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>'OnIsAnyExtensionHeadlineVisible'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>''</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span>]<span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>procedure</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnIsAnyExtensionHeadlineVisible<span style=color:#ce5c00;font-weight:700>(</span><span style=color:#204a87;font-weight:700>var</span><span style=color:#f8f8f8;text-decoration:underline> </span>ExtensionHeadlinesVisible<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Boolean</span><span style=color:#ce5c00;font-weight:700>)
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700></span><span style=color:#204a87;font-weight:700>var</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Record</span><span style=color:#f8f8f8;text-decoration:underline> </span>"Essential Business Headline"<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>AtLeastOneHeadlineVisible<span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>Boolean</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>SetRange<span style=color:#ce5c00;font-weight:700>(</span>"Headline Visible"<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>SetFilter<span style=color:#ce5c00;font-weight:700>(</span>"Headline Name"<span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>'%1|%2|%3|%4|%5'</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>LargestOrder<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>LargestSale<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>BusiestResource<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>MostPopularItem<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>SalesIncrease<span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>TopCustomer<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>AtLeastOneHeadlineVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>not</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>IsEmpty<span style=color:#ce5c00;font-weight:700>()</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic>// only modify the var if this extension is making some headlines visible, setting to false could override some other extensions setting the value to true
|
||||
</span></span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic></span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>if</span><span style=color:#f8f8f8;text-decoration:underline> </span>AtLeastOneHeadlineVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>then</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>ExtensionHeadlinesVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span>true<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span></code></pre></div><h4 id=heading></h4><h4 id=4-setting-the-headline-text-on-the-page>4. Setting the headline text on the page</h4><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-al data-lang=al><span style=display:flex><span><span style=color:#204a87;font-weight:700>trigger</span><span style=color:#f8f8f8;text-decoration:underline> </span>OnAfterGetRecord<span style=color:#ce5c00;font-weight:700>()
|
||||
</span></span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700></span><span style=color:#204a87;font-weight:700>begin</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>GetHeadline<span style=color:#ce5c00;font-weight:700>(</span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Name"<span style=color:#000;font-weight:700>::</span>LargestSale<span style=color:#ce5c00;font-weight:700>)</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>LargestSaleVisible<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Visible"<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>LargestSaleText<span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#ce5c00;font-weight:700>:=</span><span style=color:#f8f8f8;text-decoration:underline> </span>EssentialBusinessHeadline<span style=color:#ce5c00;font-weight:700>.</span>"Headline Text"<span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>end</span><span style=color:#000;font-weight:700>;</span><span style=color:#f8f8f8;text-decoration:underline>
|
||||
</span></span></span></code></pre></div><p><a href=0724.Headline-sequence-diagram-v2.png><img src=0724.Headline-sequence-diagram-v2.png alt=" "></a></p><p><em>Figure 2: Sequence diagram of headline usage</em></p><h2 id=usages-in-nav>Usages in NAV:</h2><ul>
|
||||
<li>Essential Business Headlines extension</li></ul><div class="text-muted mt-5 pt-3 border-top">
|
||||
Last modified February 24, 2022: <a href=https://github.com/microsoft/alguidelines/commit/5ee0436639455a35835c5ce88241d3fad662ee06>Added tags & categories + cleanup (5ee04366)</a>
|
||||
by waldo1001
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
<footer class="bg-dark py-5 row d-print-none">
|
||||
</div></div></main></div></div><footer class="bg-dark py-5 row d-print-none">
|
||||
<div class="container-fluid mx-sm-5">
|
||||
<div class=row>
|
||||
<div class="col-6 col-sm-4 text-xs-center order-sm-2">
|
||||
|
|
@ -725,31 +570,19 @@ by waldo1001
|
|||
<a class=text-white target=_blank rel=noopener href=https://github.com/microsoft/alguidelines aria-label=GitHub>
|
||||
<i class="fab fa-github"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="list-inline-item mx-2 h3" data-toggle=tooltip data-placement=top title=Twitter aria-label=Twitter>
|
||||
</li><li class="list-inline-item mx-2 h3" data-toggle=tooltip data-placement=top title=Twitter aria-label=Twitter>
|
||||
<a class=text-white target=_blank rel=noopener href="https://twitter.com/search?q=%23bcalhelp" aria-label=Twitter>
|
||||
<i class="fab fa-twitter"></i>
|
||||
</a>
|
||||
</li>
|
||||
<li class="list-inline-item mx-2 h3" data-toggle=tooltip data-placement=top title=Discord aria-label=Discord>
|
||||
</li><li class="list-inline-item mx-2 h3" data-toggle=tooltip data-placement=top title=Discord aria-label=Discord>
|
||||
<a class=text-white target=_blank rel=noopener href=https://discord.gg/4wbfNv3 aria-label=Discord>
|
||||
<i class="fab fa-discord"></i>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-6 col-sm-4 text-right text-xs-center order-sm-3">
|
||||
</div>
|
||||
<div class="col-12 col-sm-4 text-center py-2 order-sm-2">
|
||||
</li></ul></div><div class="col-6 col-sm-4 text-right text-xs-center order-sm-3">
|
||||
</div><div class="col-12 col-sm-4 text-center py-2 order-sm-2">
|
||||
<small class=text-white>© 2022 alguidelines.dev Project All Rights Reserved</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
<script src=https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js integrity=sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN crossorigin=anonymous></script>
|
||||
</div></div></div></footer></div><script src=https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js integrity=sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN crossorigin=anonymous></script>
|
||||
<script src=https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.min.js integrity="sha512-UR25UO94eTnCVwjbXozyeVd6ZqpaAE9naiEUBK/A+QDbfSTQFhPGj5lOR6d8tsgbBk84Ggb5A3EkjsOgPRPcKA==" crossorigin=anonymous></script>
|
||||
<script src=/js/tabpane-persist.js></script>
|
||||
<script src=/js/main.min.8ab8f81ff7e1454d30024cd6f956d4d341c3a97e2a673f988065f2ee4e147922.js integrity="sha256-irj4H/fhRU0wAkzW+VbU00HDqX4qZz+YgGXy7k4UeSI=" crossorigin=anonymous></script>
|
||||
</body>
|
||||
</html>
|
||||
<script src=/js/main.min.fc1551b8c1b40a6eaa08f3cb9c76f12ccd9aebc436cecdaf2341c890206d024a.js integrity="sha256-/BVRuMG0Cm6qCPPLnHbxLM2a68Q2zs2vI0HIkCBtAko=" crossorigin=anonymous></script>
|
||||
</body></html>
|
||||
Loading…
Add table
Add a link
Reference in a new issue