;

Pohled IDC na český trh počítačů a tiskáren

27. 6. 2019
Doba čtení: 7 minut

Sdílet

Autor: everythingpossible/Fotolia.com
Český trh osobních počítačů, měřeno počtem nově dodaných stolních počítačů (desktopů) a notebooků, v roce 2018 již druhým rokem po sobě rostl. Do republiky bylo dodáno přes milion nových počítačů. Vrcholu však bylo dosaženo již v roce 2010 a dlouhodobý trend je od té doby sestupný.

Hlavní komponentou trhu PC je dílčí trh notebooků – sedm počítačů z deseti jsou právě notebooky; většina z nich je určena pro domácnosti. Stolní počítače se dodávají naopak hlavně do firem a veřejného sektoru. S tím, jak spotřebitelé upřednostňují notebooky, klesl počet nově dodaných stolních počítačů pro domácnosti na úroveň, na které se nacházel naposledy před třinácti lety.

Českému trhu počítačů v posledním roce kralovala společnost HP, která dokonce dosáhla v ČR svého historicky dosud nejvyššího tržního podílu. Další příčky patřily společnostem Lenovo (jejíž výsledky zahrnují i značku Fujitsu získanou akvizicí) a Dell. Logo HP dominovalo také na obou dílčích trzích počítačů – jak na trhu notebooků, tak na trhu desktopů.

Které faktory ovlivňovaly trh počítačů?

Jedním z klíčových témat je od druhého pololetí roku 2018 globální nedostatek procesorů z dílny společnosti Intel – zejména řad Celeron a Pentium, což jsou cenově dostupné procesory. Výrobci, kteří byli například ve veřejné sféře již smluvně vázáni, že dodají počítače s příslušnými cenově dostupnými konfiguracemi, museli čelit složité situaci. Dopad pocítili kromě nadnárodních výrobců i další entity, například distributoři samostatných procesorů. Zatímco někteří distributoři hlásili postupné zlepšení situace, globální nedostatek bude určitě determinovat i situaci v roce 2019, a to i přes to, že část výrobních kapacit bude výrobce postupně přesouvat z prioritních procesorů určených pro servery, kde nedostatek nehrozí.

Další velkou proměnnou je makroekonomický výhled. Ostatně trh počítačů je podmnožinou ekonomiky jako celku. I mezi místními zástupci nadnárodních dodavatelů PC se objevily obavy, zda se oslabování růstu německé ekonomiky, patrné od začátku roku 2018, nepromítne do českého hospodářství, a to třeba skrze automobilový průmysl a exporty. A vskutku, český „index nákupních manažerů ve výrobě“, který je předstihovým ukazatelem, celý rok 2018 klesal, a to až na hodnoty, které se objevily naposledy koncem globální finanční krize. Ostatní indikátory však jsou na dlouhodobém normálu – ať už jde o předstihový indikátor „podnikatelské důvěry“, který reflektuje očekávání, nebo statistiky reálné „průmyslové produkce“, „nových objednávek“, nemluvě o tom, že nezaměstnanost – byť jde o ukazatel opožděný – systematicky poklesla na hodnoty nevídané dvacet let.

Situaci bych si tedy dovolil označit spíše jako žádoucí návrat z přehřáté ekonomiky směrem ke kýženému normálu v podobě mírného růstu. Horší může být výhled slovenské ekonomiky, kde sice přetrvává vysoká spotřebitelská důvěra, avšak značného poklesu doznaly meziročně celkové maloobchodní tržby – což se projevilo také na nedávných poklesech v segmentu spotřebitelských notebooků v prvním čtvrtletí roku 2019.
Tak jako na jiných trzích i na trhu spotřebitelské elektroniky se projevuje obchodní válka mezi USA a Čínou. V roce 2018 přechodně postihla společnost ZTE. V roce 2019, s odvoláním na „bezpečnostní důvody“, zasáhla společnost Huawei, která bude mít omezený přístup k některým komponentám. Huawei do ČR dodává i notebooky, je v zemi známá spotřebitelskému segmentu zatím spíše díky svým telefonům a tabletům.

Na cenu má vliv mj. směnný kurz v součinu s danou dolarovou cenou importů. Od dubna 2017, kdy ČNB ukončila svůj kurzový závazek (při kterém pomocí intervencí uměle oslabovala korunu), posilovala koruna vůči americkému dolaru. Nejsilnější byla v prvním čtvrtletí 2018 a od té doby setrvale oslabuje. V současnosti jsou tak dovážené počítače s ohledem na směnný kurz pro českého uživatele sice relativně dostupnější než v letech intervence ČNB, vývoj je však oproti roku 2018 nepříznivý.

Svou roli bude i nadále sehrávat další přechod z Windows 7, jejichž podpora byla prodloužena do ledna roku 2020. I ty společnosti, které otálely, měly již čas otestovat kompatibilitu svých interních IS a nic nebrání přechodu na Windows 10.

Výrobci postupně inovují svá výrobková portfolia a uživatelům nabízejí místo tradičních notebooků přechod na ultratenké notebooky.

Nezanedbatelnou roli na trhu počítačů sehrál oživený zájem o počítače určené na počítačové hry. Zatímco herní počítače tlačí průměrnou cenu počítačů nahoru, nepřehlédnutelné byly také počítače z opačného cenového spektra – ty s cenovkou výrazně pod deset tisíc korun, vybavené např. vnitřní úložnou kapacitou 32 GB.

