How is your experience with the OutSystems Community?
AdvancedExcel

AdvancedExcel (ODC)

Stable version 1.0.5 (Compatible with ODC)
Uploaded on 4 Nov (8 days ago) by Meivcore Industry Solutions
AdvancedExcel

AdvancedExcel (ODC)

Documentation
1.0.5

Advanced Excel lets ODC apps create, read, and manipulate `.xlsx` workbooks without a

spreadsheet engine of your own. It wraps [EPPlus](https://github.com/EPPlusSoftware/EPPlus) and

exposes all actions and structures of the original O11 `Advanced_Excel` extension,

reshaped for ODC's stateless model - so logic that used to run inside an on-prem extension now

runs the same way in an ODC app.


Once added as a dependency, the actions appear under AdvancedExcel in ODC Studio's Logic tab,

grouped by area: Workbook, Worksheet, Cell, Row/Column, Range, CellFormat, Chart, PivotTable,

Picture, ConditionalFormatting, and Sparkline.


How it works.


ODC has no `Object` data type to hold a live workbook handle between calls, so a

workbook travels as `.xlsx` binary data instead. Every action opens the workbook it's given, does

one thing, and returns the updated bytes — you chain that output into the next action's input:


```

Workbook_Create (NumberOfSheets: 1, FirstSheetName: "Data") → WorkbookData

Cell_Write (WorkbookData, CellName: "A1", CellValue: "Hi") → UpdatedWorkbook

Worksheet_AutofitColumns (UpdatedWorkbook) → UpdatedWorkbook

```


Drop the chain and the change is lost — nothing is cached between calls, which is what makes this

safe on ODC, where consecutive requests can land on different containers. Where you're touching

many cells at once, prefer the batch actions (`Worksheet_WriteCells`, `Cell_WriteRange`,

`Worksheet_ReadRange`, `CellFormat_ApplyToRange`) over calling a per-cell action in a loop — every

call parses and re-serializes the whole file.


Passwords work the same way: only `Workbook_Open` / `Workbook_Open_BinaryData` (decrypt) and

`Workbook_SaveWithPassword` (encrypt) take a `Password` input. Every other action expects plain

bytes, and will fail with a clear message if it's handed an encrypted file directly.