KAFFEKONSULENTENS RÅD
Test: Hvilken type kaffe-kollega er du? Og hvad siger din kaffevane om dig?
I BKI Professionel elsker vi at nørde kaffe – og vi har bemærket gennem vores mange års erfaring, at kaffen har sit helt eget sociale sprog. Måske din foretrukne kop siger mere om dig, end du lige går og tror... Tag vores test og se hvilken kaffe-kollega du er!
Claus Ryberg,
National salgschef,
BKI Professionel
TEST
Hvilken type kaffe-kollega er du? Og hvad siger din kaffevane om dig?
På enhver arbejdsplads er der én ting, der binder os sammen – og nej, det er ikke Teams-møder eller to-do-lister. Det er kaffen! Den trofaste følgesvend gennem hele arbejdsdagen, fra det første tjek af indbakken til eftermiddagens sidste deadline. Men har du nogensinde tænkt over, hvad din kaffevane siger om dig som kollega?
I BKI Professionel elsker vi at nørde kaffe – og vi har bemærket gennem vores mange års erfaring, at kaffen har sit helt eget sociale sprog. Det er ganske vist ikke noget vi har lavet en videnskabelig undersøgelse af, så fortvivl ikke hvis du ikke føler dig set. Men måske din foretrukne kop alligevel siger mere om dig, end du lige går og tror…
Svar på spøgsmålene nedenunder og se hvilken type kaffe-kollega du er!
FLEST A'ER
Den effektive espresso-entusiast
Kendetegn: Målrettet, struktureret og altid på farten.
Kaffevane: Et hurtigt skud espresso, gerne stående – det skal bare virke.
Espresso-typen har travlt, og det kan mærkes. De sætter pris på kvalitet og intensitet – både i kaffen og i hverdagen. De er ofte blandt dem, der får tingene gjort og elsker at tage ansvar. Til gengæld kan de godt springe kaffepausen over, hvis kalenderen er stram. Men husk at det gode samarbejde med dine kolleger også vokser også i pausen!
Kaffeløsning: Den ultimative espresso brygges bedst på en manuel espressomaskine for den helt rigtige crema og gode smag. Skal det være ekstra nemt og hurtigt at få sin espresso kan den fuldautomatiske kaffemaskine klare ærtere med et enkelt tryk.
FLEST B'ER
Den sociale slow-brewer
Kendetegn: Reflekterende, lyttende og god til relationer.
Kaffevane: En stempelkande til mødet eller kaffe brygget på et lille bryganlæg med omhu – gerne med lidt mælk i koppen og bedst i selskab med kolleger.
Denne kollega ser kaffepauserne som dagens højdepunkt. Det er her, idéerne blomstrer, og stemningen løftes. Kaffen er en anledning til dialog og fællesskab, og der går sjældent en dag uden en længere snak over kaffen. De sociale slow-brewers styrker? De bygger kultur og skaber trivsel på tværs af afdelinger.
Kaffeløsning: Prøv at brygge på en Coffee Queen, som både kan friskkværne bønnerne og hurtigt brygge den perfekte filterkaffe i mindre portioner. Nok til at byde kollgerne på en altid friskbrygget kop, mens du undgår kaffe der har stået hele dagen.
Error executing template "Designs/Swift_custom/Paragraph/Swift_TextAndImage.cshtml" System.NullReferenceException: Object reference not set to an instance of an object. at CompiledRazorTemplates.Dynamic.RazorEngine_857befa0eaad412baa9b5edac108ab29.<>c__DisplayClass4_0.<RenderButtons>b__0(TextWriter __razor_helper_writer) in D:\Solution\BKI Foods Swift - STAGING\Files\Templates\Designs\Swift_custom\Paragraph\Swift_TextAndImage.cshtml:line 289 at CompiledRazorTemplates.Dynamic.RazorEngine_857befa0eaad412baa9b5edac108ab29.Execute() in D:\Solution\BKI Foods Swift - STAGING\Files\Templates\Designs\Swift_custom\Paragraph\Swift_TextAndImage.cshtml:line 98 at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader) at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer) at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter) at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template) at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template) at Dynamicweb.Rendering.Template.RenderRazorTemplate()
1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using Dynamicweb.Ecommerce.ProductCatalog 3 @using S_DW_BKI_Swift.CustomModules.Extensions 4 5 @{ 6 Dynamicweb.Frontend.LinkViewModel link1 = new Dynamicweb.Frontend.LinkViewModel(); 7 Dynamicweb.Frontend.LinkViewModel link2 = new Dynamicweb.Frontend.LinkViewModel(); 8 9 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : string.Empty; 10 string layout = Model.Item.GetRawValueString("Layout", "image-top"); 11 string contentPadding = Model.Item.GetRawValueString("ContentPadding", string.Empty); 12 string contentPaddingClass = string.Empty; 13 string gapClass = " gap-3"; 14 15 switch (contentPadding) 16 { 17 case "small": 18 contentPaddingClass = " p-3"; 19 gapClass = " gap-0"; 20 break; 21 case "large": 22 contentPaddingClass = " p-5"; 23 gapClass = " gap-0"; 24 break; 25 } 26 } 27 28 <div class="d-flex flex-column@(gapClass) h-100 position-relative@(theme) item_@Model.Item.SystemName.ToLower()"> 29 <a id="@Model.ID" class="user-select-none position-absolute top-0" style="scroll-margin-top:var(--header-height,150px)"></a> 30 @switch (layout) 31 { 32 case "image-top": 33 @RenderImage() 34 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 35 { 36 <div class="d-flex flex-column gap-3 h-100@(contentPaddingClass)"> 37 @{ 38 @RenderTitle() 39 @RenderLead() 40 @RenderText() 41 @RenderButtons(link1, link2) 42 } 43 </div> 44 } 45 break; 46 47 case "title-top": 48 if (!string.IsNullOrEmpty(Model.Item.GetString("Title"))) 49 { 50 <div class="@(contentPaddingClass)"> 51 @{ @RenderTitle() } 52 </div> 53 } 54 @RenderImage() 55 if (!string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 56 { 57 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 58 @{ 59 @RenderLead() 60 @RenderText() 61 @RenderButtons(link1, link2) 62 } 63 </div> 64 } 65 break; 66 67 case "title-lead-top": 68 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead"))) 69 { 70 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 71 @{ 72 @RenderTitle() 73 @RenderLead() 74 } 75 </div> 76 } 77 @RenderImage() 78 if (!string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 79 { 80 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 81 @{ 82 @RenderText() 83 @RenderButtons(link1, link2) 84 } 85 </div> 86 } 87 break; 88 89 case "text-center": 90 @RenderImage() 91 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 92 { 93 <div class="d-flex flex-column gap-3 align-items-center text-center h-100@(contentPaddingClass)"> 94 @{ 95 @RenderTitle() 96 @RenderLead() 97 @RenderText() 98 @RenderButtons(link1, link2) 99 } 100 </div> 101 } 102 break; 103 104 case "image-bottom": 105 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 106 { 107 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 108 @{ 109 @RenderTitle() 110 @RenderLead() 111 @RenderText() 112 @RenderButtons(link1, link2) 113 } 114 </div> 115 } 116 @RenderImage() 117 break; 118 } 119 </div> 120 121 @helper RenderTitle() 122 { 123 bool hideTitle = Model.Item?.GetBoolean("HideTitle") ?? false; 124 string title = !hideTitle ? Model.Item.GetString("Title", string.Empty) : string.Empty; 125 126 if (!string.IsNullOrEmpty(title)) 127 { 128 string maxWidth = Model.Item.GetRawValueString("TextReadability", string.Empty) == "max-width-on" ? " mw-75ch" : string.Empty; 129 string titleFontSize = Model.Item.GetString("TitleFontSize", "h2"); 130 string titleColor = Model.Item.GetString("TitleColor", "text-inherit"); 131 string titleOpacity = Model.Item.GetString("TitleOpacity", "opacity-100"); 132 133 string headingLevel = Model.Item.GetString("HeadingLevel", "h2"); 134 string headingLevelStart = $"<{headingLevel} class=\"{titleFontSize} {titleColor} {titleOpacity}{maxWidth} m-0\">"; 135 string headingLevelStop = $"</{headingLevel}>"; 136 137 @headingLevelStart 138 @title 139 @headingLevelStop 140 } 141 } 142 143 @helper RenderLead() 144 { 145 if (!string.IsNullOrEmpty(Model.Item.GetString("Lead"))) 146 { 147 string subtitleColor = Model.Item.GetString("SubtitleColor", "text-inherit"); 148 string subtitleOpacity = Model.Item.GetString("SubtitleOpacity", "opacity-100"); 149 string maxWidth = Model.Item.GetRawValueString("TextReadability", string.Empty) == "max-width-on" ? " mw-75ch" : string.Empty; 150 string subtitleFontSize = Model.Item.GetRawValueString("SubtitleFontSize", "fs-5"); 151 152 <p class="m-0 lead @(subtitleFontSize) @(subtitleColor) @(subtitleOpacity)@(maxWidth)"> 153 @Model.Item.GetString("Lead") 154 </p> 155 } 156 } 157 158 @helper RenderText() 159 { 160 if (!string.IsNullOrEmpty(Model.Item.GetString("Text"))) 161 { 162 string maxWidth = Model.Item.GetRawValueString("TextReadability", string.Empty) == "max-width-on" ? " mw-75ch" : string.Empty; 163 string textColor = Model.Item.GetString("TextColor", "text-inherit"); 164 string textOpacity = Model.Item.GetString("TextOpacity", "opacity-100"); 165 166 <div class="mb-0-last-child @textColor @(textOpacity)@(maxWidth)"> 167 @Model.Item.GetString("Text") 168 </div> 169 } 170 } 171 172 @helper RenderImage() 173 { 174 if (!string.IsNullOrEmpty(Model.Item.GetString("Image"))) 175 { 176 int xPos = Model.Item?.GetFile("Image")?.FocalPositionFromLeft ?? 50; 177 int yPos = Model.Item?.GetFile("Image")?.FocalPositionFromTop ?? 50; 178 string ratioCssClass = Model.Item.GetRawValueString("ImageAspectRatio") != "0" && Model.Item.GetRawValueString("ImageAspectRatio") != "" ? "ratio" : string.Empty; 179 string ratioVariable = Model.Item.GetRawValueString("ImageAspectRatio") != "0" && Model.Item.GetRawValueString("ImageAspectRatio") != "" ? "style=\"--bs-aspect-ratio: " + Model.Item.GetRawValueString("ImageAspectRatio") + "\"" : string.Empty; 180 string imageAspect = Model.Item.GetRawValueString("ImageAspectRatio", string.Empty); 181 string ImageObjectFit = Model.Item.GetRawValueString("ImageObjectFit", string.Empty); 182 ImageObjectFit = ImageObjectFit == "cover" ? string.Empty : ImageObjectFit; 183 ImageObjectFit = ImageObjectFit == "contain" ? "object-fit:contain" : ImageObjectFit; 184 185 var parms = new Dictionary<string, object>(); 186 parms.Add("loading", "lazy"); 187 parms.Add("style", ImageObjectFit); 188 parms.Add("alt", Model.Item.GetString("ImageAltText")); 189 parms.Add("columns", Model.GridRowColumnCount); 190 191 if (Model.Item.GetRawValueString("ImageAspectRatio") == "0") 192 { 193 parms.Add("fullwidth", true); 194 parms.Add("cssClass", "img-fluid"); 195 196 if (Model.Item.GetString("Layout") == "text-center") 197 { 198 <figure class="d-flex flex-column align-items-center"> 199 @RenderPartial("Components/Image.cshtml", Model.Item.GetFile("Image") ?? new Dynamicweb.Frontend.FileViewModel(), parms) 200 </figure> 201 } 202 else 203 { 204 <figure> 205 @RenderPartial("Components/Image.cshtml", Model.Item.GetFile("Image") ?? new Dynamicweb.Frontend.FileViewModel(), parms) 206 </figure> 207 } 208 } 209 else 210 { 211 <figure class="mb-0 @ratioCssClass" @ratioVariable> 212 @RenderPartial("Components/Image.cshtml", Model.Item.GetFile("Image") ?? new Dynamicweb.Frontend.FileViewModel(), parms) 213 </figure> 214 215 } 216 } 217 } 218 219 @helper RenderButtons(Dynamicweb.Frontend.LinkViewModel link1, Dynamicweb.Frontend.LinkViewModel link2) 220 { 221 int shopId = Pageview.GetProductPageId(); 222 string linkType = Model.Item.GetRawValueString("LinkType", "page"); 223 string linkType2 = Model.Item.GetRawValueString("LinkType2", "page2"); 224 225 if (linkType == "page" && Model.Item.GetLink("ButtonLink") != null) 226 { 227 link1 = Model.Item.GetLink("ButtonLink"); 228 } 229 230 if (linkType2 == "page2" && Model.Item.GetLink("ButtonLink2") != null) 231 { 232 link2 = Model.Item.GetLink("ButtonLink2"); 233 } 234 235 if (linkType == "product-group") 236 { 237 IList<ProductGroupViewModel> selectedGroups = Model.Item.GetValue<IList<ProductGroupViewModel>>("ProductGroupLink"); 238 IList<string> groupIds = new List<string> { }; 239 240 if (selectedGroups != null) 241 { 242 foreach (var fromGroup in selectedGroups) 243 { 244 groupIds.Add(fromGroup.Id); 245 } 246 } 247 248 link1 = new Dynamicweb.Frontend.LinkViewModel() 249 { 250 Url = "/Default.aspx?ID=" + shopId + "&GroupID=" + string.Join(",", groupIds).Trim(), 251 IsExternal = false 252 }; 253 } 254 255 if (linkType2 == "product-group2") 256 { 257 IList<ProductGroupViewModel> selectedGroups = Model.Item.GetValue<IList<ProductGroupViewModel>>("ProductGroupLink2"); 258 IList<string> groupIds = new List<string> { }; 259 260 if (selectedGroups != null) 261 { 262 foreach (var fromGroup in selectedGroups) 263 { 264 groupIds.Add(fromGroup.Id); 265 } 266 } 267 268 link2 = new Dynamicweb.Frontend.LinkViewModel() 269 { 270 Url = "/Default.aspx?ID=" + shopId + "&GroupID=" + string.Join(",", groupIds).Trim(), 271 IsExternal = false 272 }; 273 } 274 275 if (linkType == "product") 276 { 277 ProductListViewModel products = Model.Item.GetValue<ProductListViewModel>("ProductLink"); 278 IList<string> productIds = new List<string> { }; 279 280 if (products != null) 281 { 282 foreach (var product in products.Products) 283 { 284 productIds.Add(product.Id); 285 } 286 } 287 288 string productParameter = productIds.Count == 1 ? "ProductID" : "MainProductId"; 289 string productLink = products.Products.FirstOrDefault().GetProductLink(shopId, false); 290 productLink = productIds.Count != 1 ? "/Default.aspx?ID=" + shopId + "&" + productParameter + "=" + string.Join(",", productIds).Trim() : productLink; 291 292 link1 = new Dynamicweb.Frontend.LinkViewModel() 293 { 294 Url = productLink, 295 IsExternal = false 296 }; 297 } 298 299 if (linkType2 == "product2") 300 { 301 ProductListViewModel products = Model.Item.GetValue<ProductListViewModel>("ProductLink2"); 302 IList<string> productIds = new List<string> { }; 303 304 if (products != null) 305 { 306 foreach (var product in products.Products) 307 { 308 productIds.Add(product.Id); 309 } 310 } 311 312 string productParameter = productIds.Count == 1 ? "ProductID" : "MainProductId"; 313 string productLink = products.Products.FirstOrDefault().GetProductLink(shopId, false); 314 productLink = productIds.Count != 1 ? "/Default.aspx?ID=" + shopId + "&" + productParameter + "=" + string.Join(",", productIds).Trim() : productLink; 315 316 link2 = new Dynamicweb.Frontend.LinkViewModel() 317 { 318 Url = productLink, 319 IsExternal = false 320 }; 321 } 322 323 if (link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 324 { 325 string buttonStyle = Model.Item.GetRawValueString("ButtonStyle", "primary"); 326 buttonStyle = buttonStyle == "primary" ? " btn-primary" : buttonStyle; 327 buttonStyle = buttonStyle == "secondary" ? " btn-secondary" : buttonStyle; 328 buttonStyle = buttonStyle == "link" ? " btn-link" : buttonStyle; 329 string buttonStyle2 = Model.Item.GetRawValueString("ButtonStyle2", "secondary"); 330 buttonStyle2 = buttonStyle2 == "primary" ? " btn-primary" : buttonStyle2; 331 buttonStyle2 = buttonStyle2 == "secondary" ? " btn-secondary" : buttonStyle2; 332 buttonStyle2 = buttonStyle2 == "link" ? " btn-link" : buttonStyle2; 333 string target1 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link1.IsExternal ? "target=\"_blank\"" : string.Empty; 334 string target2 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link2.IsExternal ? "target=\"_blank\"" : string.Empty; 335 string rel1 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link1.IsExternal ? "rel=\"noopener\"" : string.Empty; 336 string rel2 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link2.IsExternal ? "rel=\"noopener\"" : string.Empty; 337 string buttonLabel = Model.Item.GetString("ButtonLabel", string.Empty); 338 string buttonLabel2 = Model.Item.GetString("ButtonLabel2", string.Empty); 339 string stretchedLink = Model.Item.GetRawValueString("StretchedLink", "column-not-clickable"); 340 string stretchedLink2 = Model.Item.GetRawValueString("StretchedLink2", "column-not-clickable"); 341 string stretchedLinkClass = stretchedLink == "column-clickable" && string.IsNullOrEmpty(link2.Url) && string.IsNullOrEmpty(buttonLabel2) ? " stretched-link" : string.Empty; 342 string stretchedLinkClass2 = stretchedLink2 == "column-clickable" && string.IsNullOrEmpty(link1.Url) && string.IsNullOrEmpty(buttonLabel) ? " stretched-link" : string.Empty; 343 string buttonSize = Model.Item.GetRawValueString("ButtonSize", "regular"); 344 buttonSize = buttonSize == "small" ? " btn-sm" : buttonSize; 345 buttonSize = buttonSize == "regular" ? string.Empty : buttonSize; 346 buttonSize = buttonSize == "large" ? " btn-lg" : buttonSize; 347 string alignmentClass = string.Empty; 348 349 if (Model.Item.GetString("Layout") == "text-center") 350 { 351 alignmentClass = " justify-content-center"; 352 } 353 354 <div class="d-flex flex-wrap gap-3@(alignmentClass)"> 355 356 @if (link1 != null && !string.IsNullOrEmpty(link1.Url)) 357 { 358 if (!string.IsNullOrEmpty(buttonLabel)) 359 { 360 <a href="@link1.Url" @target1 @rel1 class="text-nowrap btn@(buttonStyle)@(buttonSize)@(stretchedLinkClass)">@buttonLabel</a> 361 } 362 else 363 { 364 <a href="@link1.Url" @target1 @rel1 class="@(stretchedLinkClass)"> 365 <span class="visually-hidden">@Model.Item.GetString("Title")</span> 366 </a> 367 } 368 } 369 370 @if (link2 != null && !string.IsNullOrEmpty(link2.Url)) 371 { 372 if (!string.IsNullOrEmpty(buttonLabel2)) 373 { 374 <a href="@link2.Url" @target2 @rel2 class="text-nowrap btn@(buttonStyle2)@(buttonSize)@(stretchedLinkClass2)">@buttonLabel2</a> 375 } 376 else 377 { 378 <a href="@link2.Url" @target2 @rel2 class="@(stretchedLinkClass)"> 379 <span class="visually-hidden">@Model.Item.GetString("Title")</span> 380 </a> 381 } 382 } 383 </div> 384 } 385 } 386
FLEST C'ER
Den dedikerede filterfan
Kendetegn: Praktisk, pålidelig og ukompliceret.
Kaffevane: Klassisk filterkaffe – altid sort, aldrig noget fancy.
Filterfanen er arbejdspladsens stabile rygrad. Kaffen er funktionel – den skal holde fokus og energi oppe, men smagen må gerne være god. Her finder du ofte erfarne kolleger med ben i næsen og begge fødder på jorden. De kender maskinen bedst og ved præcis, hvordan kaffemaskinen vedligholdes og altid brygger den bedste kop!
Kaffeløsning: Den perfekte filterkaffe brygges bedst på et klassisk bryganlæg/kolbemaskine, men kan også brygges med et enkelt tryk på kaffeautomaten.
FLEST D'ER
Den eventyrlystne latte-lover
Kendetegn: Kreativ, nysgerrig og sansende.
Kaffevane: Lækker café-inspireret kaffe med mælk, skum eller sirup – gerne noget nyt hver dag. Måske også en kop kakao til den søde tand?
Latte-loveren eksperimenterer. Kaffen skal smage, overraske og give en lille hverdagsoplevelse. Ofte findes denne type i marketing, HR eller kreative teams – og de er gode til at sprede inspiration og skabe variation i arbejdsdagen. Hvis der er nye smagsvarianter, kaffesirupper eller en ny kaffebønne, er det dem, der opdager det først!
Kaffeløsning: En fuldautomatisk kaffemaskine med helbønner og mange valgmuligheder er den perfekte kaffemaskine til denne type kaffe-kollega.
Hvad siger din kaffevane om jeres kaffeløsning?
En god kaffeløsning skal kunne favne alle typer – fra espresso-elskeren til latte-loveren. Det er netop her, at en skræddersyet løsning fra BKI Professionel gør forskellen. Med mere end 30 års erfaring og et bredt sortiment af både professionelle kaffemaskiner og specialristet kvalitetskaffe, kan vi sikre en kaffeordning, der både smager og samler.
For når kaffen matcher kulturen, bliver den ikke bare en drik. Den bliver en del af det kollegiale DNA.
Er du nysgerrig på, hvordan I kan styrke både trivsel og smagsoplevelse med en ny kaffeløsning? Kontakt os i dag. Så hjælper vi jer gerne med at sammensætte en kaffeløsning, der matcher både jeres behov og kaffetyper.
BKI Professionel – vi skaber gode kaffeoplevelser.
Ofte stillede spørgsmål om kaffeautomater til erhverv
Vi har samlet de oftest stillede spørgsmål om kaffeautomater til erhverv – læs dem her!
Guide til valg af kaffeløsning: Sådan håndterer du 100+ kopper dagligt
Anbefalinger til den store kaffeløsning i større virksomheder – få vores tips her!
Test: Hvilken type kaffe-kollega er du? Og hvad siger din kaffevane om dig som kollega?
Tag vores test og bliv klogere her!
Har du brug for vejledning?
Kontakt os i dag
Om du allerede har svarene eller ønsker hjælp til at finde dem, så sidder vi klar til at tage en uforpligtende snak om jeres muligheder - og finde frem til den helt rigtige kaffeløsning for netop dig og dine kollegaer, kunder og samarbejdspartnere.
Ring til os på +45 86 29 22 99 eller udfyld formularen her, så vender vi tilbage hurtigst muligt.