Na trhu notebooků získávaly pozornost i některé značky s lokální působností.
Po delším výpadku se znova objevila „mimotržní“ komponenta v podobě Evropských strukturálních fondů (ESF), která umožnila financování některých projektů.

Na podzim roku 2018 se konaly mj. volby do obecních zastupitelstev. Období okolo voleb a výměna garnitury ovlivňují velké tendry, a tedy i trh počítačů.
Vliv iniciativy společnosti Microsoft, Windows 10 S, byl spíše okrajový. Windows 10 v režimu S kladou důraz na zabezpečení a v souvislosti s tím umožňují používat jen aplikace z Microsoft Storu a pro procházení stránek vyžadují Microsoft Edge. Uplatnění může být vhodné například pro školy.
Někteří výrobci po delší přestávce opět zařadili mezi své prodejní kanály pro některé notebooky i telekomunikační operátory.

Neočekáváme, že by uživatelé signifikantní mírou chtěli přestupovat na Chrome OS (Chromebooky). Mezi česká specifika patří, že uživatelé využívají v hojné míře např. e-mail tuzemských poskytovatelů – provázaný ekosystém společnosti Google je tedy neoslovuje ani navzdory některým svým výhodám, nemluvě o tom, že zejména starší generace mají averzi k tomu, aby jejich data byla uložena v cloudu. Chromebooky jsou na českém trhu zcela okrajovým jevem.

Linux se svými mnoha distribucemi, jako Ubuntu nebo Mint, běží jen na pár procentech českých počítačů.

Trh tiskáren a multifunkcí

Přes silný ekonomický rozmach v roce 2018 vykázal český trh tiskáren a multifunkcí meziročně pouze mírný růst v objemu prodaného zboží. Celkový vývoj výrazně ovlivnily klesající prodeje nejlevnějších inkoustových zařízení určených především pro domácí spotřebitele. Trh však narostl v hodnotě. Ustanovení nové vlády ve druhém pololetí a následná personální stabilizace ve státním sektoru vedly k vypsání a realizaci řady tendrů. Prodejci také zaznamenali silnou poptávku ze strany firemních zákazníků.

Počet vytištěných stran, obdobně jako prodeje inkoustových a laserových kazet, byly ovlivněny narůstajícím využitím inkoustových zařízení pro kancelářský tisk a postupným přechodem firem a veřejnoprávních subjektů na elektronické procesy. Zatímco počet vytištěných stran na laserových zařízeních v roce 2018 meziročně klesl 2% tempem, strany vytištěné na inkoustových tiskárnách a multifunkcích zaznamenaly téměř 10% nárůst. Převahu v kancelářském tisku měla však nadále laserová technologie, jejímž prostřednictvím vzniklo přes 90 % vytištěných stran.

Cyber25

Autoři
Petr Švagrovský, program manager, Systems & Infrastructure Solutions, IDC CEMA 
Zuzana Babická, senior research analyst, IDC CEMA

 

'; document.getElementById('preroll-iframe').onload = function () { setupIframe(); } prerollContainer = document.getElementsByClassName('preroll-container-iframe')[0]; } function setupIframe() { prerollDocument = document.getElementById('preroll-iframe').contentWindow.document; let el = prerollDocument.createElement('style'); prerollDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:20px;right:25px}"; videoContent = prerollDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('PREROLL sound allowed'); // setUpIMA(true); videoContent.volume = 1; videoContent.muted = false; setUpIMA(); }).catch(function () { console.log('PREROLL sound forbidden'); videoContent.volume = 0; videoContent.muted = true; setUpIMA(); }); } } function setupDimensions() { prerollWidth = Math.min(iinfoPrerollPosition.offsetWidth, 480); prerollHeight = Math.min(iinfoPrerollPosition.offsetHeight, 320); } function setUpIMA() { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Preroll advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = prerollWidth; // adsRequest.linearAdSlotHeight = prerollHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. prerollDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('adContainer'), videoContent); } function unmutePrerollAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } } function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(prerollWidth, prerollHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } function onAdEvent(adEvent) { const ad = adEvent.getAd(); console.log('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: if (!ad.isLinear()) { videoContent.play(); } prerollDocument.getElementById('adContainer').style.width = '100%'; prerollDocument.getElementById('adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); if (ad.isLinear()) { intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } prerollDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (prerollLastError === 303) { playYtVideo(); } break; case google.ima.AdEvent.Type.COMPLETE: if (ad.isLinear()) { clearInterval(intervalTimer); } playYtVideo(); break; } } function onAdError(adErrorEvent) { console.log(adErrorEvent.getError()); prerollLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { playYtVideo(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoPrerollPosition.remove(); playPrerollAd(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } function onActiveView() { if (prerollContainer) { const containerOffset = prerollContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (prerollPaused) { adsManager.resume(); prerollPaused = false; } return true; } else { if (!prerollPaused) { adsManager.pause(); prerollPaused = true; } } } return false; } function playYtVideo() { iinfoPrerollPosition.remove(); youtubeIframe.style.display = 'block'; youtubeIframe.src += '&autoplay=1&mute=1'; } }