BS ISO 10816-21:2015
Mechanical vibration. Evaluation of machine vibration by measurements on non-rotating parts. Horizontal axis wind turbines with gearbox
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> product.productId [in template "34352066712900#33336#null" at line 12, column 22]
----
Tip: It's the step after the last dot that caused this error, not those before it.
----
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 productId = product.productId [in template "34352066712900#33336#null" at line 12, column 1]
----
1<#-- Variables -->
2<#assign channelResponse = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels?filter=name eq 'Aenor Tienda'")>
3<#assign channel = channelResponse.items[0]>
4<#assign channelId = channel.id>
5<#assign product = getProduct(channelId, CPDefinition_cProductId.getData()) />
6
7<#-- Product data -->
8<#assign displayDateProduct = CPDefinition_displayDate.getData() />
9<#assign productId = product.productId />
10<#assign cpDefinitionId = product.id />
11
12<#assign categoriesProduct = getProductCategories(channelId, productId) />
13<#assign hasProductCategoriaTipoEntidadLibro = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'libro') />
14<#assign hasProductCategoriaTipoEntidadNorma = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'norma') />
15<#assign hasProductCategoriaTipoEntidadColeccionTematica = isVocabularyNameIntoCategories(categoriesProduct, 'entity type', 'coleccion tematica') />
16<#assign bookInfoProduct = getBookInfoProduct(cpDefinitionId) />
17
18
19
20<#-- Functions -->
21<#function getProduct channelId productId>
22 <#return restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/${channelId}/products/${productId}")>
23</#function>
24
25
26<#function getBookInfoProduct cpDefinitionId>
27 <#assign response = restClient.get("/c/bookinfos/?filter=r_bookInfo_CPDefinitionId eq '${cpDefinitionId}'")!{} />
28 <#assign items = response.items![] />
29 <#return (items?size > 0)?then(items[0], {}) />
30</#function>
31
32
33<#function getProductCategories channelId productId>
34 <#return restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/${channelId}/products/${productId}/categories?sort=vocabulary").items>
35</#function>
36
37
38<#function isVocabularyNameIntoCategories categories vocabulary name>
39 <#assign found = false />
40
41 <#if categories?has_content && vocabulary?has_content && name?has_content>
42
43 <#assign vocabNorm = normalize(vocabulary) />
44 <#assign nameNorm = normalize(name) />
45
46 <#list categories as category>
47 <#if !found>
48 <#assign catVocabNorm = normalize(category.vocabulary) />
49 <#assign catNameNorm = normalize(category.name) />
50
51 <#if catVocabNorm == vocabNorm && catNameNorm == nameNorm>
52 <#assign found = true />
53 </#if>
54 </#if>
55 </#list>
56
57 </#if>
58
59 <#return found>
60</#function>
61
62
63<#function normalize text onlyAccents = false>
64 <#-- proteger null -->
65 <#if !text?has_content>
66 <#return "">
67 </#if>
68
69 <#assign t = text />
70
71 <#-- quitar acentos -->
72 <#assign t = t
73 ?replace("á","a")?replace("é","e")?replace("í","i")
74 ?replace("ó","o")?replace("ú","u")?replace("ü","u")
75 ?replace("ñ","n")
76 ?replace("Á","A")?replace("É","E")?replace("Í","I")
77 ?replace("Ó","O")?replace("Ú","U")?replace("Ü","U")
78 ?replace("Ñ","N")
79 />
80
81 <#-- si NO es solo acentos, normalización completa -->
82 <#if !onlyAccents>
83 <#assign t = t?lower_case />
84 <#assign t = t?trim />
85 <#assign t = t?replace("\\s+", " ", "r") />
86 </#if>
87
88 <#return t>
89</#function>
90
91
92
93<#-- HTML -->
94<#if hasProductCategoriaTipoEntidadLibro>
95 <div id="ecom-libro-detail" class="ecom-libro">
96 <div class="content-area">
97 <p class="book-description">${product.description}</p>
98 </div>
99 </div>
100</#if>
| Fecha edición: |
2025-05-30
Anulada
|
|---|---|
| Fecha cancelación: | 2025-05-30 |
| Idiomas disponibles: | Inglés |
| ICS: | |
| CTN: | |
|
Equivalencia Internacional |
Idéntica ISO 10816-21:2015 |
|
Reemplazo Normas |
Es reemplazada por BS ISO 20816-21:2025 |










