Casos prácticos
Se ha producido un error al procesar la plantilla.
No compatible overloaded variation was found; declared parameter types and argument value types mismatch. The FTL type of the argument values were: extended_hash+string (com.liferay.portal.json.JSONObjectImpl wrapped into f.e.b.StringModel). The Java type of the argument values were: com.liferay.portal.json.JSONObjectImpl. The matching overload was searched among these members: com.liferay.portal.json.JSONFactoryImpl.createJSONObject(String), com.liferay.portal.json.JSONFactoryImpl.createJSONObject(Map), com.liferay.portal.json.JSONFactoryImpl.createJSONObject() ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign articleImageContent = jsonFac... [in template "20101#20128#3282403" at line 36, column 33] ----
1<#if entries?has_content>
2
3 <#assign cdn = (mlxUrlUtilService.getCdn(groupId))!"" />
4
5 <#assign globalGroupId = mlxConstants.getLongConstant("GroupIds","GLOBAL")/>
6 <div class="corporate--cases--carouselv4">
7 <div class="corporate--cases--carouselv4--top--container" data-gtm-block-name="Case-study" data-js="slider" data-js-type="tiny-slider" data-js-config='{"container": ".corporate--cases--carouselv4--top--container", "autoplay":true, "autoplayButtonOutput":false, "mouseDrag":true, "controls":false, "loop":false, "navContainer": ".corporate--cases--carouselv4--bottom--container"}'>
8 <#list entries as curEntrys>
9 <#assign asset = curEntrys.getAssetRenderer() />
10 <#assign fields = asset.getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues() />
11 <#assign articles = mlxAssetHelperService.getJournalArticleByEntry(curEntrys)/>
12
13 <#assign articleValues = mlxJournalHelperService.getStructureFieldValues(articles, "${locale}") />
14
15 <#assign articlesUrl = mlxUrlUtilService.getUrlByJournalArticle(articles, "${locale}", groupId)?string />
16 <#assign articleNames = (articleValues["description"]?string)!"" />
17 <#assign articleVideoContent = mlxJournalHelperService.getStructureFieldValue(articles, "video_gallery_file", "${locale}")![] />
18 <#assign articleDescription = (articleValues["html_description"]?string)!"" />
19 <#assign clientStrKey = "CLIENT-STR"/>
20 <#assign articleClient = (mlxAssetHelperService.getFirstRelatedArticle(groupId, articles.articleId, clientStrKey))!"" />
21 <#assign globalGroupId = mlxConstants.getLongConstant("GroupIds","GLOBAL")/>
22 <#assign articleUrl = mlxUrlUtilService.getUrlByJournalArticle(articles, "${locale}", groupId)?string />
23 <#if articleClient != "">
24 <#assign clientName = mlxJournalHelperService.getStructureFieldValue(articleClient, "name", "${locale}")?string />
25 <#else>
26 <#assign clientName = articleNames>
27 </#if>
28 <#if articleNames?has_content>
29 <article class="item corporate--cases--carouselv4--top--item">
30 <figure class="corporate--cases--carouselv4--top--figure">
31
32 <#list fields as field>
33 <#if field.getName()=="name">
34 <#assign articleImageContent = (articleValues["standout_image"])!"{}" />
35 <#if articleImageContent != "">
36 <#assign articleImageContent = jsonFactoryUtil.createJSONObject(articleImageContent) />
37 <#assign articleImage = mlxDocumentsHelperService.getDocumentUrlFromUUID(articleImageContent.uuid, "${locale}") />
38 ${corporate.img(cdn+articleImage, false, 'class="corporate--cases--carouselv4--top--image"')}
39 </#if>
40 </#if>
41 </#list>
42 </figure>
43 <div class='corporate--cases--carouselv4--top--content'>
44 <h3 class="corporate--cases--carouselv4--top--title">${clientName}</h3>
45 <p class="corporate--cases--carouselv4--top--description">
46 <#if articleNames?length < 263>
47 ${articleNames}
48 <#else>
49 ${articleNames?substring(0,263)}...
50 </#if>
51 </p>
52 <a href="${articleUrl}" title="" class="corporate--cases--carouselv4--top--cta"><@corporate.mlxlanguage key="mlx.client.see-practical-case" /></a>
53 </div>
54 </article>
55 </#if>
56 </#list>
57 </div>
58
59 <div class="corporate--cases--carouselv4--bottom--container" data-js="slider" data-js-type="tiny-slider" data-js-config='{"container": ".corporate--cases--carouselv4--bottom--container", "autoplay":false, "autoplayButtonOutput":false, "mouseDrag":true, "controls":false, "nav":false, "loop":false, "items":3}'>
60 <#list entries as curEntrys>
61 <#assign article = mlxAssetHelperService.getJournalArticleByEntry(curEntrys) />
62 <#assign WarticleClient = (mlxAssetHelperService.getFirstRelatedArticle(groupId, article.articleId, clientStrKey))!"" />
63 <div class="item corporate--cases--carouselv4--bottom--item">
64 <div class="content corporate--cases--carouselv4--bottom--content">
65 <#if WarticleClient != "">
66 <#assign WarticleClientValues = mlxJournalHelperService.getStructureFieldValues(WarticleClient, "${locale}") />
67 <#assign Wnames = (WarticleClientValues["name"]?string)!"" />
68 <div class="content corporate--cases--carouselv4--bottom--title">${Wnames}</div>
69
70 </#if>
71 </div>
72 <#if WarticleClient != "">
73 <#assign clientLogoContent = (WarticleClientValues["logo"])!"{}" />
74
75 <#if clientLogoContent?has_content>
76 <#assign clientLogoContent = clientLogoContent?replace('\\u','') />
77 <#assign clientLogo = clientLogoContent?eval />
78 </#if>
79
80 <#assign clientName = (WarticleClientValues["name"]?string)!"" />
81
82 <#if clientLogo?has_content>
83 <#assign fileEntry = mlxDLFileEntryHelperService.getDLFileEntry(clientLogo.uuid, globalGroupId) />
84 <#assign clientLogoUrl = mlxDocumentsHelperService.getDocumentUrlFromUUID(clientLogo.uuid, "${locale}") />
85 <#assign clientLogoAlt = mlxExpandoService.getExpandoValueForClass("com.liferay.document.library.kernel.model.DLFileEntry","mlxDocumentTitle",fileEntry.getFileVersion().getFileVersionId()).getString(locale)!""/>
86
87 <#if clientLogoAlt == "">
88 <#assign clientLogoAlt = clientName />
89 </#if>
90
91 <figure class="corporate--cases--carouselv4--bottom--figure">
92 ${corporate.img(cdn+clientLogoUrl, false, 'alt="' + clientLogoAlt + '"', 'title="' + clientLogoAlt + '"', 'class="corporate--cases--carouselv4--bottom--image"')}
93 </figure>
94 </#if>
95 </#if>
96 </div>
97 </#list>
98 </div>
99 </div>
100
101</#if>
Algunos de nuestros casos prácticos
Nestlé
Nestlé pone en marcha un almacén en Argentina para la línea de leche en polvo
Alimentación y bebidasLa Piamontesa
La Piamontesa: la automatización impulsa el progreso
Alimentación y bebidasLaboratorios Americanos
Laboratorios Americanos: Productos farmacéuticos en racks sismorresistentes
FarmacéuticoLil’ Drug Store Products
Lil’ Drug ha inaugurado un almacén de productos para la salud en Estados Unidos
Comercio mayorista y distribuciónZbeda Group
Zbeda Group: cerca de 20.000 cajas en tan solo 700 m²
Automoción y refaccionesYamazaki Mazak UK
Yamazaki Mazak: búfer automático con piezas acabadas de pintar
Maquinaria y componentesCoca-Cola Refrescos Bandeirantes
Almacén con las bebidas de Coca-Cola Refrescos Bandeirantes en Brasil
Alimentación y bebidasGonher
El almacén de la tienda online de instrumentos musicales con Easy WMS de Mecalux
Ocio y entretenimientoHuijbregts Groep
Un almacén de ingredientes en polvo para la industria agroalimentaria
Alimentación y bebidasRent a Book
La empresa de alquiler de libros de textos Rent a Book ha implementado Easy WMS
Gestión documental y archivoDanone
Almacén de Danone para la línea de nutrición infantil y médica en Madrid
Alimentación y bebidasRADEC
Racks para almacenar autopartes
Automoción y refaccionesEldisser
El almacén para la logística de electrodomésticos de Eldisser
Electricidad y electrónicaBem Brasil
Un almacén inteligente para el fabricante de patata prefrita congelada Bem Brasil
Alimentación y bebidasSokpol
Un gran almacén para los zumos de Sokpol en Polonia
Alimentación y bebidasASSA ABLOY
Assa Abloy incrementa la capacidad de almacenaje de su almacén de cerraduras
Ferretería y suministro industrialContinental
Almacén automático miniload: agilidad en la preparación de pedidos de Continental
Automoción y refaccionesPapeteries de Clairefontaine
Alta productividad en el almacén robotizado de Clairefontaine en Francia
Papel y derivadosArmazém Mateus
Gran capacidad de almacenaje en el centro de distribución de Armazém Mateus en Brasil
Transporte y operadores logísticosSaint-Gobain
Saint-Gobain y Mecalux, una colaboración sinónimo de éxito
Cerámica y construcciónNestlé
Nestlé acelera su fábrica de Dolce Gusto con sistemas de transporte automático
Alimentación y bebidasDolmar
El nuevo almacén del fabricante de muebles Dolmar aumenta su capacidad de almacenaje
Decoración y hogarLogistic Net
El almacén del operador logístico Logistic Net aumenta su capacidad
Transporte y operadores logísticosAgata
Cómo es el almacén de la tienda de muebles Agata de Polonia
Decoración y hogarFrío Valencia
El centro logístico de Frío Valencia posee tres cámaras de congelación
Transporte y operadores logísticosEuréquip
El fabricante de muebles Euréquip automatiza sus procesos de producción
Decoración y hogarUnilever
Racks selectivos equipan el nuevo centro de distribución de Unilever en Uruguay
Comercio mayorista y distribuciónCôté Table
Dos opciones para preparar pedidos de artículos de decoración en el centro logístico de Côté Table en Francia
Decoración y hogarEkom
Eficiente sistema de preparación de pedidos en el nuevo almacén del operador logístico Ekom
Transporte y operadores logísticosKMC-Services
El operador logístico KMC-Services equipa sus almacenes con racks selectivos
Transporte y operadores logísticosOrchestra Log´s
Orchestra, fabricante francés de moda infantil, consigue una capacidad para más de 73.000 tarimas
Textil y complementosPorcelanosa
El líder del sector cerámico, Porcelanosa Grupo, incorpora la última tecnología en sus cinco centros logísticos
Cerámica y construcciónDwell & DFS
Nuevo almacén de Dwell & DFS con racks selectivos para mobiliario y decoración
Decoración y hogarJCH
El elevado rendimiento del nuevo almacén automático de cajas miniload de JCH
Electricidad y electrónicaSpecial Dog
Un almacén automático autoportante para abastecer los 25.000 puntos de venta en Brasil de Special Dog, fabricante de alimentación para mascotas
Alimentación y bebidasVan Heck Interpieces
Van Heck Interpieces dinamiza el picking de sus piezas de recambio para automóviles
Automoción y refaccionesEGO Appliance Controls
Tres sistemas combinados maximizan el rendimiento del almacén de EGO Appliance Controls
Electricidad y electrónicaGrégoire-Besson
Máxima productividad en la preparación de pedidos de Grégoire-Besson
Agricultura, ganadería y pescaCharter Next Generation
Un almacén automático para la gran variedad de productos de Charter Next Generation
PlásticoPCAMI
Una buena táctica para las operaciones de picking del ejército español
Comercio mayorista y distribuciónRockwool Peninsular
Rockwool Peninsular almacena su producto voluminoso con Pallet Shuttle
Cerámica y construcciónSPB
Racks selectivos, drive-in, móviles, para tarimas y para picking, conviven en el almacén de SPB
Ferretería y suministro industrialCompany 4 Marketing Services GmbH
La empresa de regalos publicitarios Company 4 Marketing Services optimiza su almacén
OtrosTostados y Fritos, SA
Mayor capacidad de almacenaje para Tosfrit aperitivos
Alimentación y bebidasAlfrisan
El avanzado centro logístico de Alfrisan, con seis cámaras de congelación
Transporte y operadores logísticosPinturerías Rex
El distribuidor de pinturas Pinturerías Rex ha construido un nuevo almacén
Comercio mayorista y distribuciónQbox
Dos almacenes de gran capacidad para el operador logístico Qbox
Transporte y operadores logísticosBanco Sabadell
El archivo documental de Banco de Sabadell alcanza una capacidad para 658.236 cajas con racks selectivos
Entidades financierasBurro De Paoli
Un fabricante italiano de mantequilla aumenta su eficiencia con la instalación de dos cámaras de congelación con el sistema compacto Pallet Shuttle
Alimentación y bebidas
— 50 Resultados por página