Skip to content

Commit b7f46cd

Browse files
Create General HR Case Transfer (#43)
* Create General HR Case Transfer * Create Prompts for "End Date" is greater than the "Start Date"
1 parent fc3a0dc commit b7f46cd

2 files changed

Lines changed: 78 additions & 0 deletions

File tree

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
To implement logic that ensures the "End Date" is greater than the "Start Date" in ServiceNow, you can create a validation using a Client Script or Business Rule, depending on where the validation needs to occur (on the form or when the record is saved).
2+
3+
Example 1: Client-Side Validation (Client Script)
4+
5+
Here’s an example of a prompt you can use to generate the necessary code in ServiceNow for validating that the "End Date" is greater than the "Start Date":
6+
7+
Prompt:
8+
9+
"Generate a client script for a form in ServiceNow that ensures the 'End Date' field is greater than the 'Start Date' field and shows an error message if the validation fails."
10+
11+
Generated Response (Client Script Code):
12+
13+
// Client Script (Type: onSubmit or onChange)
14+
function onSubmit() {
15+
var startDate = g_form.getValue('start_date'); // Replace 'start_date' with your field name
16+
var endDate = g_form.getValue('end_date'); // Replace 'end_date' with your field name
17+
18+
// Convert the dates to Date objects
19+
var start = new Date(startDate);
20+
var end = new Date(endDate);
21+
22+
// Validate that the End Date is greater than the Start Date
23+
if (end <= start) {
24+
g_form.showFieldMsg('end_date', 'End Date must be greater than Start Date', 'error'); // Show error message
25+
return false; // Prevent form submission
26+
}
27+
28+
return true; // Allow form submission if validation passes
29+
}
30+
31+
Explanation:
32+
33+
onSubmit Client Script: This script runs when the user submits the form. It ensures that the "End Date" is greater than the "Start Date."
34+
35+
g_form.getValue(): Retrieves the values of the "Start Date" and "End Date" fields.
36+
37+
Date comparison: The script converts the field values into Date objects and checks if the "End Date" is less than or equal to the "Start Date."
38+
39+
g_form.showFieldMsg(): If the validation fails, an error message is displayed next to the "End Date" field, and form submission is prevented.
40+
41+
42+
43+
---
44+
45+
Example 2: Server-Side Validation (Business Rule)
46+
47+
If you want to enforce the validation on the server side, you can use a Business Rule.
48+
49+
Prompt:
50+
51+
"Generate a Business Rule for ServiceNow that validates if the 'End Date' field is greater than the 'Start Date' field before allowing the record to be saved."
52+
53+
Generated Response (Business Rule Code):
54+
55+
// Business Rule (Type: Before Insert/Update)
56+
if (current.end_date && current.start_date) {
57+
var startDate = new GlideDateTime(current.start_date);
58+
var endDate = new GlideDateTime(current.end_date);
59+
60+
// Check if End Date is greater than Start Date
61+
if (endDate.getNumericValue() <= startDate.getNumericValue()) {
62+
gs.addErrorMessage('End Date must be greater than Start Date.');
63+
current.setAbortAction(true); // Prevents the record from being saved
64+
}
65+
}
66+
67+
Explanation:
68+
69+
Before Insert/Update Business Rule: This rule runs before the record is inserted or updated in the database, ensuring that the "End Date" is greater than the "Start Date."
70+
71+
GlideDateTime: Used to compare dates in ServiceNow.
72+
73+
current.setAbortAction(true): Stops the record from being saved if the validation fails.
74+
75+
gs.addErrorMessage(): Displays an error message to the user.

Prompts/General HR Case Transfer

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Prompt: "Transfer the HR case for employee leave balance inquiry to the Benefits team."
2+
3+
Generated Response: "The HR case for the employee leave balance inquiry has been transferred to the Benefits team".

0 commit comments

Comments
 (0)