The CreatorCon Call for Content is officially open! Get started here.

How to change date format to Month DD, YYYY

kris29
Tera Contributor

Hi,

How to change date format from YYYY-MM-DD to Month DD, YYYY (for instance May 07, 2021)?

find_real_file.png

script include function

        getEmployeeDate: function() {
        var grHRProfile= new GlideRecord('sn_hr_core_profile');
        grHRProfile.addQuery('user', gs.getUserID());
        grHRProfile.query();

        if (grHRProfile.next()) {
            var hrProfileData = {
                employment_end_date: grHRProfile.getValue('employment_end_date'),
                probation_end_date: grHRProfile.getValue('probation_end_date')
            }
            return JSON.stringify(hrProfileData);
        }

 

I found similar solution but it's implemented in calculated value
find_real_file.png

1 ACCEPTED SOLUTION

Hi Try this

getEmployeeDate: function() {
        var grHRProfile = new GlideRecord('sn_hr_core_profile');
        grHRProfile.addQuery('user', gs.getUserID());
        grHRProfile.query();
        if (grHRProfile.next()) {
        var gdt = new GlideDate();
        gdt.setDisplayValue(grHRProfile.getValue('employment_end_date'));
        var endDate = gdt.getByFormat("MMMM dd,YYYY");

        var gdt1 = new GlideDate();
        gdt1.setDisplayValue(grHRProfile.getValue('probation_end_date'));
        var probDate = gdt1.getByFormat("MMMM dd,YYYY");     
        
            var hrProfileData = {
                employment_end_date: endDate,
                probation_end_date: probDate,
            };

            return JSON.stringify(hrProfileData);
        }

Thank you
Prasad

View solution in original post

27 REPLIES 27

Hi @Prasad Pagar , sorry for delay with my reply

I did as you mentioned but it doesn't work.


endDate and probDate are empty

 

getEmployeeDate: function() {
        var grHRProfile = new GlideRecord('sn_hr_core_profile');
        grHRProfile.addQuery('user', gs.getUserID());
        grHRProfile.query();

        var gdt = new GlideDate();
        gdt.setDisplayValue(grHRProfile.getValue('employment_end_date'));
        var endDate = gdt.getByFormat("MMMM dd,YYYY");

        var gdt1 = new GlideDate();
        gdt1.setDisplayValue(grHRProfile.getValue('probation_end_date'));
        var probDate = gdt1.getByFormat("MMMM dd,YYYY");     

        if (grHRProfile.next()) {
            var hrProfileData = {
                employment_end_date: endDate,
                probation_end_date: probDate,
            };

            return JSON.stringify(hrProfileData);
        }

Hi Try this

getEmployeeDate: function() {
        var grHRProfile = new GlideRecord('sn_hr_core_profile');
        grHRProfile.addQuery('user', gs.getUserID());
        grHRProfile.query();
        if (grHRProfile.next()) {
        var gdt = new GlideDate();
        gdt.setDisplayValue(grHRProfile.getValue('employment_end_date'));
        var endDate = gdt.getByFormat("MMMM dd,YYYY");

        var gdt1 = new GlideDate();
        gdt1.setDisplayValue(grHRProfile.getValue('probation_end_date'));
        var probDate = gdt1.getByFormat("MMMM dd,YYYY");     
        
            var hrProfileData = {
                employment_end_date: endDate,
                probation_end_date: probDate,
            };

            return JSON.stringify(hrProfileData);
        }

Thank you
Prasad

I have tested this and working fine on PDI.

Try once and let me know if it doesn't work.

Thank you
Prasad

works fine, many thanks @Prasad Pagar 

find_real_file.png

but after I changed date format I've faced another issue 🙂

One of those date values should be updated via record producer in field HR profile after submitting

 

updated field should be in format
find_real_file.png

How to modify updating script?

 

updateEmplDate: function(producer, current) {
        var employee = producer.user;
        var date = producer.employment_date;

        var isRecordExist = new GlideRecord('sn_hr_core_profile');
        if (isRecordExist.get('user', employee)) {
            isRecordExist.employment_date = date;
            isRecordExist.update();
            current.setAbortAction(true);
        }

Hi Kris,

Can you please show me your complete script and where you using this?

So you mean to say you want to convert from MMMM dd, YYYY to YYYY-MM-dd

Then use this

updateEmplDate: function(producer, current) {
        var employee = producer.user;
        var date = producer.employment_date;
        var gdt = new GlideDate();
        gdt.setDisplayValue(producer.employment_date);
        var endDate = gdt.getByFormat("yyyy-MM-dd");
        var isRecordExist = new GlideRecord('sn_hr_core_profile');
        if (isRecordExist.get('user', employee)) {
            isRecordExist.employment_date = endDate;
            isRecordExist.update();
            current.setAbortAction(true);
        }

Thank you
Prasad