Excel Tools

Overview

Provides several smart services and functions for handling data in Excel and CSV formats.

Key Features & Functionality

Smart Services included are:

  • Import CSV to Database
  • Import Excel to Database
  • Merge Excel Documents
  • 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
  • Read Excel By Headers
  • Query Appian Logs
  • Export Datasubset to Base64
  • Validate Document Headers
Anonymous
  • v2.2.19 Release Notes
    • Security Updates
  • Is this plugin compatable with Maria Db for Appian 22.1. Thank you in advance

  • Can i know when is the latest version available for Appian 22+ Versions

  • Hi mike, we're using excel tools plug in but when we're trying use the smart services or functions with a .xls file, we get the following error "OOXML (Office Open XML) file". Can u help us?

  • Hi, While working on 'Import Excel to Database', if I save excel (open excel file and file-> save, appian recognized it and process it but if I just open it but did not File-> Save and upload it, this smart service just ignore/bypass it. Anyone know or seen this issue please? if yes please help. 

  • Hi,

    is there a plan to upgrade the plugin to be compatible with the version 22.1 +.

    Regards

  • It's deprecated, but it's still included and still works, as of the last I checked.

  • Hi

    Using Merge Excel documents has been working very successfully. Now shows an error -

    Merge Excel Documents A part with the name '/docProps/core.xml' already exists : Packages shall not contain equivalent part names and package implementers shall neither create nor recognize packages with equivalent part names. [M1.12].

    Any ideas as to cause and how to overcome this error?

    Regards

  • Hello Mike 

    we are trying to read an excel file but we get this error.

    ERROR com.appiancorp.ps.exceltools.util.ExcelHelperUtils - Zip bomb detected! The file would exceed the max. ratio of compressed file size to the size of the expanded data.
    This may indicate that the file is used to inflate memory usage and thus could pose a security risk.
    You can adjust this limit via ZipSecureFile.setMinInflateRatio() if you need to work with files which exceed this limit.
    Uncompressed size: 3092989, Raw/compressed size: 30929, ratio: 0.010000
    Limits: MIN_INFLATE_RATIO: 0.010000, Entry: xl/styles.xml
    java.io.IOException: Zip bomb detected! The file would exceed the max. ratio of compressed file size to the size of the expanded data.
    This may indicate that the file is used to inflate memory usage and thus could pose a security risk.
    You can adjust this limit via ZipSecureFile.setMinInflateRatio() if you need to work with files which exceed this limit.
    Uncompressed size: 3092989, Raw/compressed size: 30929, ratio: 0.010000
    Limits: MIN_INFLATE_RATIO: 0.010000, Entry: xl/styles.xml

    We get this error using all the 3 function available with the plug in

    • Read Excel File Paged
    • Read Excel Cell by Name
    • Read Excel Cell by Number

    This error occur with the latest apache poi when in the excel file there are many rows/columns with the same content, and in my excel file i have this issue.

    could be possible to set: 

    ZipSecureFile.setMinInflateRatio(0); in oprder to avoid this error or some other fixing.

    Let me know if you need an exemple of my excel to read.

    Thank You

    Gianluca

  • Hi Folks,

    I'm getting below details in Heath Check report for Version 20.4

    Excel Tools (com.appiancorp.ps.exceltools) references private and deprecated Appian APIs

    [private] com.appiancorp.common.xml.XmlBeanSerializer.populateObject(java.lang.Object, org.w3c.dom.Node)
    [private] com.appiancorp.services.ASLIdentity.getIdentity()
    [private] com.appiancorp.type.TypeRef.getId()
    [deprecated] com.appiancorp.services.ServiceContext.getIdentity()
    [deprecated] com.appiancorp.suiteapi.common.ServiceLocator.getContentService(com.appiancorp.services.ServiceContext)
    [deprecated] com.appiancorp.suiteapi.common.ServiceLocator.getGroupService(com.appiancorp.services.ServiceContext)
    [deprecated] com.appiancorp.suiteapi.common.ServiceLocator.getProcessAnalyticsService2(com.appiancorp.services.ServiceContext)
    [deprecated] com.appiancorp.suiteapi.common.ServiceLocator.getProcessDesignService(com.appiancorp.services.ServiceContext)
    [deprecated] com.appiancorp.suiteapi.common.ServiceLocator.getProcessExecutionService(com.appiancorp.services.ServiceContext)
    [deprecated] com.appiancorp.suiteapi.common.ServiceLocator.getTypeService(com.appiancorp.services.ServiceContext)
    [deprecated] com.appiancorp.suiteapi.common.ServiceLocator.getUserService(com.appiancorp.services.ServiceContext)
    [deprecated] com.appiancorp.suiteapi.content.ContentService.getChildren(java.lang.Long, com.appiancorp.suiteapi.content.ContentFilter, java.lang.Integer)
    [deprecated] com.appiancorp.suiteapi.process.GenericTypedVariable.<init>()
    [deprecated] com.appiancorp.suiteapi.process.GenericTypedVariable.setType(java.lang.Long)
    [deprecated] com.appiancorp.suiteapi.process.GenericTypedVariable.setValue(java.lang.Object)
    [deprecated] com.appiancorp.suiteapi.process.analytics2.ProcessReport.copy()

     Can someone please help with the solution / suggestions for resolving this?

    Thanks,

    Aprajita