Overview
Built on Apache POI, tuned for Jython
DAXL (Duncan Automation XL Spreadsheet Module) is a purpose-built module for Ignition that brings robust Excel and CSV manipulation into the Jython scripting environment. Built on the industry-standard Apache POI framework, DAXL provides a reliable, structured way to integrate spreadsheet data into your SCADA projects without the boilerplate overhead of manual library management.
Integrating spreadsheets into a live industrial environment requires more than a "save" button. DAXL provides the granular control needed for production-grade scripts:
Native Apache POI Support
Fully compatible with .xlsx and .xls formats. If Apache POI can build it, DAXL can handle it — from multi-sheet workbooks to specific cell formatting.
Structured Jython Toolset
DAXL adds a dedicated suite of functions to the system.daxl scope, keeping scripts readable, maintainable, and easy for other integrators to follow.
Bidirectional Data Translation
From spreadsheet to SCADA: parse complex workbooks and map data directly into Ignition datasets for Perspective, Vision, or SQL updates. From SCADA to spreadsheet: extract tag, database, or UI component data into professional-grade workbooks for stakeholders.
Environment Compatibility
Designed to function across the Gateway, Designer, and Client scopes, so reporting and data-entry logic works exactly where you need it.
Function Reference
The system.daxl toolset
Workbook Tools
- system.daxl.workbook.uploadWorkbook
- system.daxl.workbook.downloadWorkbook
- system.daxl.workbook.openWorkbook
- system.daxl.workbook.saveWorkbook
- system.daxl.workbook.newWorkbook
Sheet Tools
- system.daxl.sheet.getSheetCount
- system.daxl.sheet.getSheetNames
- system.daxl.sheet.appendSheet
- system.daxl.sheet.insertSheet
- system.daxl.sheet.copySheet
- system.daxl.sheet.moveSheet
- system.daxl.sheet.renameSheet
- system.daxl.sheet.deleteSheet
- system.daxl.sheet.getRow
- system.daxl.sheet.insertRow
- system.daxl.sheet.setColumnSize
- system.daxl.sheet.autoColumnSize
- system.daxl.sheet.setRowSize
- system.daxl.sheet.autoRowSize
- system.daxl.sheet.shiftRows
- system.daxl.sheet.setZoom
- system.daxl.sheet.setFreezePane
- system.daxl.sheet.clearFreezePane
Dataset Tools
- system.daxl.dataset.datasetToSheet
- system.daxl.dataset.datasetFromSheet
- system.daxl.dataset.appendDataset
Cell Tools
- system.daxl.cell.getCellValue
- system.daxl.cell.setCellValue
- system.daxl.cell.setCellType
- system.daxl.cell.setMergeRegion
- system.daxl.cell.clearMergeRegion
- system.daxl.cell.setCellFormula
- system.daxl.cell.getCellFormula
- system.daxl.cell.setDateFormat
- system.daxl.cell.insertImage
Style Tools
- system.daxl.style.clearAllStylesSheet
- system.daxl.style.clearAllStylesRange
- system.daxl.style.clearAllStylesCell
- system.daxl.style.setCellFont
- system.daxl.style.setCellBorder
- system.daxl.style.setCellBackgroundColor
- system.daxl.style.setRangeFont
- system.daxl.style.setRangeBorder
- system.daxl.style.setRangeBackgroundColor
Why DAXL
Engineered for reliability
Don't waste billable hours debugging raw Java file streams or managing external .jar files. DAXL provides a stable, supported framework that lets you focus on the logic of your application rather than the mechanics of the file format.
Feedback
What clients are saying
One of the brightest persons I know. A real asset to a project.
Adept at writing and debugging machine code. Good to work with.