sábado, 26 de febrero de 2022

Importando fichero SINLI LIBROS a Microsoft Excel (versión 3) usando lenguaje M

Para mejorar el proceso de importación a través de Power Query podemos hacer uso del lenguaje M. que aumenta las posibilidades que nos ofrece el entorno gráfico.

Por ejemplo, mediante una única instrucción Splitter.SplitTextByPositions, podemos separar todas las columnas que deseemos.



Nota:

Esta instrucción es la misma que utiliza el entorno gráfico, pero solo nos permite indicar una única división.


= Table.SplitColumn(Origen,"Column1",Splitter.SplitTextByPositions({0, 18}, false),{"Column1.1", "Column1.2"})

En el primer caso, se generan gran cantidad de pasos en la importación, en la imagen vemos los pasos para obtener 3 columnas.

Este es el aspecto del editor gráfico.



Utilizando la instrucción enditada en lenguaje M, podemos reducir todos esos pasos a solo uno.


Siendo el resultado una tabla con todos los campos del fichero plano divididos en columnas.



Aquí os dejo la instrucción completa para dividir en columnas el fichero SINLI LIBROS v8 mediante lenguaje M.

= Table.SplitColumn(Origen,"Column1",Splitter.SplitTextByPositions({0, 18, 35, 52, 69, 86, 101, 181, 261, 411, 413, 421, 461, 463, 466, 468, 474, 478, 482, 486, 506, 586, 587, 589, 599, 609, 614, 615, 655, 665, 669, 670, 820, 970, 975, 1125, 1128, 1131, 1137, 1140, 1141, 1156, 1236, 1316, 1352, 1607, 1610, 1660, 1668, 1676, 1875, 3000}, false),{"EAN ", "ISBN Con guiones Facturación ", "ISBN Con guiones Obra completa ", "ISBN Con guiones Tomo ", "ISBN Con guiones Fascículo ", "Referencia ", "Título completo ", "Subtítulo ", "Autor/es Apellidos Nombre ", "País de publicación ", "Editorial Código ISBN completado con ceros a la", "Editorial Nombre ", "Encuadernación ", "Lengua de publicación Código ", "Número de edición ", "Fecha de publicación Mes año ", "Número de páginas ", "Ancho en mm. ", "Alto en mm. ", "Tema Materia CDUmás de una separada ;", "Descriptores palabras clave ", "Situación en catálogo ", "Tipo de producto ", "PVP sin IVA en EUROS sin puntuación", "PV con IVA en EUROS sin puntuación", "Porcentaje de IVA 416... ", "Tipo de precio * Si el tipo de precio es “L” el precio sin IVA será el precio de cesión y el Precio con IVA será el precio de cesión más el IVA correspondiente a él.", "Colección ", "Nº de colección ", "Nº de volumen ", "Imagen de portada y/u otras ** El nombre del fichero a d j u nt o co n la /la s imágenes será el EAN13", "Ilustrador cubierta Apellidos Nombre", "Ilustrador interior Apellidos Nombre", "Nº de ilustraciones en Color ", "Traductor Apellidos Nombre ", "Idioma Original ", "Grosor en milímetros ", "Peso en gramos ", "Audiencia ", "Nivel de lectura ", "Solo para texto: Nivel Infantil- Primaria-Eso Bachillerato-FP- Universitaria", "Solo para texto: Curso. ", "Solo para texto: Asignatura ", "Solo para texto: Comunidad Autónoma", "Resumen ", "Tipo de versión de materia IBIC ", "Tema Materia IBIC más de una separada ;", "Fecha puesta en venta/lanzamiento ", "Fecha disponibilidad de existencias ", "Dirección URL ", "Resumen o sinopsis ampliados"})

No hay comentarios:

Publicar un comentario