Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> applicationsService  [in template "20099#20135#8048153" at line 1, column 28]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign applicationData = application...  [in template "20099#20135#8048153" at line 1, column 1]
----
1<#assign applicationData = applicationsService.getApplicationDataByAppCode(ApplicationCode.getData()) /> 
2<#assign userHasAccess = applicationsService.userHasAccessToApplication(themeDisplay.getUserId(), applicationData.applicationDataId) /> 
3<#assign applicationSubGroup = applicationsService.getSubgroupByUserAccess(ApplicationCode.getData(),themeDisplay.getUserId())/> 
4<#assign appName = .vars['reserved-article-title'].data /> 
5<#assign applicationDataList = applicationsService.getAllApplicationData() /> 
6<#assign subApplicationPrefix = ApplicationCode.getData() + "|"/> 
7<#assign subgroups = []/> 
8<#assign singleLaunchUrl = "-"/> 
9<#list applicationSubGroup as item> 
10        <#assign parts = item.applicationCode?split("|") /> 
11				<#assign splitSize = parts?size /> 
12        <#if (splitSize > 2)> 
13            <#assign number = parts[splitSize - 1]?number /> 
14        <#else> 
15            <#assign number = 0 /> 
16        </#if> 
17        <#assign subgroups = subgroups + [{"item": item, "number": number}] /> 
18</#list> 
19 
20<#assign sortedList = subgroups?sort_by("number") /> 
21 
22<#assign isMultipleApplication = (subgroups?size > 1)/> 
23 
24<style> 
25  .journal-content-article .multi-app-drop-down { 
26      right: 15px; 
27
28    .journal-content-article .nav-dropdown-child-adjust-label { 
29      display: inline-block; 
30      white-space: normal; 
31      width: 180px; 
32      word-wrap: break-word; 
33
34</style> 
35 
36<div class="generic-page-header"> 
37  <div class="eyebrow-badge eyebrow-badge-bold v-m-bottom-xs"> 
38    <span class="v-fw-medium">User Guide</span> 
39  </div> 
40  <div class="row justify-content-end"> 
41    <div class="col-sm"> 
42      <h3 class="v-fw-medium v-m-bottom-s">${appName}</h3> 
43    </div> 
44    <div class="col-sm-auto"> 
45      <#if (userHasAccess || !applicationData.isVipAccessManaged)> 
46        <#if isMultipleApplication> 
47          <div> 
48            <button class="btn btn-secondary btn-dropdown" onclick="dropdownToggle()"> 
49              <img src="/o/bestbuy-theme/images/dropdown-caret-bottom.svg" /> 
50              Launch 
51            </button> 
52            <div class="multi-app-drop-down hidden"> 
53              <#list sortedList as entry> 
54                <a href="${entry.item.launchUrl}" class="nav-link top-navigation-link"  
55                  <#if entry.item.launchUrl?starts_with("http") || entry.item.launchUrl?starts_with("www")> 
56                    target="_blank" 
57                  <#else> 
58                    target="_self" 
59                  </#if>> 
60                  <div class="nav-dropdown-child-adjust"> 
61                    <div class="nav-dropdown-child-adjust-label"> 
62                      ${entry.item.applicationName} 
63                    </div> 
64                  </div> 
65                  &ZeroWidthSpace; 
66                </a> 
67              </#list> 
68            </div> 
69          </div> 
70        <#else> 
71          <#if (subgroups?size == 1)> 
72            <#assign singleLaunchUrl = subgroups[0].item.launchUrl> 
73            <#assign singleLaunchName = subgroups[0].item.applicationName /> 
74          <#else> 
75            <#assign singleLaunchUrl = applicationData.launchUrl/> 
76            <#assign singleLaunchName = appName> 
77          </#if> 
78          <a id="generic-page-header-launch-link" href="${singleLaunchUrl}" onclick="gaTracking('Launch App from User Guide', 'Launch ${singleLaunchName}');return true;"> 
79            <button class="btn btn-sm btn-blue"> 
80              <img id="generic-page-header-launch-icon" class="generic-page-header-launch-icon" src="/o/bestbuy-theme/images/launch-icon.svg" /> 
81              <span>Launch</span> 
82            </button> 
83          </a> 
84        </#if> 
85      <#else> 
86        <a href="${applicationData.userGuideRequestAccessUrl}" onclick="gaTracking('Request Access from User Guide', 'Request Access to ${appName}');return true;"> 
87          <button class="btn btn-sm btn-primary"> 
88            <img class="request-access-lock-icon" src="/o/bestbuy-theme/images/lock-blue.svg" /> 
89            <span>Request Access</span> 
90          </button> 
91        </a> 
92      </#if> 
93    </div> 
94  </div> 
95</div> 
96<script type="text/javascript"> 
97  function gaTracking(pageHeaderEventCategory, pageHeaderEventLabel) { 
98    ga('send', {hitType: 'event', eventCategory: pageHeaderEventCategory, eventAction: 'Click', eventLabel: pageHeaderEventLabel}); 
99
100     
101  function isExternalLink(url) { 
102    try { 
103      return new URL(url).origin !== location.origin; 
104    } catch(error) { 
105      return false; 
106
107
108     
109  var element; 
110  if (!isExternalLink("${singleLaunchUrl}")) { 
111    element = document.getElementById("generic-page-header-launch-icon"); 
112    if (element) { 
113      element.style.display = "none"; 
114
115  } else { 
116    var launchLinkTag = document.getElementById("generic-page-header-launch-link"); 
117    if (launchLinkTag) { 
118      launchLinkTag.target = "_blank"; 
119
120
121 
122  function dropdownToggle(e){ 
123    e = e || window.event; 
124    e.preventDefault(); 
125    e.currentTarget.classList.toggle('dropdown-active'); 
126    e.currentTarget.nextElementSibling.classList.toggle('hidden'); 
127    if (e.currentTarget.nextElementSibling.classList.contains('hidden')) { 
128      e.currentTarget.blur(); 
129
130
131</script> 

SAP Network Overview

Overview

Best Buy is migrating to the SAP Network (formerly Ariba) Source to Pay Platform for all our Goods Not for Resale (GNFR) purchases. This new best-in-class technology supports our goal of streamlining the procurement and accounts payable processes, enabling more touchless transactions with suppliers and creating efficiencies for both parties via a more robust collaboration and purchasing capability.

Best Buy is committed to working with your organization toward a smooth and efficient transition. As an immediate action, we ask that you please:

  1. Review the FAQs on this page to familiarize yourself with more details regarding this transition and the impact to your relationship with Best Buy.
  2. If you are not the appropriate contact within your organization for this transition, please provide the following information to the Best Buy Supplier Enablement Team at BBYProcurement@bestbuy.com: Contact’s name, title, email and phone number.
  3. If you are not currently doing business, do not plan on doing business with Best Buy in the future, or believe that this transition is not applicable to your company, please contact the Best Buy Supplier Enablement Team to be removed from further notifications.
Initial Notification Letter

View the email and letter you received from Best Buy about this transition:

SAP Network Communication

Supplier Summit December 2022

View the materials presented at our Supplier Summits held in December, 2022:

Supplier Summit Presentation

Help Help
Help Help