Excel Date Reading Issue: Appian Interpreting "2026-07-17" as Mathematical Expression Instead of Date String

Hello,

I'm facing a challenging issue when reading dates from Excel files using readexcelsheetpaging(). The problem occurs when Excel cells contain dates in custom format that appear as values like "2026-07-17".

The Problem: When Appian reads these date values, it interprets 2026-07-17 as a mathematical expression (2026 - 07 - 17 = 2002) instead of treating it as a date string. This happens before I can apply todate() or text() functions.

Context:

  • Excel cells contain dates with custom formatting (cannot be changed on Excel side)

  • Dates appear as format like "2026-07-17" when read by Appian

  • Need to convert these to proper Appian date values

Current Code:

a!localVariables(
  local!document: ri!document,
  local!sheetNumber: ri!sheetNumber,
  local!startIndex: ri!startIndex,
  
  local!tempResult: readexcelsheetpaging(
    excelDocument: local!document,
    sheetNumber: local!sheetNumber,
    pagingInfo: a!pagingInfo(
      startIndex: local!startIndex,
      batchSize: ri!batchSize
    ),
  ).data,
  
  local!result: a!forEach(
    items: remove(local!tempResult.values, 1),
    expression: a!forEach(
      items: fv!item,
      expression: if(fv!item = "NULL", null, fv!item)
    )
  ),
  
  a!forEach(
    items: local!result,
    expression: a!localVariables(
      local!compliance: rule!getComplianceByID(id: fv!item[12]),
      'type!{urn:com:appian:types:AD}AD_ENGAGEMENT'(
        id: null,
        fiscalYearEndDate: todate(totext(fv!item[11])),
        compliance: local!compliance,
        complianceDueDate: todate(fv!item[13]),
        inputDate: todate(fv!item[14]),
        reviewDate: todate(fv!item[15]),
        companyDeliveryDate: fv!item[18],
        electronicSubmissionDate: todate(fv!item[21]),
        receiptProcessingDate: fv!item[22],
        createdBy: "ADMIN",
        createdOn: now(),
        modifiedBy: "ADMIN",
        modifiedOn: now()
      )
    )
  )
)

What I've Tried:

  • Using todate(fv!item[index]) directly → returns null/empty

  • Using todate(totext(fv!item[index])) → still issues with mathematical interpretation

  • Various combinations of text() and todate() functions

Expected Result: Convert Excel date values like "2026-07-17" to proper Appian date objects.

Question: How can I properly handle Excel dates in custom format to prevent Appian from interpreting them as mathematical expressions? Is there a way to force Appian to treat these values as strings before applying date conversion functions?

Any insights or alternative approaches would be greatly appreciated!

Thanks in advance for your help.

  Discussion posts and replies are publicly visible

Parents Reply
  • 0
    Certified Lead Developer
    in reply to Alessandro Tolli

    Ensure Excel date columns are formatted as Text before import.
    If you get only numbers like 2008, you cannot reconstruct the original date in Appian.

    Change Excel Column Format to Text
    1)Select the column or cells you want to convert.
    2)Right-click on the selected area, then choose Format Cells...
    3)In the Format Cells dialog box, go to the Number tab.
    4)Select Text as the category.
    5)Click OK.

    Now, any new input in those cells will be treated as text strings.

Children