How to populate Array values in new line

Sironi
Kilo Sage

Hi all,

Some one please help me how to show values in new line and Story number should be clickable .

Expecting result :

RLSE0010000 Test Release 07/18_01 for 2022-12-31 16:26:00

STRY00001: Test Story 1.0 for 07/18_1 Release
Release Notes : Release Note for story Test Story 1.0 for 07/18_1 Release ( story release notes )

STRY00002: Test Story 2.0 for 07/18_1 Release 
Release Notes : Release note for story Test Story 2.0 for 07/18_1 Release ( story release notes )

 

I m getting result wrong 

RLSE0010000 Test Release 07/18_01 for 2022-12-31 16:26:00 STRY00001: Test Story 1.0 for 07/18_1 Release Release Notes :

Release Note for story Test Story 1.0 for 07/18_1 Release 

STRY00002: Test Story 2.0 for 07/18_1 Release Release Notes :

Release note for story Test Story 2.0 for 07/18_1 Release 
var ReleaseKnowledgeArticle = Class.create();
ReleaseKnowledgeArticle.prototype = {
    initialize: function() {},

    CheckStory: function() {
        var arr = [];
        arr.push(current.release.number.toString() + " " + current.release.short_description.toString());

        var results = '';
        var story = new GlideRecord('rm_story');
        story.addQuery('release', current.release);
        story.addEncodedQuery("state=3");
        story.query();
        while (story.next()) {
            arr.push(story.number + ": " + story.short_description);
            arr.push("Release Notes : " + story.u_release_notes.toString());
            results = arr.join("\n");
        }

        var kb = new GlideRecord('kb_knowledge');
        kb.addQuery('source', current.release);
        kb.query();
        if (kb.next()) {
            this._UpdateKB(results);
        }
    },

    _UpdateKB: function(results) {
        var art = new GlideRecord("kb_knowledge");
        art.addQuery("source", current.release);
        art.query();
        if (art.next()) {
            art.text = results;
            art.update();
        }
    },
    type: 'ReleaseKnowledgeArticle'
};

Expecting result :

RLSE0010000 Test Release 07/18_01 for 2022-12-31 16:26:00

STRY00001: Test Story 1.0 for 07/18_1 Release
Release Notes : Release Note for story Test Story 1.0 for 07/18_1 Release 

STRY00002: Test Story 2.0 for 07/18_1 Release 
Release Notes : Release note for story Test Story 2.0 for 07/18_1 Release 

 

 

I m not sure why it was not showing in new line.

14 REPLIES 14

Mohit Kaushik
Mega Sage
Mega Sage

Hi Sironi,

// You need to change the below code:
while (story.next()) {
            arr.push(story.number + ": " + story.short_description);
            arr.push("Release Notes : " + story.u_release_notes.toString());
            results = arr.join("\n"); // remove this line from your code.
        }

// add below code outside of your while loop
for(var i=0;i<arr.length;i++){
results = arr[i] +'\n';
}

 

This should give you the correct output.

 

Please mark this as correct and helpful if it resolved the query or lead you in right direction.

Thanks,
Mohit Kaushik
Community Rising Star 2022

 

Thanks,
Mohit Kaushik
ServiceNow MVP (2023-2025)

not getting total Result. just getting last stored value.

find_real_file.png

kindly help me how to do Story number should be clickable 

Result should be like below .

RLSE0010000 Test Release 07/18_01 for 2022-12-31 16:26:00

STRY00001: Test Story 1.0 for 07/18_1 Release
Release Notes : Release Note for story Test Story 1.0 for 07/18_1 Release 

STRY00002: Test Story 2.0 for 07/18_1 Release 
Release Notes : Release note for story Test Story 2.0 for 07/18_1 Release 

Rahul Talreja
Mega Sage
Mega Sage

Hi Sironi,

Can you please try this.

var ReleaseKnowledgeArticle = Class.create();
ReleaseKnowledgeArticle.prototype = {
    initialize: function() {},

    CheckStory: function() {
        var arr = [];
        arr.push(current.release.number.toString() + " " + current.release.short_description.toString());

        var results = '';
        var story = new GlideRecord('rm_story');
        story.addQuery('release', current.release);
        story.addEncodedQuery("state=3");
        story.query();
        while (story.next()) {
            arr.push(story.number + ": " + story.short_description);
            arr.push("Release Notes : " + story.u_release_notes.toString());
        }
        results= arr.join("\r\n");

        var kb = new GlideRecord('kb_knowledge');
        kb.addQuery('source', current.release);
        kb.query();
        if (kb.next()) {
            this._UpdateKB(results);
        }
    },

    _UpdateKB: function(results) {
        var art = new GlideRecord("kb_knowledge");
        art.addQuery("source", current.release);
        art.query();
        if (art.next()) {
            art.text = results;
            art.update();
        }
    },
    type: 'ReleaseKnowledgeArticle'
};

 

Regards,
Rahul

Please mark my response correct/helpful as applicable!
Thanks and Regards,
Rahul

Hi Rahul,

here is the result with your proposed changes . 

RLSE0010014YR Test Release 07/18_01 for 2022-12-31 16:26:00 STRY0027011: YR Test Story 1.0 for 07/18_1 Release Release Notes :

Release Note for story YR Test Story 1.0 for 07/18_1 Release 

STRY0027012: YR Test Story 2.0 for 07/18_1 Release Release Notes :

Release note for story YR Test Story 2.0 for 07/18_1 Release 

 

Expecting result :

RLSE0010000 Test Release 07/18_01 for 2022-12-31 16:26:00

STRY00001: Test Story 1.0 for 07/18_1 Release
Release Notes : Release Note for story Test Story 1.0 for 07/18_1 Release 

STRY00002: Test Story 2.0 for 07/18_1 Release 
Release Notes : Release note for story Test Story 2.0 for 07/18_1 Release