Find your people. Pick a challenge. Ship something real. The CreatorCon Hackathon is coming to the Community Pavilion for one epic night. Every skill level, every role welcome. Join us on May 5th and learn more here.

I need to push unique values into single line text

Mahidhar_1995
Tera Contributor

I have two fields (Both are list collectors)

Epic Account Type

Domain

 

Based on epic account type and domain we need to push the value to citrix icons

Mahidhar_1995_0-1708628436031.png

 

I have used 2 client scripts upon onchange of Epic account type and Domain, If we choose multiple domains US & DEVAD. it is pushing both values so I am getting duplicates

Onchange of Epic Account Type

function onChange(control, oldValue, newValue, isLoading) {
    if (isLoading) {
        return;
    }
    var domain = g_form.getDisplayValue('domain').split(',');

    if (newValue == '' || domain == '') {
        g_form.clearValue('citrix_icons');
        return;
    }

    var data_map = {
        "US": {
            "Epic Hyperspace Admins": "TS- EPIC Hyperspace Admins",
            "Epic Hyperdrive": "TS-Epic Hyperdrive",
            "Epic Text Access": "TS- Reflection ICON",
            "Epic Hyperspace TST Admins": ""
        },
        "DEVAD": {
            "Epic Hyperspace Admins": "TS- EPIC Hyperspace Admins",
            "Epic Hyperdrive": "",
            "Epic Text Access": "TS- Reflection ICON",
            "Epic Hyperspace TST Admins": "TS- EPIC Hyperspace NonPRD"
        }

    };

    var out_value = [];
    var acc_type = g_form.getDisplayValue('epic_account_type').split(',');

    for (var i = 0; i < domain.length; i++) {
        for (var j = 0; j < acc_type.length; j++) {
            var t_value = data_map[domain[i].trim()][acc_type[j].trim()];
            if (t_value) out_value.push(t_value);
        }
    }
    g_form.setValue('citrix_icons', out_value.join(', '));
    // if(out_value.length == 2) out_value.push('TS-Epic Hyperspace Admins');
   
    //g_form.setValue('citrix_icons', out_value.join(', '));

}
Onchange of Domain
 
function onChange(control, oldValue, newValue, isLoading) {
    if (isLoading) {
        return;
    }
    var acc_type = g_form.getDisplayValue('epic_account_type').split(',');


    if (newValue == '' || acc_type == '') {
        g_form.clearValue('citrix_icons');
        return;
    }

    var data_map = {
        "US": {
            "Epic Hyperspace Admins""TS- EPIC Hyperspace Admins",
            "Epic Hyperdrive""TS-Epic Hyperdrive",
            "Epic Text Access""TS- Reflection ICON",
            "Epic Hyperspace TST Admins"""
        },
        "DEVAD": {
            "Epic Hyperspace Admins""TS- EPIC Hyperspace Admins",
            "Epic Hyperdrive""",
            "Epic Text Access""TS- Reflection ICON",
            "Epic Hyperspace TST Admins""TS- EPIC Hyperspace NonPRD"
        }

    };

    var out_value = [];
    var domain = g_form.getDisplayValue('domain').split(',');

    for (var i = 0; i < domain.length; i++) {
        for (var j = 0; j < acc_type.length; j++) {
            var t_value = data_map[domain[i].trim()][acc_type[j].trim()];
            if (t_value) out_value.push(t_value);
        }
    }
    g_form.setValue('citrix_icons', out_value.join(', '));
    //if(out_value.length == 2) out_value.push(t_value);

    g_form.setValue('citrix_icons', out_value.join(', '));

}
I am getting output as like this
Mahidhar_1995_1-1708628435991.png

 

 



I need to push the unique values no duplicates. Please provide your assistance

1 REPLY 1

Not applicable