Illuminate BI Tool Guide
  • Introduction
  • Example BI Reports
  • What is BI Reporting in Illuminate?
  • Getting Started Using BI with Custom Reports
    • Setup Jaspersoft Studio
    • Prepare Your Data Set
    • Create a Basic Jasper Report
    • Publish My Report to Illuminate
    • Edit Report After Publishing
    • Display Selected Filters on Your Report
  • Get Started Using BI with SQL
    • Access Data Via ODBC Connection
    • Learn the Schema
    • Setup Jaspersoft Studio for SQL
    • Create a Basic Report with SQL
    • Publish My Report (SQL Method)
    • Adding Input Controls
  • Tutorials
    • Tutorials for Free Version ("Community Edition")
      • Tutorial 1: Categorize and Aggregate Your Data
      • Tutorial 2: Using Jasper Report Bands
      • Tutorial 3: Student Roster Report
      • Tutorial 4: Student Roster with SQL
      • Tutorial 5: Summary of Performance
      • Tutorial 6: CELDT Longitudinal Summary
    • Tutorials for Pro Version ("Professional Edition")
      • Tutorial 1: Aggregate and Visualize Your Data
        • Step 1 - Create a Custom Report
        • Step 2 - Download Your Data
        • Step 3 - Create a Data Adapter
        • Step 4 - Duplicate Template. Link Data Adapter
        • Step 5 - Set Class for Numeric Fields
        • Step 6 - Add & Configure Chart
        • Step 7 - Resize Chart. Preview Report.
        • Step 8 - Change Chart Labels
        • Step 9 - Set Chart Colors
        • Step 10 - Repeat for Other Data Points
        • Step 11- Install Your Report
      • Tutorial 2: Using Report Bands
        • Step 1 - Duplicate Report from Tutorial 1
        • Step 2: Create Your Group
        • Step 3: Create a Sort Field
        • Step 4 - Copy & Paste Your Chart
        • Step 5 - Set Reset Type and Evaluation Time
        • Step 6 - Change the Category Level
        • Step 7 - Add Site Name Field
        • Step 8 - Grade Level Sorting
    • CrossTabs Tutorial - Create, Format, and Style a CrossTab
      • Step 1 - Create Your CrossTab
      • Step 2 - Size and Position Your CrossTab
      • Step 3 - Format and Style Your CrossTab
  • Homework 1 - BI Workshop Follow Up
  • BI Tool Cheat Sheet
  • JasperSoft Studio Tips, Tricks, & FAQs
    • Basics of Writing Expressions in JSS
    • Rounding Decimals
    • Working with Dates in JSS
    • Conditional Styling in JasperSoft
    • Custom "No Data" Message
    • Create Multiple Summary Bands
    • Create Hyperlinks or "Tabs" to Connect Sets of Reports
    • JSS Community Edition
      • Adding Data Labels to Your Chart
      • Customizing Colors in Your Charts
    • JSS Professional Edition Only
      • HTML5 Charts
        • Data Labels: Enable, Customize, & Round Data Labels
        • Tooltip: Customizing the Tooltip
        • Keeping Colors Consistent in HTML5 Charts
        • Adding Drill Down to a Chart
        • Prevent Tooltip from Being Cut Off
        • Sort the Bars in Your Stack - Ordering the Series in Your Chart
        • Passing Parameters/Data Between Datasets with HTML5 Charts
        • Add Plot Lines to your Chart
        • Add Colored Zones or Plot Bands to Your Chart
        • Change Bar Colors Based on Bar Value
    • Rolling Over Your BI Tool Reports
    • "Current" Columns in Custom Reporting - To Use or Not to Use?
  • Report Design Best Practices
  • Installing the Illuminate Font Set
  • Report Templates
    • Blank Templates - Report Starters
    • Using the Report Templates
    • Multiple Measures Site Comparison Report (Tutorial 5)
    • EL Reclassification Report
    • EL Reclassification Report v2
    • RFEP Monitoring Report
    • Student Rubric Template
    • Michigan Report Templates
      • PSAT and SAT College Readiness Report
  • BI Tool User Community
Powered by GitBook
On this page

Was this helpful?

  1. JasperSoft Studio Tips, Tricks, & FAQs

Working with Dates in JSS

PreviousRounding DecimalsNextConditional Styling in JasperSoft

Last updated 5 years ago

Was this helpful?

Convert Date in String field to a Real Date Field

When using the BI Tool with custom reports, working with dates can be tricky because all your fields are imported as text fields (aka java.lang.String). Unlike numeric values, you cannot simply change the class of the field. So you have to do a bit of work to transform a date in a String field to a real date value so that you can use the ever useful date calculation functions. It can be tricky to figure it out, but once you know what to do, it doesn't take more than a minute. This should help!

First, you'll need to pull out the year, month, and day of the date using the .substring command.

Then, you have to use the INTEGER_VALUE() command to turn the substring into an integer.

Finally, you use the DATE() command to turn the integers into a real date value.

Set the class of your variable to:

    java.util.Date

This will allow you to do date calculations with your date. All this can be done with a single variable.

See screenshot:

You can copy and paste this formula into your variable expression:

$F{Insert Field Name Here}.equals("")
    ? null
    : DATE(
        INTEGER_VALUE($F{Insert Field Name Here}.substring(6)),
        INTEGER_VALUE($F{Insert Field Name Here}.substring(0,2)),
        INTEGER_VALUE($F{Insert Field Name Here}.substring(3,5))
    )

Now that you have a real date field. You can use functions like YEARS(Date1,Date2) or DAYS(Date1,Date2) to calculate the number of years or days between two days.

HINT: You can use the TODAY() function to dynamically get today's date. That allows you to create a variable that will dynamically calculate things like: Number of Dates/Years Since EL Reclassification Date.

Here is a link that explains how to use the substring function.