-50% de descuento* Si compras la misma norma UNE en distintos idiomas. * Dto. sobre el pvp inferior. Ver condiciones

ISO 16933:2007/Cor 1:2008

Glass in building — Explosion-resistant security glazing — Test and classification for arena air-blast loading — Technical Corrigendum 1

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> getProductCategories(channelId, product.productId)  [in template "34352066712900#33336#null" at line 5, column 30]

----
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 categoriesProduct = getProduc...  [in template "34352066712900#33336#null" at line 5, column 1]
----
1<#assign channelResponse = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels?filter=name eq 'Aenor Tienda'")> 
2<#assign channel = channelResponse.items[0]> 
3<#assign channelId = channel.id> 
4<#assign product = getProduct(channelId, CPDefinition_cProductId.getData())> 
5<#assign categoriesProduct = getProductCategories(channelId, product.productId) /> 
6<#assign hasProductCategoriaTipoEntidadLibro = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'libro') /> 
7<#assign hasProductCategoriaTipoEntidadNorma = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'norma') /> 
8<#assign hasProductCategoriaTipoEntidadColeccionTematica = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'coleccion tematica') /> 
9<#assign banner = getBanner(product.externalReferenceCode)> 
10 
11<#if banner?? && banner?has_content> 
12<section class="hero-banner"> 
13  <div class="hero-content"> 
14    <#if banner.bannerTitle?? && banner.bannerTitle?has_content> 
15      <h3>${banner.bannerTitle}</h3> 
16    </#if> 
17    <#if banner.bannerDescription?? && banner.bannerDescription?has_content> 
18      <div class="hero-description"> 
19        ${banner.bannerDescription} 
20      </div> 
21    </#if> 
22    <#if banner.showBannerButton> 
23      <a href="${banner.bannerUrlButton}" class="btnae-- btnae--primary animated-button">${banner.bannerTextButton}</a> 
24    </#if> 
25  </div> 
26 
27  <div class="hero-image"> 
28    <#if banner.bannerUrlImage?? && banner.bannerUrlImage?has_content> 
29      <img  
30        src="${banner.bannerUrlImage}" 
31
32    </#if> 
33  </div> 
34</section> 
35 
36<#-- Functions --> 
37<#function getProductCategories channelId productId> 
38    <#return restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/${channelId}/products/${productId}/categories?sort=vocabulary").items> 
39</#function> 
40 
41<#function isVocabularyNameIntoCategories categories vocabulary name> 
42    <#assign found = false /> 
43 
44    <#if categories?has_content && vocabulary?has_content && name?has_content> 
45 
46        <#assign vocabNorm = normalize(vocabulary) /> 
47        <#assign nameNorm  = normalize(name) /> 
48 
49        <#list categories as category> 
50            <#if !found> 
51                <#assign catVocabNorm = normalize(category.vocabulary) /> 
52                <#assign catNameNorm  = normalize(category.name) /> 
53 
54                <#if catVocabNorm == vocabNorm && catNameNorm == nameNorm> 
55                    <#assign found = true /> 
56                </#if> 
57            </#if> 
58        </#list> 
59 
60    </#if> 
61 
62    <#return found> 
63</#function> 
64 
65<#function normalize text onlyAccents = false> 
66    <#-- proteger null --> 
67    <#if !text?has_content> 
68        <#return ""> 
69    </#if> 
70 
71    <#assign t = text /> 
72 
73    <#-- quitar acentos --> 
74    <#assign t = t 
75        ?replace("á","a")?replace("é","e")?replace("í","i") 
76        ?replace("ó","o")?replace("ú","u")?replace("ü","u") 
77        ?replace("ñ","n") 
78        ?replace("Á","A")?replace("É","E")?replace("Í","I") 
79        ?replace("Ó","O")?replace("Ú","U")?replace("Ü","U") 
80        ?replace("Ñ","N") 
81    /> 
82 
83    <#-- si NO es solo acentos, normalización completa --> 
84    <#if !onlyAccents> 
85        <#assign t = t?lower_case /> 
86        <#assign t = t?trim /> 
87        <#assign t = t?replace("\\s+", " ", "r") /> 
88    </#if> 
89 
90    <#return t> 
91</#function> 
92 
93<#function getProduct channelId productId> 
94    <#return restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/${channelId}/products/${productId}")> 
95</#function> 
96 
97<#function getBanner erc> 
98    <#if hasProductCategoriaTipoEntidadNorma> 
99        <#return getStandardBanner(erc)> 
100    </#if> 
101    <#if hasProductCategoriaTipoEntidadLibro> 
102        <#return getBookBanner(erc)> 
103    </#if> 
104    <#if hasProductCategoriaTipoEntidadColeccionTematica> 
105        <#return getThematicCollectionBanner(erc)>   
106    </#if> 
107</#function> 
108 
109<#function getStandardBanner erc> 
110    <#assign response = restClient.get("/c/standardbanners/?filter=standardId eq '${erc}'&fields=bannerTitle,bannerDescription,showBannerButton,bannerTextButton,bannerUrlButton,bannerUrlImage")!{} /> 
111    <#assign items = response.items![] /> 
112    <#return (items?size > 0)?then(items[0], {}) /> 
113</#function> 
114 
115<#function getBookBanner erc> 
116    <#assign response = restClient.get("/c/bookbanners/?filter=bookId eq '${erc}'&fields=bannerTitle,bannerDescription,showBannerButton,bannerTextButton,bannerUrlButton,bannerUrlImage")!{} /> 
117    <#assign items = response.items![] /> 
118    <#return (items?size > 0)?then(items[0], {}) /> 
119</#function> 
120 
121<#function getThematicCollectionBanner erc> 
122    <#assign response = restClient.get("/c/thematiccollectionbanners/?filter=thematicColectionId eq '${erc}'&fields=bannerTitle,bannerDescription,showBannerButton,bannerTextButton,bannerUrlButton,bannerUrlImage")!{} /> 
123    <#assign items = response.items![] /> 
124    <#return (items?size > 0)?then(items[0], {}) /> 
125</#function> 
126 
127<style> 
128.hero-banner { 
129  display: flex; 
130  align-items: center; 
131  justify-content: space-between; 
132  gap: 48px; 
133  background: #f5f7fb; 
134  border-radius: 24px; 
135  overflow: hidden; 
136
137 
138.hero-content { 
139  flex: 2; 
140  max-width: 70%; 
141	padding-left: 2rem; 
142
143	 
144.hero-content h3 { 
145  font-size: 1.25rem; 
146
147 
148.hero-content .hero-description { 
149  margin: 0 0 12px; 
150  font-size: 0.75rem; 
151  line-height: 1.6; 
152  color: #4b5563; 
153
154 
155.hero-content a { 
156  font-size: 0.75rem; 
157
158 
159.hero-image { 
160  flex: 1; 
161  display: flex; 
162  justify-content: center; 
163
164 
165.hero-image img { 
166  width: 100%; 
167  aspect-ratio: 2 / 1; 
168  object-fit: cover; 
169  border-radius: 0 0 20px;; 
170  display: block; 
171
172 
173/* Responsive */ 
174@media (max-width: 768px) { 
175  .hero-banner { 
176    flex-direction: column; 
177    padding: 32px 24px; 
178    gap: 32px; 
179    text-align: center; 
180
181 
182  .hero-content { 
183    max-width: 100%; 
184		margin: 0; 
185
186 
187  .hero-image img { 
188    max-width: 100%; 
189    aspect-ratio: 16 / 10; 
190		border-radius:0; 
191
192
193</style> 
194</#if> 
Fecha edición: 2008-05-28
En Vigor
Idiomas disponibles: Inglés
ICS: 81.040.20 - Vidrio para la construcción
CTN: 53408

Anulaciones Normas

Es anulada por

Correcciones Normas

Modifica/corrige a ISO 16933:2007

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.

Button
Preguntas frecuentes ¿Tienes alguna duda sobre nuestros productos?

Respuesta 2

Desde la web

Libros y normas