Estamos mejorando nuestra Tienda, Portal de clientes y Aenormas para ofrecerte una mejor experiencia.
Si detectas cualquier incidencia o necesitas ayuda durante el proceso de compra, puedes contactarnos a través del chat o escribirnos a normas@aenor.com.
Nuestro equipo estará encantado de ayudarte.
DIN EN 14511-1:2008-02
Air conditioners, liquid chilling packages and heat pumps with electrically driven compressors for space heating and cooling - Part 1: Terms and definitions; German version EN 14511-1:2007
| Fecha edición: |
2012-01-01
Anulada
|
|---|---|
| Fecha cancelación: | 2012-01-01 |
| Idiomas disponibles: | Inglés, Alemán |
| Resumen: | This part of EN 14511 specifies the terms and definitions for the rating and performance of air and water cooled air conditioners, liquid chilling packages, air-to-air, water-to-air, air-to-water and water-to-water heat pumps with electrically driven compressors when used for space heating and/or cooling. This European Standard does not specifically apply to heat pumps for sanitary hot water, although certain definitions can be applied to these. Packaged units, single split and multisplit systems are covered by this standard., Single ductand double duct units are covered by the standard. |
| Keywords: | Air|Air conditioner|Air conditioners|Air conditioning|Air coolers|Air exchange|Air-conditioning equipment|Air-conditioning systems|Air-cooled|Air-cooled systems|Air-to-air heat exchangers|Basic domestic facilities|Checking equipment|Classification|Compactors|Compressors|Conditioning|Cooling|Cooling capacity|Cooling equipment|Definitions|Designations|Electrical|Electrical transmission systems|Electrically-operated devices|Energy technology|Features|Heat|Heat engineering|Heat pumps|Heat recovery|Heat transfer media|Heating equipment|Inserts|Installation|Installations|Liquid chilling packages|Liquid-cooled systems|Marking|Measurement|Noise|Noise emission|Noise (environmental)|Operative ranges|Parameters|Performance|Power consumption|Properties|Pumps|Rating tests|Ready for connnection|Refrigeration|Room air conditioners|Room air conditioning equipment|Sound|Specification (approval)|Start|Starting tests|Temperature|Terminology|Terms|Testing|Testing conditions|Testing requirements|Type of unit|Types|Unit coolers|Vocabulary|Water-cooled|Wear-quantity |
| ICS: | 01.040.91 - Edificación y materiales de construcción (Vocabularios), 91.140.30 - Sistemas de ventilación y de climatización |
| CTN: | |
|
Equivalencia Internacional |
Idéntica EN 14511-1:2007 |
|
Reemplazo Normas |
Reemplaza a DIN EN 14511-1:2004-07 Reemplaza a DIN EN 14511-1:2007-06 Es reemplazada por DIN EN 14511-1:2012-01 |
Please enter a valid video URL.
The URL can point to any video file or a Youtube video.
El libro en palabras del autor
Ultricies magna feugiat malesuada sociosqu varius vivamus cubilia parturient, himenaeos vitae vehicula nam placerat netus urna platea, nostra rutrum felis mattis penatibus velit quisque.
ButtonNormas citadas
Libros relacionados
The following has evaluated to null or missing:
==> getListTypeEntriesByERC("IDIOMAS_NORMAS_PICKLIST") [in template "34352066712900#33336#153601502" at line 22, column 25]
----
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 LANG_ENTRIES = getListTypeEnt... [in template "34352066712900#33336#153601502" at line 22, column 1]
----
1<#setting url_escaping_charset="UTF-8">
2<meta name="viewport" content="width=device-width, initial-scale=1">
3
4<#-- Channel data -->
5<#assign channelResponse = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels?filter=name eq 'Aenor Tienda'")>
6<#assign channel = channelResponse.items[0]>
7<#assign channelId = channel.id>
8<#assign numItemsToShow = paginationDelta>
9<#assign currentLocale = themeDisplay.getLocale()>
10<#assign currentLanguage = currentLocale?substring(0,2)>
11
12<#function getListTypeEntriesByERC erc>
13 <#attempt>
14 <#return restClient.get(
15 "/headless-admin-list-type/v1.0/list-type-definitions/by-external-reference-code/${erc}/list-type-entries?fields=key,name&sort"
16 ).items>
17 <#recover>
18 <#return []>
19 </#attempt>
20</#function>
21
22<#assign LANG_ENTRIES = getListTypeEntriesByERC("IDIOMAS_NORMAS_PICKLIST")>
23
24<#function langLiteral key>
25 <#assign k = (key!"")?upper_case>
26 <#list LANG_ENTRIES as e>
27 <#if (e.key!"")?upper_case == k>
28 <#return e.name!"">
29 </#if>
30 </#list>
31 <#return key!"" >
32</#function>
33
34<#function removeExtension filename>
35 <#if filename?contains(".")>
36 <#return filename?replace(r'\.[^.]+$', '', 'r')>
37 <#else>
38 <#return filename>
39 </#if>
40</#function>
41
42<section class="books-section">
43 <div class="container">
44 <div class="row d-flex">
45 <div class="col-12 books-container owl-carousel owl-theme">
46 <#if entries?has_content>
47 <#-- <#assign channelId = getChannelId()> -->
48 <#list entries as entry>
49
50 <#-- Product data -->
51 <#assign product = getProduct(channelId, entry.getCProductId()) />
52 <#assign productId = product.productId />
53 <#assign cpDefinitionId = product.id />
54 <#assign productERC = product.externalReferenceCode />
55 <#assign categoriesProduct = getProductCategories(channelId, productId) />
56 <#assign hasProductCategoriaTipoEntidadLibro = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'libro') />
57 <#assign hasProductCategoriaTipoEntidadNorma = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'norma') />
58 <#assign hasProductCategoriaTipoEntidadColeccionTematica = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'coleccion tematica') />
59
60 <#-- <#assign product = getProduct(channelId, entry.getCProductId())> -->
61 <#assign author = getProductAuthor(getProductSpecifications(channelId, product.productId))>
62 <#assign booksDetails = getBooksDetails(product.id)>
63 <#assign bookInfoProduct = getBookInfoProduct(cpDefinitionId) />
64 <#assign languages = []>
65 <#list booksDetails as b>
66 <#if b.codLanguage?? && b.codLanguage?has_content && !languages?seq_contains(b.codLanguage)>
67 <#assign languages = languages + [b.codLanguage]>
68 </#if>
69 </#list>
70 <#assign defaultLang = "">
71 <#assign defaultFmt = "">
72 <#if booksDetails?has_content>
73 <#assign defaultLang = (booksDetails[0].codLanguage!"")>
74 <#assign defaultFmt = (booksDetails[0].codFormat!"")>
75 </#if>
76 <#assign formatsForDefault = []>
77 <#list booksDetails?filter(b -> (b.codLanguage!"") == defaultLang) as bd>
78 <#if bd.codFormat?? && bd.codFormat?has_content && !formatsForDefault?seq_contains(bd.codFormat)>
79 <#assign formatsForDefault = formatsForDefault + [bd.codFormat]>
80 </#if>
81 </#list>
82 <#if formatsForDefault?has_content && !formatsForDefault?seq_contains(defaultFmt)>
83 <#assign defaultFmt = formatsForDefault[0]>
84 </#if>
85
86 <div class="item-book"
87 data-category-type-entity="${
88 hasProductCategoriaTipoEntidadLibro?then(
89 'book',
90 hasProductCategoriaTipoEntidadNorma?then(
91 'standard',
92 hasProductCategoriaTipoEntidadColeccionTematica?then(
93 'collection-thematic',
94 'other'
95 )
96 )
97 )
98 }"
99 data-index="${entry_index + 1}"
100 data-index-total="${entries?size}"
101 data-productid="${product.id?html}"
102 data-title="${product.name?html}"
103 data-entrytype="Libro"
104 data-code="${(product.externalReferenceCode!entry.getCProductId())?html}">
105
106 <div class="info-book">
107 <#assign imageUrl = "/documents/d/global/logoletters">
108 <#if bookInfoProduct.cubierta?? && bookInfoProduct.cubierta?has_content>
109 <#assign imageUrl = "/documents/d/tienda/" + removeExtension(bookInfoProduct.cubierta)>
110 </#if>
111 <img loading="lazy" src="${imageUrl}" alt="${product.name}">
112 <a href="/p/${entry.getUrl()}" data-senna-off="true">
113 <h3 class="title-book">${product.name}</h3>
114 </a>
115
116 <div class="description-text">
117 <#if author?? && author?has_content>
118 ${author}
119 </#if>
120 </div>
121
122 <div class="price-container">
123 <p class="old-price-block">
124 <span class="old-price">00,00 €</span>
125 <span class="discount">0%</span>
126 </p>
127 <p class="price price-ae">00,00 €</p>
128 </div>
129
130 <div data-productid="${productId}" data-erc="${productERC}" class="options-book selector-language_format">
131 <select class="form-control select-language">
132 <#list languages as l>
133 <option value="${l?html}" <#if l == defaultLang>selected</#if>>
134 ${langLiteral(l)?html}
135 </option>
136 </#list>
137 </select>
138 <select class="form-control select-format">
139 <#list formatsForDefault as f>
140 <option value="${f?html}" <#if f == defaultFmt>selected</#if>>${f?html}</option>
141 </#list>
142 </select>
143 </div>
144
145 <button class="book-button" disabled>${languageUtil.get(locale, "ecom-add_cart")}</button>
146 </div>
147
148 <script type="application/json" class="books-data">[
149 <#list booksDetails as b>
150 {
151 "format": "${(b.codFormat!"")?js_string}",
152 "language": "${(b.codLanguage!"")?js_string}",
153 "currency": "${(b.currency!"EUR")?js_string}",
154 "discount": ${(b.webDiscount!'0')?c},
155 "price": ${(b.price!'0')?c}
156 }<#if b_has_next>,</#if>
157 </#list>
158 ]</script>
159
160 <script type="application/json" class="lang-map">{
161 <#list languages as l>
162 "${(l!"")?upper_case?js_string}": "${langLiteral(l)?js_string}"<#if l_has_next>,</#if>
163 </#list>
164 }</script>
165 </div>
166 </#list>
167 </#if>
168 </div>
169 </div>
170 </div>
171</section>
172
173<#-- REST -->
174<#function getChannelId>
175 <#return restClient.get(
176 "/headless-commerce-delivery-catalog/v1.0/channels?filter=name eq 'Aenor España'&sort"
177 ).items[0].id>
178</#function>
179
180<#function getProduct channelId productId>
181 <#return restClient.get(
182 "/headless-commerce-delivery-catalog/v1.0/channels/${channelId}/products/${productId}"
183 )>
184</#function>
185
186<#function getProductSpecifications channelId productId>
187 <#return restClient.get(
188 "/headless-commerce-delivery-catalog/v1.0/channels/${channelId}/products/${productId}/product-specifications?sort"
189 ).items>
190</#function>
191
192<#function getProductCategories channelId productId>
193 <#return restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/${channelId}/products/${productId}/categories?sort=vocabulary").items>
194</#function>
195
196<#function isVocabularyNameIntoCategories categories vocabulary name>
197 <#assign found = false />
198
199 <#if categories?has_content && vocabulary?has_content && name?has_content>
200
201 <#assign vocabNorm = normalize(vocabulary) />
202 <#assign nameNorm = normalize(name) />
203
204 <#list categories as category>
205 <#if !found>
206 <#assign catVocabNorm = normalize(category.vocabulary) />
207 <#assign catNameNorm = normalize(category.name) />
208
209 <#if catVocabNorm == vocabNorm && catNameNorm == nameNorm>
210 <#assign found = true />
211 </#if>
212 </#if>
213 </#list>
214
215 </#if>
216
217 <#return found>
218</#function>
219
220<#function normalize text onlyAccents = false>
221 <#-- proteger null -->
222 <#if !text?has_content>
223 <#return "">
224 </#if>
225
226 <#assign t = text />
227
228 <#-- quitar acentos -->
229 <#assign t = t
230 ?replace("á","a")?replace("é","e")?replace("í","i")
231 ?replace("ó","o")?replace("ú","u")?replace("ü","u")
232 ?replace("ñ","n")
233 ?replace("Á","A")?replace("É","E")?replace("Í","I")
234 ?replace("Ó","O")?replace("Ú","U")?replace("Ü","U")
235 ?replace("Ñ","N")
236 />
237
238 <#-- si NO es solo acentos, normalización completa -->
239 <#if !onlyAccents>
240 <#assign t = t?lower_case />
241 <#assign t = t?trim />
242 <#assign t = t?replace("\\s+", " ", "r") />
243 </#if>
244
245 <#return t>
246</#function>
247
248<#function getProductAuthor specifications>
249 <#list specifications as specification>
250 <#if (specification.specificationKey!"")?lower_case == "author">
251 <#return specification.value!"" >
252 </#if>
253 </#list>
254 <#return "">
255</#function>
256
257<#function getBooksDetails productId>
258 <#return restClient.get(
259 "/c/books/?filter=r_books_CPDefinitionId eq '${productId}'"
260 ).items>
261</#function>
262
263<#function getBookInfoProduct cpDefinitionId>
264 <#assign response = restClient.get("/c/bookinfos/?filter=r_bookInfo_CPDefinitionId eq '${cpDefinitionId}'")!{} />
265 <#assign items = response.items![] />
266 <#return (items?size > 0)?then(items[0], {}) />
267</#function>
268
269<#macro printObject obj>
270 <#-- Permite hacer un output de un array de objetos o un objeto que se pasa como parámetro -->
271 <#if obj?is_hash>
272 {
273 <#list obj?keys as k>
274 "${k}":
275 <#assign value = obj[k]>
276 <#if value?is_hash || value?is_sequence>
277 <@printObject obj=value/>
278 <#elseif value?is_boolean>
279 ${value?c}
280 <#elseif value?is_number>
281 ${value}
282 <#elseif value?has_content>
283 "${value?string}"
284 <#else>
285 null
286 </#if>
287 <#if k_has_next>, </#if>
288 </#list>
289 }
290 <#elseif obj?is_sequence>
291 [
292 <#list obj as item>
293 <@printObject obj=item/>
294 <#if item_has_next>, </#if>
295 </#list>
296 ]
297 <#elseif obj?is_boolean>
298 ${obj?c}
299 <#elseif obj?is_number>
300 ${obj}
301 <#elseif obj?has_content>
302 "${obj?string}"
303 <#else>
304 null
305 </#if>
306</#macro>
307
308
309
310<script>
311(function($){
312 function money(v, curr){
313 var n = Number(v) || 0;
314 var s = n.toLocaleString('es-ES', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
315 return s + (curr === 'EUR' ? ' €' : ' ' + (curr || ''));
316 }
317 function uniq(a){ return Array.from(new Set(a)); }
318
319 function fill($sel, values, textFn){
320 var keep = $sel.val();
321 $sel.empty();
322 values.forEach(function(v){
323 $sel.append($('<option>', { value: v, text: textFn ? textFn(v) : v }));
324 });
325 if(keep && values.indexOf(keep) !== -1){ $sel.val(keep); }
326 else if(values.length){ $sel.val(values[0]); }
327 }
328
329 function relabel($sel, textFn){
330 $sel.find('option').each(function(){
331 var v = $(this).attr('value');
332 $(this).text(textFn ? textFn(v) : v);
333 });
334 }
335
336 function toUC(s){ return (s||'').toString().toUpperCase(); }
337
338 function initCard($card){
339 var dataNode = $card.find('script.books-data')[0];
340 if(!dataNode) return;
341 var data = [];
342 try { data = JSON.parse(dataNode.textContent); } catch(e) { data = []; }
343 if(!data.length) return;
344
345 var mapNode = $card.find('script.lang-map')[0];
346 var langMap = {};
347 try { if(mapNode) langMap = JSON.parse(mapNode.textContent); } catch(e) { langMap = {}; }
348
349 var $lang = $card.find('.select-language');
350 var $fmt = $card.find('.select-format');
351 var $newP = $card.find('.price-ae');
352 var $oldP = $card.find('.price-old');
353
354 function labelOf(lang){ return langMap[toUC(lang)] || lang; }
355 function formatsFor(lang){
356 return uniq(data.filter(function(d){ return d.language === lang; }).map(function(d){ return d.format; }));
357 }
358 function languagesFor(fmt){
359 return uniq(data.filter(function(d){ return d.format === fmt; }).map(function(d){ return d.language; }));
360 }
361 function entry(lang, fmt){
362 return data.find(function(d){ return d.language === lang && d.format === fmt; });
363 }
364 function finalPrice(p, d){
365 var n = Number(p)||0, k = Number(d)||0;
366 return k>0 ? Math.floor((n - n*k/100) * 100) / 100 : n;
367 }
368 function render(){
369 var lang = $lang.val();
370 var fmt = $fmt.val();
371 var e = entry(lang, fmt);
372 if(!e) return;
373 var f = finalPrice(e.price, e.discount);
374 $newP.text(money(f, e.currency));
375 if(Number(e.discount) > 0){
376 $oldP.text(money(e.price, e.currency)).show();
377 } else {
378 $oldP.hide();
379 }
380 }
381
382 function onLanguageChange(){
383 var lang = $lang.val();
384 var fmts = formatsFor(lang);
385 fill($fmt, fmts, null);
386 render();
387 }
388 function onFormatChange(){
389 var fmt = $fmt.val();
390 var langs = languagesFor(fmt);
391 fill($lang, langs, labelOf);
392 render();
393 }
394
395 var l0 = $lang.val();
396 var f0 = $fmt.val();
397 if(!entry(l0, f0)){ onLanguageChange(); } else { render(); }
398
399 // reetiqueta idiomas iniciales sin tocar los values
400 relabel($lang, labelOf);
401
402 $lang.off('change.books').on('change.books', onLanguageChange);
403 $fmt.off('change.books').on('change.books', onFormatChange);
404
405 // Añadir a la cesta con lógica centralizada
406 $card.find('.book-button').off('click.books').on('click.books', function(e){
407 var btn = this;
408 var run = async function(){
409 e.preventDefault();
410 var entryType = ($card.data('entrytype') || 'Libro');
411 var code = ($card.data('code') || '').toString();
412 var codIdioma = ($lang.val() || '').toString();
413 var codFormato = ($fmt.val() || '').toString();
414 if (!code) { code = ($card.find('.title-book').text() || '').trim(); }
415 // Precio final (aplica descuento si existe)
416 var eSel = (function(){
417 var l = $lang.val(); var f = $fmt.val();
418 for (var i=0;i<data.length;i++){ if (data[i].language===l && data[i].format===f) return data[i]; }
419 return null;
420 })();
421 var baseP = eSel ? Number(eSel.price) || 0 : 0;
422 var disc = eSel ? Number(eSel.discount) || 0 : 0;
423 var priceToSend = disc > 0 ? Math.floor((baseP - baseP*disc/100) * 100) / 100 : baseP;
424
425 await window.ecomGlobalScripts.functions.addToCart({
426 entryType: entryType,
427 code: code,
428 codIdioma: codIdioma,
429 codFormato: codFormato,
430 price: priceToSend,
431 name: ($card.data('title') || '').toString(),
432 amount: 1
433 });
434 };
435 var helper = window.ecomGlobalScripts?.functions?.withButtonSpinner;
436 if (typeof helper === 'function') {
437 return helper(btn, run, { spinnerClass: 'spinner-border spinner-border-sm text-light', mode: 'replace' });
438 }
439 return run();
440 });
441 // Evita que Owl Carousel interprete el click como drag horizontal
442 $card.find('.book-button')
443 .off('pointerdown.owl mousedown.owl touchstart.owl')
444 .on('pointerdown.owl mousedown.owl touchstart.owl', function(e){
445 e.stopPropagation();
446 });
447 }
448
449 function adjustHeights(){
450 if($(window).width() > 766.98){
451 var hT = 0, hD = 0, hP = 0;
452 $('.books-section .title-book').css('height', 'auto').each(function(){ hT = Math.max(hT, $(this).outerHeight()); });
453 $('.books-section .description-text').css('height', 'auto').each(function(){ hD = Math.max(hD, $(this).outerHeight()); });
454 $('.books-section .price-container').css('height', 'auto').each(function(){ hP = Math.max(hP, $(this).outerHeight()); });
455 $('.books-section .title-book').height(hT);
456 $('.books-section .description-text').height(hD);
457 if (hP > 0) {
458 $('.books-section .price-container').height(hP);
459 } else {
460 $('.books-section .price-container').css('height', 'auto');
461 }
462 } else {
463 $('.books-section .title-book, .books-section .description-text, .books-section .price-container').css('height', 'auto');
464 }
465 }
466
467 $(function(){
468 var so = localStorage.getItem('salesOrderId'); // flushQueue gestionado por header
469 $('.books-section .item-book').each(function(){ initCard($(this)); });
470
471 var $owl = $('.books-section .books-container');
472 if($owl.owlCarousel && !$owl.hasClass('owl-loaded') && !$owl.data('owl.carousel')){
473 $owl.owlCarousel({
474 nav: true,
475 navText: [
476 '<i class="fa-solid fa-chevron-left" aria-hidden="true"></i>',
477 '<i class="fa-solid fa-chevron-right" aria-hidden="true"></i>'
478 ],
479 loop: false,
480 dots: false,
481 pagination: false,
482 margin: 25,
483 autoHeight: false,
484 responsive: {
485 0: { items: 1, mouseDrag: true, touchDrag: true },
486 500: { items: 1, mouseDrag: true, touchDrag: true },
487 767: { items: 2, mouseDrag: true, touchDrag: true },
488 1000:{ items: 3, mouseDrag: true, touchDrag: true },
489 1200:{ items: 4, mouseDrag: true, touchDrag: true }
490 }
491 });
492 $owl.off('initialized.owl.carousel refreshed.owl.carousel resized.owl.carousel translated.owl.carousel')
493 .on('initialized.owl.carousel refreshed.owl.carousel resized.owl.carousel translated.owl.carousel', adjustHeights);
494 }
495 adjustHeights();
496 $(window).off('resize.books').on('resize.books', adjustHeights);
497 });
498})(jQuery);
499</script>
500
501<style>
502.books-section .container {
503 padding: 1rem 0;
504 margin-bottom: 30px;
505
506 .title_wrapper {
507 font-size: 1.5rem;
508 font-weight: 600;
509 margin: 0;
510 color: #001957;
511 white-space: nowrap;
512 }
513
514 a.btn-outline-ae {
515 white-space: nowrap;
516 border: 1px solid #1d57a8;
517 color: #1d57a8;
518 padding: 0.5rem 1rem;
519 font-weight: 500;
520 text-decoration: none;
521 border-radius: 2px;
522 transition: background-color 0.3s;
523
524 &:hover {
525 background-color: #e8f0ff;
526 }
527 }
528}
529.books-section .books-container:not(.owl-drag) .owl-stage {
530 cursor: auto;
531}
532.books-section .item-book {
533 position: relative;
534 border: 1px solid #e0e0e0;
535 padding: 20px 14px 16px;
536 border-radius: 4px;
537 background: #fff;
538 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
539 display: flex;
540 flex-direction: column;
541 justify-content: space-between;
542 max-width: 250px;
543}
544.books-section .tag-item {
545 font-family: Segoe-UI-This-Bold;
546 font-size: 12px;
547 line-height: 13.2px;
548 text-align: right;
549 padding: 4px;
550 border-radius: 4px;
551 text-transform: uppercase;
552 margin: 0 4px 0 0;
553}
554.books-section .tag-item.blue-tag {
555 background-color: #3cb4e5;
556 border: 1px solid #3cb4e5;
557 color: #fff;
558}
559.books-section .tag-item.orange-tag {
560 background-color: #ff7e33;
561 border: 1px solid #ff7e33;
562 color: #fff;
563}
564.books-section .tag-item.white-tag {
565 background-color: #fff;
566 border: 1px solid #8a8a8a;
567 color: #3a3a39;
568}
569
570.books-section .title-book {
571 font-family: SohoGothicPro-Regular;
572 font-size: 16px;
573 font-weight: bold;
574 color: #1a4b94;
575 margin-top: 10px;
576 margin-bottom: 10px;
577}
578.books-section .description-text {
579 margin-top: 10px;
580 margin-bottom: 12px;
581 font-family: SohoGothicPro-Regular;
582 font-size: 13px;
583 text-align: left;
584 color: #333;
585}
586.books-section .price-container {
587 display: flex;
588 flex-direction: column;
589 text-align: left;
590 letter-spacing: -0.02em;
591}
592.books-section .price-container .price-text {
593 font-family: SohoGothicPro-Regular;
594 font-size: 12px;
595 font-weight: 400;
596 line-height: 13.2px;
597 color: #000;
598}
599.books-section .price-container .price-ae {
600 font-size: 23px;
601 font-weight: bold;
602 margin-bottom: 10px;
603 color: #1a4b94;
604}
605.books-section .price-container .price-old {
606 font-size: 16px;
607 font-weight: bold;
608 color: grey;
609 text-decoration: line-through
610}
611.books-section .price-container .price {
612 font-family: 'SohoPro-Regular';
613 font-size: 23px;
614 font-weight: bold;
615 color: #0046ad;
616 margin-bottom: 0;
617}
618.books-section .price-container .old-price {
619 font-family: 'SohoPro-Regular';
620 font-size: bold;
621 color: #25323c;
622 font-size: 17px;
623 text-decoration: line-through;
624 margin-bottom: 0;
625}
626.books-section .price-container .discount {
627 font-family: 'SohoPro-Regular';
628 display: inline-block;
629 background-color: var(--ae-450, #D44436);
630 color: #fff;
631 font-size: 1rem;
632 font-weight: bold;
633 padding: 0.3em 0.3em;
634 margin-left: 0.4em;
635 border-radius: 0.2em;
636 line-height: 1;
637 text-align: center;
638}
639.books-section .info-container {
640 display: flex;
641}
642@media (min-width: 500px) and (max-width: 767px) {
643 .books-section .info-container {
644 flex-direction: column;
645 justify-content: end;
646 align-items: start;
647 }
648}
649
650.books-section .info-container .book-mode {
651 margin-right: 16px;
652}
653.books-section .book-button {
654 border: 0;
655 outline: 0;
656 background: var(--brand-color-1, #1f57a3);
657 padding: 17px;
658 width: 100%;
659 text-align: center;
660 display: block;
661 color: #fff;
662 text-transform: uppercase;
663 font-family: SohoStd-Medium;
664 font-size: 14px;
665 font-weight: 500;
666 line-height: 14px;
667 text-align: center;
668 text-decoration: none;
669 appearance: none;
670 -webkit-appearance: none;
671 -moz-appearance: none;
672}
673.books-section .book-button:hover,
674.books-section .book-button:focus,
675.books-section .book-button:focus-visible,
676.books-section .book-button:active {
677 cursor: pointer;
678 text-decoration: none;
679 outline: 2px solid var(--brand-color-2, #6a9bd3);
680 outline-offset: 2px;
681 box-shadow: 0 0 0 3px rgba(106, 155, 211, 0.35);
682}
683.books-section .book-button.disabled {
684 opacity: .6;
685 pointer-events: none;
686}
687.books-section .book-button:disabled,
688.books-section .book-button[disabled],
689.books-section .book-button.ecom-btn-loading {
690 opacity: .6;
691 pointer-events: none;
692 filter: brightness(0.85);
693}
694
695</style>
696
697<style>
698
699.books-section .owl-carousel .owl-nav .owl-next {
700 width: 50px;
701 border: 1px solid #c3c3c3;
702 border-radius: 0;
703 height: 50px;
704 font-size: 30px;
705}
706.books-section .owl-carousel .owl-nav .owl-next:focus {
707 outline: 0;
708}
709.books-section .owl-carousel .owl-nav .owl-prev {
710 width: 50px;
711 border: 1px solid #c3c3c3;
712 border-radius: 0;
713 height: 50px;
714 font-size: 30px;
715}
716.books-section .owl-carousel .owl-nav .owl-prev:focus {
717 outline: 0;
718}
719
720.books-section .owl-dots {
721 display: flex;
722 justify-content: center;
723 margin-top: 30px;
724
725}
726.books-section button.owl-dot {
727 width: 15px;
728 height: 15px;
729 background: transparent;
730 margin: 10px;
731 border: 1px solid var(--brand-color-2, #6a9bd3);
732 background-color: var(--brand-color-2, #6a9bd3);
733}
734.books-section button.owl-dot:focus-visible{
735 outline: solid;
736}
737.books-section .owl-dot button {
738 color: white;
739}
740.books-section .pagi-btn {
741 font-family: "SohoGothicPro-Regular";
742 font-size: 16px;
743 font-weight: 400;
744 line-height: 24px;
745 position: relative;
746 width: 100%;
747 background: transparent !important;
748 border: none !important;
749 cursor: pointer;
750 padding: 32px 10px;
751}
752.books-section .owl-dot.active {
753 background: var(--brand-color-3, #29337f);
754 border: 1px solid var(--brand-color-3, #29337f);
755}
756.books-section .owl-dot.active .pagi-btn {
757 color: white;
758 font-family: "SohoStd-Medium";
759 font-size: 16px;
760 font-weight: 500;
761 line-height: 24px;
762}
763.books-section .owl-dot.active .pagi-btn::before {
764 border-bottom: 28px solid var(--brand-color-2, #6a9bd3);
765 border-left: 15px solid transparent;
766 border-right: 15px solid transparent;
767 width: 0;
768 height: 0;
769 content: "";
770 position: absolute;
771 bottom: 84px;
772 left: 45%;
773}
774@media (min-width: 992px) {
775 .books-section .owl-navigation-mobile {
776 display: none;
777}
778}
779.books-section .owl-navigation-mobile .owl-navigation-mobile-box {
780background: linear-gradient(0deg, var(--brand-color-2, #6a9bd3) 4.9%, var(--brand-color-1, #1f57a3) 110.78%);
781 padding: 28px;
782}
783.books-section .owl-navigation-mobile .owl-navigation-mobile-box p {
784 color: white;
785 font-family: "SohoStd-Medium";
786 font-size: 14px;
787 font-weight: 500;
788 line-height: 18px;
789 margin-bottom: 0;
790}
791.books-section .owl-navigation-mobile .owl-navigation-mobile-box::before {
792 border-bottom: 28px solid var(--brand-color-1, #1f57a3);
793 border-left: 15px solid transparent;
794 border-right: 15px solid transparent;
795 width: 0;
796 height: 0;
797 content: "";
798 position: absolute;
799 bottom: 72px;
800 z-index: 1;
801 margin-left: -14px;
802}
803.books-section .owl-carousel .owl-nav {
804 position: absolute;
805 top: 40%;
806 left: 0;
807 right: 0;
808}
809.books-section .owl-carousel .owl-nav .owl-prev,
810.books-section .owl-carousel .owl-nav .owl-next {
811 position: absolute;
812 background: none;
813 border: 2px solid #fff;
814 z-index: 100;
815}
816.books-section .owl-carousel .owl-nav .owl-prev.disabled,
817.books-section .owl-carousel .owl-nav .owl-next.disabled {
818 opacity: 0.5;
819}
820.books-section .owl-carousel .owl-nav .owl-prev {
821 background: var(--brand-color-3, #29337f);
822 padding: 16px !important;
823 left: -25px;
824}
825.books-section .owl-carousel .owl-nav .owl-prev i {
826 color: white;
827 position: absolute;
828 top: 17px;
829 left: 19px;
830 font-size: 13px;
831}
832.books-section .owl-carousel .owl-nav .owl-next {
833 background: var(--brand-color-3, #29337f);
834 padding: 16px !important;
835 right: -25px;
836}
837.books-section .owl-carousel .owl-nav .owl-next i {
838 color: white;
839 position: absolute;
840 top: 17px;
841 left: 19px;
842 font-size: 13px;
843}
844@media (max-width: 991px){
845 .books-section .owl-carousel .owl-nav .owl-prev {
846 left: -55px;
847 }
848 .books-section .owl-carousel .owl-nav .owl-next {
849 right: -55px;
850 }
851}
852@media (max-width: 868px){
853 .books-section .owl-carousel .owl-nav .owl-prev {
854 left: -25px;
855 }
856 .books-section .owl-carousel .owl-nav .owl-next {
857 right: -25px;
858 }
859}
860@media (max-width: 767px){
861 .books-section .owl-carousel .owl-nav .owl-prev {
862 left: -60px;
863 }
864 .books-section .owl-carousel .owl-nav .owl-next {
865 right: -60px;
866 }
867}
868@media (max-width: 668px){
869 .books-section .owl-carousel .owl-nav .owl-prev {
870 left: 40%
871 }
872 .books-section .owl-carousel .owl-nav .owl-next {
873 right: 40%;
874 }
875 .books-section .owl-carousel .owl-nav {
876 top: 103%;
877 }
878}
879@media (max-width: 575px) {
880 .books-section .owl-carousel .owl-nav .owl-prev {
881 left: 35%;
882 }
883 .books-section .owl-carousel .owl-nav .owl-next {
884 right: 35%;
885 }
886}
887@media (max-width: 400px) {
888 .books-section .owl-carousel .owl-nav .owl-prev {
889 left: 32%;
890 }
891 .books-section .owl-carousel .owl-nav .owl-next {
892 right: 32%;
893 }
894}
895@media (min-width: 300px){
896 .books-section .owl-carousel .owl-stage-outer {
897 overflow: visible;
898 }
899}
900@media (min-width: 1100px){
901 .books-section .owl-carousel .owl-nav .owl-prev {
902 left: -55px;
903 }
904 .books-section .owl-carousel .owl-nav .owl-next {
905 right: -55px;
906 }
907}
908@media (min-width: 1200px){
909 .books-section .owl-carousel .owl-nav .owl-prev {
910 left: -25px;
911 }
912 .books-section .owl-carousel .owl-nav .owl-next {
913 right: -25px;
914 }
915}
916@media (min-width: 1330px){
917 .books-section .owl-carousel .owl-nav .owl-prev {
918 left: -75px;
919 }
920 .books-section .owl-carousel .owl-nav .owl-next {
921 right: -75px;
922 }
923}
924
925.books-section .owl-item {
926 display: flex;
927 flex-direction: column;
928 justify-content: stretch;
929}
930
931.books-section .owl-item img{
932 display: block;
933 width: fit-content;
934 height: 210px;
935 margin: auto;
936}
937
938.books-section .tag-book {
939 position: absolute;
940 top: -10px;
941 right: 15px;
942 padding: 4px 10px;
943 border-radius: 4px;
944 background-color: var(--ae-450, #D44436);
945 color: #fff;
946 font-weight: bold;
947 font-size: 12px;
948 z-index: 5;
949}
950
951.books-section .owl-carousel .owl-stage-outer {
952 overflow-x: hidden;
953 overflow-y: visible;
954}
955
956.books-section .owl-carousel .owl-stage-outer .owl-stage {
957 overflow: hidden;
958 display: flex;
959 align-items: stretch;
960 padding-left: 0 !important;
961 padding-right: 0 !important;
962 padding-top: 30px;
963}
964
965.options-book {
966 display: flex;
967 gap: 10px;
968 margin-bottom: 16px;
969 border: none;
970}
971
972.options-book .select-language {
973 background-color: #f5f5f5;
974 flex: 2;
975 font-size: 13px;
976}
977.options-book .select-format {
978 background-color: #f5f5f5;
979 flex: 1;
980 font-size: 13px;
981}
982
983</style>
Normas relacionadas
Otras colecciones temáticas
- Normas UNE, EN, ISO, IEC, BSI, DIN, ASTM, AFNOR, IEEE, SAE
- Además, las normas del resto de organismos las puedes pedir a través del e-mail normas@aenor.com
- Libros técnicos en papel y en soporte electrónico (PDF, epub).
Las normas pueden adquirirse en PDF, lectura o papel. Las normas en lectura no son archivos de descarga, solo pueden visualizarse en el área de cliente. Las normas solicitadas en papel y algunos de los libros en catálogo se imprimen bajo demanda.
Consultar plazos en normas@aenor.com.
La licencia de uso es para un usuario y un dispositivo, si deseas reproducir el contenido de la norma, debes solicitar una licencia que tendrá un coste adicional. Envíanos tu consulta aquí
Las normas y libros de AENOR que aparecen en la tienda on-line solo se pueden comprar exclusivamente a través de la web. AENOR no dispone de tienda física.
Procedimiento de compra: haciendo clic en “Comprar” los productos deseados irán a la cesta de la compra. Si hubiera problemas de visualización el navegador recomendado es Chrome.
Para formalizar la compra debe acceder al área de cliente. En caso de no estar registrado como cliente, se deberá rellenar un formulario con los datos junto con una clave y usuario. De este modo, quedará creada la cuenta.
Una vez cumplimentado el formulario “Datos del cliente” se podrá visualizar “Pedido en curso” con todos los artículos cargados en la cesta de la compra, sus precios, impuestos establecidos en la legislación vigente y gastos de envío si fueran de aplicación.
Los precios de las normas y libros que aparecen en las diversas secciones no incluyen impuestos, ni gastos de envío.
Los códigos promocionales de AENOR constan de caracteres alfanuméricos y solo se podrán aplicar en la compra en web, recibir a través de una oferta específica y durante un tiempo limitado. Para aplicar tu código promocional, solo tienes que introducirlo en el paso 2 de 4 del proceso de compra en la web y clicar en “aplicar”, después de haberte identificado y elegido las formas de pago. Los códigos promocionales no son acumulables.
- Tarjeta de crédito o débito (Visa, Mastercard) y PayPal.
- Transferencia bancaria. En caso de optar por esta forma de pago es necesario enviar previamente a AENOR copia de la transferencia por correo electrónico a normas@aenor.com
- La factura de compra se puede descargar desde el área de cliente, en mis pedidos anteriores
En el caso de los clientes de empresas con sede en el extranjero, el número de identificación del contribuyente del país correspondiente (por ejemplo, en Argentina el CUIT), deberá rellenarse en el campo CIF/NIF - VAT.
- Descarga directa a través de la web en el Área de clientes. En el área de clientes al que solo se puede acceder con clave y usuario, estarán disponibles los productos adquiridos durante un periodo de quince días desde la fecha de la compra, siempre y cuando el pago haya sido aceptado. Los archivos en formato digital están protegidos y en ningún caso son editables. Antes de adquirirlos, es importante que la licencia de uso sea leída y aceptada como paso previo a la compra.
- Envío por mensajería. Los productos comprados en soporte físico se envían por mensajería. El plazo máximo de entrega en el territorio español, desde la aceptación del pedido por parte AENOR es de:
- Siete días laborables aproximados para todas las normas compradas a través de la tienda en soporte papel.
- Tres días laborables aproximados para libros comprados a través de la tienda. Las existencias de los libros en papel son limitadas y su oferta en la web no implica disponibilidad en el plazo indicado. En el caso de no disponer del libro solicitado, se avisa al cliente de la demora en la recepción del pedido que será aproximadamente de siete días laborables.
Para el resto de productos que no están en la web, consultar disponibilidad y plazo de entrega en normas@aenor.com.
1. Para los productos digitales (PDF, Epub), una vez realizada la entrega mediante descarga directa a través de la web en el Área de clientes, no tendrás derecho a ejercer tu derecho de desistimiento.
2. Para los productos personalizados en soporte papel, una vez realizada la compra, no tendrás derecho a ejercer tu derecho de desistimiento.
3. Para el resto de productos en soporte papel, dispones del derecho a desistir de la compraventa en un plazo de 14 días naturales a contar desde la fecha de la compra. Recuerda que para la devolución es imprescindible que el producto se encuentre en perfectas condiciones, precintado por el envoltorio y conservando su embalaje original. El cliente será responsable de la recogida y los gastos de envío.
La factura del pedido incluye los gastos de envío, por lo que no hay que abonar ningún importe al mensajero. Los gastos de envío se calculan en función tanto del destino final del pedido como del número de productos solicitados. Incluyen gastos de transporte y embalaje. Los gastos de envío están sujetos a revisiones periódicas. Los libros outlet tendrán gastos de envío gratuitos solo si el envío se realiza en Península.
| Destino | Hasta tres normas y/o publicaciones | A partir de tres normas y/o publicaciones |
| Península | 7,31€ | 8,60€ |
| Baleares | 18,04€ | 23,34€ |
| Canarias, Ceuta y Melilla | 18,04€ | 23,34€ |
| Europa | 59,17€ | 80,07€ |
| Estados Unidos y Canadá | 70,07€ | 96,94€ |
| Resto del mundo | 91,94€ | 115,91€ |
- Las compras realizadas por residentes en los Estados miembros de la Unión Europea estarán sujetas al pago de IVA (impuesto sobre el valor añadido).
-
- En el caso de personas jurídicas y personas físicas que, actuando como empresarios, tengan su domicilio en algún Estado miembro de la Unión Europea (excepto residentes en España) y posean NIF/VAT intracomunitario inscrito en el censo VIES, estarán exentas del pago del IVA, siendo condición imprescindible el envío de dicho documento por correo electrónico a normas@aenor.com.
- Las compras realizadas a título particular (persona física), independientemente de donde tengan su residencia, estarán sujetas al pago del IVA.
- Las compras realizadas por entidades en países extracomunitarios estarán exentas del pago del IVA, siempre y cuando envíen el correspondiente documento de residencia fiscal por correo electrónico a normas@aenor.com.
- Las operaciones de venta se entenderán realizadas en el domicilio social de AENOR: Génova 6, 28004, Madrid – España.
El contrato de compra de productos a través de este Sitio Web se regirá por la legislación española. Cualquier controversia que surja o guarde relación con el uso del Sitio Web o con dicho contrato será sometida a la jurisdicción exclusiva de los Juzgados y Tribunales de Madrid Capital.
No obstante lo anterior, si estás contratando como consumidor en los términos del Real Decreto 1/2007, nada en la presente cláusula afectará a los derechos que como tal te pudiera reconocer la legislación vigente.










