Excel Tools

Overview

Provides the following custom smart services and functions for handling data in Excel.

Key Features & Functionality

Smart Services included are:

  • Merge Excel Documents
  • Import CSV to Database
  • Import Excel to Database
  • Load CSV to Database
  • Convert HTML to CSV  
  • Convert Excel to CSV
  • Encrypt Excel with Password

Functions included are:

  • Read Excel File Paged
  • Read Excel Cell by Name
  • Read Excel Cell by Number
  • Query Appian Logs
  • Export Datasubset to Base64
  • Validate Document Headers
Anonymous
Parents
  • @Agustinc - I took a closer look at the error and I agree with Mike.

    The function that you are using is reading an Excel file, loading the content of a sheet into memory in the application server and converting this content into a dictionary that is then returned by the function. All of this processing and data transformation is handled by the application using heap memory.

    Depending on the size of the spreadsheet, this is known to consume a lot of memory and in some cases, lead to a error when running out of memory. However, this does not indicate a defect.

    I am not familiar with your use case but in general, I recommend against loading large amounts of data in Appian processes or expressions. The pattern I have used successfully in the past is to load the data from a spreadsheet directly into a database table - using the plugin Import CSV to Database - and then process this data in small batches. This prevents spikes in memory.

    I hope this helps.

Comment
  • @Agustinc - I took a closer look at the error and I agree with Mike.

    The function that you are using is reading an Excel file, loading the content of a sheet into memory in the application server and converting this content into a dictionary that is then returned by the function. All of this processing and data transformation is handled by the application using heap memory.

    Depending on the size of the spreadsheet, this is known to consume a lot of memory and in some cases, lead to a error when running out of memory. However, this does not indicate a defect.

    I am not familiar with your use case but in general, I recommend against loading large amounts of data in Appian processes or expressions. The pattern I have used successfully in the past is to load the data from a spreadsheet directly into a database table - using the plugin Import CSV to Database - and then process this data in small batches. This prevents spikes in memory.

    I hope this helps.

Children
No Data