Skip to content

Conversation

@juhikumarimodi6
Copy link
Contributor

PR Description:

Pull Request Checklist

Overview

  • I have read and understood the CONTRIBUTING.md guidelines
  • [x]] My pull request has a descriptive title that accurately reflects the changes
  • I've included only files relevant to the changes described in the PR title and description
  • I've created a new branch in my forked repository for this contribution

Code Quality

  • My code is relevant to ServiceNow developers
  • My code snippets expand meaningfully on official ServiceNow documentation (if applicable)
  • I've disclosed use of ES2021 features (if applicable)
  • I've tested my code snippets in a ServiceNow environment (where possible)

Repository Structure Compliance

  • I've placed my code snippet(s) in one of the required top-level categories:
    • Core ServiceNow APIs/
    • Server-Side Components/
    • Client-Side Components/
    • Modern Development/
    • Integration/
    • Specialized Areas/
  • I've used appropriate sub-categories within the top-level categories
  • Each code snippet has its own folder with a descriptive name

Documentation

  • I've included a README.md file for each code snippet
  • The README.md includes:
    • Description of the code snippet functionality
    • Usage instructions or examples
    • Any prerequisites or dependencies
    • (Optional) Screenshots or diagrams if helpful

Restrictions

  • My PR does not include XML exports of ServiceNow records
  • My PR does not contain sensitive information (passwords, API keys, tokens)
  • My PR does not include changes that fall outside the described scope

@WillemZeiler WillemZeiler self-assigned this Oct 3, 2025
@rohi-v
Copy link
Contributor

rohi-v commented Oct 3, 2025

@WillemZeiler

ServiceNowDevProgram/ActionPack#37

#1756

You can take the other one too which is similar to this

@WillemZeiler
Copy link
Contributor

Thank you for your submission. Can you add more information in the description? From your code and the title it now seems you are calculating the difference between two dates. There is already a function available "GlideDateTime - subtract(GlideDateTime start, GlideDateTime end)" to do this, documented in the docs here:
https://www.servicenow.com/docs/bundle/zurich-api-reference/page/app-store/dev_portal/API_reference/GlideDateTime/concept/c_GlideDateTimeAPI.html

It returns a GlideDuration -> Duration difference between the two specified dates.

Example:
var gdt1 = new GlideDateTime("2011-08-28 09:00:00");
var gdt2 = new GlideDateTime("2011-08-31 08:00:00");

var dur = GlideDateTime.subtract(gdt1, gdt2); // Difference between gdt1 and gdt2
gs.info(dur.getDisplayValue());

Output:
2 Days 23 Hours

I am closing this PR for now.

@juhikumarimodi6
Copy link
Contributor Author

Description

This function calculates the difference between two dates and returns the result in calendar components:

  • Years
  • Months
  • Days

While GlideDateTime.subtract() returns a GlideDuration object (e.g., 2 Days 23 Hours), it does not provide a breakdown in calendar units like years, months, and days.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants