SOLUÇÕES INTELIGENTES DE ARMAZENAGEM

Traga eficiência ao seu armazém com uma gestão inteligente do espaço

Contatar

A Mecalux: experiência e inovação para o seu armazém

A Mecalux é uma das companhias lideres na tecnologia intralogística a nível mundial. É lider em automatização de armazéns e desenvolvimento de software. As suas estantes metálicas são sinónimo de qualidade na indústria.
Temos 55 anos de experiência, uma decidida aposta da inovação e - o mais importante - a satisfação dos nossos clientes. Sejam quais forem as características do seu negócio, temos uma solução de armazenagem para a sua empresa.
Background Gartner

A Mecalux nomeada em 2023 Gartner Magic Quadrant for Warehouse Management Systems

DOWNLOAD DO RELATÓRIO
Ocorreu um erro ao processar o template.
Failed to "?eval" string with this error:

---begin-message---
Syntax error in ?eval-ed string in line 1, column 291:
Lexical error: encountered "/" (47), after "\"<iframe data-video-liferay height=\\\"315\\\" frameborder=\\\"0\\\" src=\\\"/documents/20128/7354377/havi-logistics-portugal-pt-web.mp4/8e7deb95-9dc3-196e-551c-0590e1e89458?version=1.2&t=1689248788039&videoEmbed=true\\\" width=\\\"560\\\"><\\".
---end-message---

