Skip to content

Conversation

@Emmynem
Copy link

@Emmynem Emmynem commented Oct 4, 2025

PR Description:

Summary

This PR adds a set of date utility functions for use in ServiceNow Script Includes, Business Rules, and Client Scripts.
The helpers provide consistent, reusable formatting for dates and timestamps.

Added Functions

  • getTodayISO() → Returns today's date in YYYY-MM-DD format
  • getTodayReadable() → Returns today's date in human-readable form (e.g., Sat Oct 04 2025)
  • getCurrentYear() → Returns the current year as a number
  • formatUnixTimestamp(unixSeconds) → Converts UNIX timestamp to { fullDateTime, date, time }
  • formatDateTime(jsDate) → Converts JS Date/string into "YYYY-MM-DD HH:mm:ss"

Why

Working with dates in ServiceNow often requires repeated formatting. These helpers simplify formatting for logs, audit fields, and UI messages.

Example Usage

gs.info(getTodayISO());          // "2025-10-04"
gs.info(getTodayReadable());     // "Sat Oct 04 2025"
gs.info(getCurrentYear());       // 2025
gs.info(formatUnixTimestamp(1696425600));
// { fullDateTime: "Sun Oct 04 2025 at 12:00:00 AM", date: "Sun Oct 04 2025", time: "12:00:00 AM" }

Pull Request Checklist

Overview

  • I have read and understood the CONTRIBUTING.md guidelines
  • 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

@am-shakeel am-shakeel self-assigned this Oct 4, 2025
Copy link
Contributor

@am-shakeel am-shakeel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your submission. It appears that this pull request contains more files than described in the title. Please review and update the pull request to either remove the extra/unintended files or to update the description to be more comprehensive. Ensure your contributions are meaningful and adhere to the project’s standards. You can create a new branch on your forked repository to avoid accidental inclusions of new commits in the future. Closing this for now. Once you make additional changes, feel free to re-open this Pull Request or create a new one.

@am-shakeel am-shakeel closed this Oct 4, 2025
@Emmynem Emmynem deleted the emmynem-changes branch October 4, 2025 17:40
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.

2 participants