@gamariverib/mercados-pecuarios-libs-excel-db-files
v0.2.0
Published
Biblioteca de clases para la creación y manipulación de los archivos de bases de datos en Excel
Downloads
33
Readme
excel-db-files
Biblioteca de clases para la creación y manipulación de los archivos de bases de datos en Excel.
Esta biblioteca proporciona un conjunto de clases orientadas a objetos para construir y manipular archivos de Excel (.xlsx) de una manera estructurada.
Instalación
npm install @gamariverib/mercados-pecuarios-libs-excel-db-filesUso Básico
La biblioteca ahora se centra en dos clases principales: Workbook y Worksheet.
Crear un nuevo Workbook y añadir Worksheets
Puedes crear un libro de trabajo y añadirle hojas de cálculo de forma fluida.
import { Workbook, Worksheet } from '@gamariverib/mercados-pecuarios-libs-excel-db-files';
import { writeFile } from 'xlsx';
// 1. Crear un nuevo Workbook
const workbook = new Workbook('MiLibroDeTrabajo');
// 2. Crear y configurar una Worksheet
const worksheet1 = new Worksheet('Primera Hoja');
worksheet1
.addMetadata('Author', 'Gemini')
.addGlobalTag('Project', 'Modernización')
.setHeader(['ID', 'Nombre', 'Valor'])
.addRow([1, 'Producto A', 100])
.addRow([2, 'Producto B', 200]);
// 3. Añadir la worksheet al workbook
workbook.addWorksheet(worksheet1);
// 4. (Opcional) Convertir a un objeto JSON para serialización
const json = workbook.toJSON();
console.log(JSON.stringify(json, null, 2));
// Para generar el archivo .xlsx, necesitarás una lógica de conversión
// que tome el `IWorkbookData` de `workbook.toJSON()` y lo convierta
// a un objeto `WorkBook` de la librería `xlsx`.
// (Esta parte de la conversión no está actualmente en la API pública de la librería)
Cargar desde un JSON
Puedes crear una instancia de un Workbook a partir de una estructura de datos JSON existente.
import { Workbook, IWorkbookData } from '@gamariverib/mercados-pecuarios-libs-excel-db-files';
const data: IWorkbookData = {
name: 'LibroDesdeJSON',
worksheets: [
{
name: 'Hoja1',
metadata: { CreadoPor: 'Test' },
globalTags: {},
data: [
['Col1', 'Col2'],
['a', 'b'],
],
},
],
};
const workbook = Workbook.fromJSON(data);
console.log(workbook.name); // "LibroDesdeJSON"
console.log(workbook.worksheets[0].name); // "Hoja1"API
Clase Worksheet
constructor(name: string, data?: Partial<IWorksheetData>)addRow(row: any[], atTop?: boolean): thissetHeader(headers: string[]): thisaddMetadata(key: string, value: any): thisaddGlobalTag(key: string, value: any): thistoJSON(): IWorksheetDatastatic fromJSON(data: IWorksheetData): Worksheet
Clase Workbook
constructor(name: string)addWorksheet(worksheet: Worksheet): thistoJSON(): IWorkbookDatastatic fromJSON(data: IWorkbookData): Workbook