The failing expression:
==> articleVideoContent?first.video_gallery_file?eval  [in template "20101#20128#3282409" at line 62, column 73]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign articleVideo = articleVideoCo...  [in template "20101#20128#3282409" at line 62, column 49]
----
1<#if mlxUrlUtilService?has_content> 
2    <#assign cdn = (mlxUrlUtilService.getCdn(groupId))!"" /> 
3<#assign globalGroupId = mlxConstants.getLongConstant("GroupIds","GLOBAL")/> 
4     
5    <#if entries?has_content> 
6            <div class="corporate--v3--slider--v1"> 
7            <div class="corporate--v3--slider--v1--container" data-js="slider" data-js-type="tiny-slider" data-js-config='{"container": ".corporate--v3--slider--v1--slider", "navPosition": "bottom", "mouseDrag": true,"loop":false, "controls": false}' data-gtm-block-name="Case_Study"> 
8                <h2 class="corporate--v3--slider--v1--title"><@corporate.mlxlanguage key="mlx.breadcrumb.practical-cases" /></h2> 
9                <div class="corporate--v3--slider--v1--slider" data-gtm-block-name="Case_Study"> 
10                     
11                    <#assign itemIndex = 0 /> 
12                    <#list entries as curEntry> 
13     
14                        <#assign article = mlxAssetHelperService.getJournalArticleByEntry(curEntry) /> 
15                        <#assign articleValues =  mlxJournalHelperService.getStructureFieldValues(article, "${locale}") /> 
16                        <#assign articleUrl = mlxUrlUtilService.getUrlByJournalArticle(article, "${locale}", groupId)?string /> 
17                        <#assign articleName = (articleValues["name"]?string)!"" /> 
18                        <#assign articleDescription = (articleValues["html_description"]?string)!"" /> 
19     
20                        <#assign clientStrKey = "CLIENT-STR" /> 
21                        <#assign articleClient = (mlxAssetHelperService.getFirstRelatedArticle(groupId, article.articleId, clientStrKey))!"" /> 
22                         
23                        <#assign itemIndex = itemIndex + 1 /> 
24                        <#assign itemMasterName = article["title"]!"" />  
25     
26                        <div class="corporate--v3--slider--v1--item"> 
27                            <div class="corporate--v3--slider--v1--info"> 
28                                <#if articleClient != ""> 
29                                    <#assign clientName = mlxJournalHelperService.getStructureFieldValue(articleClient, "name", "${locale}")?string /> 
30                                    <h3 class="corporate--v3--slider--v1--item-title">${clientName}</h3> 
31                                <#else> 
32                                    <#assign clientName = articleName> 
33                                </#if> 
34                                <#if articleName?has_content> 
35                                    <p class="corporate--v3--slider--v1--item-subtitle">${articleName}</p> 
36                                </#if> 
37                                <#if articleDescription?has_content> 
38                                    <p class="corporate--v3--slider--v1--item-description">${articleDescription?truncate(350, '...')} 
39                                        <a href="${articleUrl}" title="${clientName}" class="corporate--v3--slider--v1--item-link" data-gtm-event="click" data-gtm-event-click-category="[pageMaster]_Case_Study" data-gtm-event-label="${itemIndex}_/Case-study/Detail/${clientName}/${itemMasterName}"><@corporate.mlxlanguage key="mlx.search.article.readmore" /></a> 
40                                    </p> 
41                                </#if> 
42                            </div> 
43 
44                                <#assign articleImageContent = articleValues["list_imageFieldSet"]!"{}"  /> 
45                                <#assign articleImageContent = articleImageContent.list_image!""  /> 
46    <#assign imgWidth = '640'> 
47                                <#if articleImageContent?has_content> 
48                                    <#assign articleImage = jsonFactoryUtil.createJSONObject(articleImageContent) /> 
49                                    <#if articleImage?has_content> 
50                                         
51                                        <#assign fileEntry = mlxDLFileEntryHelperService.getDLFileEntry(articleImage.uuid, globalGroupId) /> 
52                                        <#assign articleImageUrl = (mlxExpandoService.getExpandoValueForClass("com.liferay.document.library.kernel.model.DLFileEntry","mlxDocumentUrl",fileEntry.getFileVersion().getFileVersionId()).getString(locale))!""/> 
53                                        <#assign articleImageUrl = mlxUrlUtilService.getLRUrl(fileEntry) /> 
54                                        <#assign urlParamConcat = articleImageUrl?contains("?")?then("&","?")> 
55                                         
56                                        <div class="corporate--v3--slider--v1--thumbnail"> 
57                                         
58                                            <#assign articleVideoContent =  (mlxJournalHelperService.getStructureFieldValue(article, "video_gallery_fileFieldSet", "${locale}"))![] /> 
59     
60                                             
61                                            <#if articleVideoContent?first.video_gallery_file?has_content> 
62                                                <#assign articleVideo = articleVideoContent?first.video_gallery_file?eval /> 
63          
64<#if articleVideo.uuid??> 
65                                                <#assign fileEntry = mlxDLFileEntryHelperService.getDLFileEntry(articleVideo.uuid, globalGroupId) /> 
66                                                <#assign articleVideoUrl = mlxUrlUtilService.getLRUrl(fileEntry) /> 
67                                                <#assign youtubeEmbeddedCode = (mlxExpandoService.getExpandoValueForClass("com.liferay.document.library.kernel.model.DLFileEntry","mlxYoutubeEmbeddedCode",fileEntry.getFileVersion().getFileVersionId()).getString(locale))!""/> 
68                                                 
69                                                <#if youtubeEmbeddedCode?has_content> 
70                                                    <#assign htmlModalAttributes='data-fancybox="video-gallery-${curEntry?index}" data-type="iframe" data-src="https://www.youtube.com/embed${youtubeEmbeddedCode}" data-caption="${articleName}"' /> 
71                                                <#else> 
72                                                    <#assign htmlModalAttributes='data-fancybox="video-gallery-${curEntry?index}" data-type="html5video" data-src="${articleVideoUrl}" data-thumb="${articleImageUrl}" data-caption="${articleName}"' /> 
73                                                </#if> 
74     
75                                                <a href="#" class="corporate--v3--slider--v1--video-container" data-has-modal="true" ${htmlModalAttributes} data-gtm-event="modal" data-gtm-event-label="${articleImageUrl}"> 
76                                                    <figure class="corporate--v3--slider--v1--figure"> 
77                                                        <div class="corporate--v3--slider--v1--container-icon"> 
78                                                            <#assign images_folder = cdn + "/o/corporate-theme/images" /> 
79                                                            ${corporate.img(images_folder + '/common/th-play2.png', false,'data-role="play-btn" class="corporate--v3--slider--v1--video-icon" alt="play"')} 
80                                                        </div> 
81                                                        ${corporate.img(cdn + articleImageUrl + urlParamConcat + 'imwidth="'+ imgWidth + '"', true,  
82														'srcset="' + cdn + articleImageUrl + urlParamConcat + 'imwidth=320&imdensity=1 320w,' +  
83																	 cdn + articleImageUrl + urlParamConcat + 'imwidth=640&imdensity=1 640w" alt="' + clientName + '"', 'title="' + clientName + '"', 'class="corporate--v3--slider--v1--item-image corporate--v3--slider--v1--item-image-youtube"')}                                                    </figure>   
84                                                </a> 
85																									<#else>		 
86																								<figure class="corporate--v3--slider--v1--figure"> 
87                                                    ${corporate.img(cdn + articleImageUrl + urlParamConcat + 'imwidth="'+ imgWidth + '"', true,  
88                                                    'srcset="' + cdn + articleImageUrl + urlParamConcat + 'imwidth=320&imdensity=1 320w,' +  
89															     cdn + articleImageUrl + urlParamConcat + 'imwidth=640&imdensity=1 640w" alt="' + clientName + '"', 'title="' + clientName + '"', 'class="corporate--v3--slider--v1--item-image"')}                                                </figure> 
90                                             </#if> 
91                                            <#else> 
92     
93                                                <figure class="corporate--v3--slider--v1--figure"> 
94                                                    ${corporate.img(cdn + articleImageUrl + urlParamConcat + 'imwidth="'+ imgWidth + '"', true, 
95                                                    'srcset="' + cdn + articleImageUrl + urlParamConcat + 'imwidth=320&imdensity=1 320w,' +  
96                                                                 cdn + articleImageUrl + urlParamConcat + 'imwidth=640&imdensity=1 640w" alt="' + clientName + '"', 'title="' + clientName + '"', 'class="corporate--v3--slider--v1--item-image"')}                                                </figure> 
97     
98                                            </#if> 
99     
100                                        </div> 
101     
102                                    </#if> 
103                                </#if> 
104     
105                        </div> 
106     
107                    </#list> 
108                </div> 
109            <#assign pcasesMasterId=56006 /> <#-- referencias--> 
110            <#assign pcasesLayout=(mlxMastersHelperService.getLayoutByMasterAndGroup(pcasesMasterId,scopeGroupId)!"") /> 
111            <#if pcasesLayout == "" > 
112                <#assign pcasesMasterId=64015 /> <#-- clientes--> 
113                <#assign pcasesLayout=(mlxMastersHelperService.getLayoutByMasterAndGroup(pcasesMasterId,scopeGroupId)!"") /> 
114            </#if> 
115            <#assign pcasesUrl = pcasesLayout.getFriendlyURL() /> 
116                <a href="${pcasesUrl}" title='<@corporate.mlxlanguage key="mlx.practical-case.show-more" />' class="corporate--v3--slider--v1--viewmore" data-gtm-event="click" data-gtm-event-click-category="[pageMaster]_Case_Study" data-gtm-event-label="/Case-study"><@corporate.mlxlanguage key="mlx.practical-case.show-more" /></a> 
117     
118            </div> 
119        </div> 
120    </#if> 
121</#if> 
122<style> /*Fix Pagination*/ 
123    .lfr-pagination{ 
124        display: flex; 
125        justify-content: space-between; 
126        align-items: center; 
127
128     
129    .lfr-pagination .lfr-pagination-buttons { 
130        margin-top:0!important; 
131        padding: 0; 
132
133    @media (max-width: 960px){ 
134        .lfr-pagination{ 
135            flex-direction: column-reverse; 
136
137
138</style> 

PRODUTO DESTACADO

Robôs móveis autónomos (AMR) Robôs móveis autónomos (AMR)

ROBÔS MÓVEIS AUTÓNOMOS (AMR)

A solução robótica que flexibiliza o transporte interno de mercadorias

Automatize o fluxo interno de cargas com a inovadora gama de AMR da Mecalux. Dinamize inúmeras operações de intralogística e aumente a produtividade do armazém com veículos inteligentes projetados para operar com absoluta autonomia.

Saiba mais sobre os AMR

A MECALUX EM NÚMEROS

  • 55 anos

    55 anos

    de experiência

  • rede comercial

    +70 países

    com rede comercial

  • 11 centros produtivos

    11 centros

    produtivos

  • 7 centros I+D

    7 centros I+D

    de desenvolvimento tecnológico

Mecalux News

Ir a Mecalux News

ESTAMOS ONDE ESTÁ O SEU ARMAZÉM

Temos escritórios em 23 países

VER TODOS OS NOSSOS ESCRITÓRIOS COMERCIAIS
TURQUIAEscritório em Istambul
ESLOVÉNIAEscritório em Brnik
ROMÉNIAEscritório em Bucareste
CROÁCIA
POLÔNIAEscritórios em Gliwice, Danzigue, Cracóvia, Posnânia, Varsóvia e Breslávia
ESLOVÁQUIAEscritório em Bratislava
REPUBLICA CHECAEscritório em Praga
ITÁLIAEscritório em Milão, Pádua, Roma e Turim
ALEMANHAEscritórios em Dormagen
PAÍSES BAIXOSEscritório em Amesterdão
BÉLGICAEscritório em Bruxelas
FRANÇAEscritórios em Páris, Aix-en-Provence, Bordéus, Lille, Lyon, Nantes - Ruão, Toulouse e Estrasburgo
REINO UNIDOEscritório em Birmingham
ESPANHAOficinas en Barcelona, Alicante, Bilbao, Córdoba, Gijón, La Coruña, Las Palmas, Madrid, Murcia, Palencia, Palma De Mallorca, Pamplona, San Sebastián, Sevilla, Tenerife, Valencia, Vitoria y Zaragoza
PORTUGALEscritórios em Lisboa e Porto
BRASILEscritório em Hortolândia
URUGUAIEscritório em Canelones
ARGENTINAEscritório em Buenos Aires
COLÔMBIAEscritórios em Bogotá e Cáli
CHILEEscritório em Santiago
MÉXICOEscritórios em Tijuana, Guadalajara, Hermosillo, Matamoros, Mérida, Cidade do México, Puebla e Monterrei
ESTADOS UNIDOSEscritórios em Chicago, Dallas, Pontiac, San Diego e Sumter
ESTAMOS ONDE ESTÁ O SEU ARMAZÉM

Alguns dos nossos clientes

Porcelanosa
bilstein group logo
Luís Simões
Adidas logótipo
Finieco logo
Cosmopak
Trazcarnes
Nestlé
background contact

Contate connosco

    Ligue para

  • $titlePhone 211 450 662
  • Estamos em

  • $titleLocation
    • LISBOA

      Rua Quinta do Pinheiro, 16 - 2.º Piso - Fração H Edifício Tejo - 2790-143, Carnaxide

    • PORTO

      Rua dos Transitários, 182 - 2º Sala BX Freixieiro 4455-565, Perafita

    • Todas as nossas localizações

Deixe-nos os seus dados e um dos nossos técnicos irá contatá-lo

Li e aceito as condições da política de privacidade de dados.

Sim, aceito receber publicidade sobre os produtos e/ou serviços de armazenagem, componentes e bens relacionados comercializados pela MECALUX. (Opcional)