Parent/Child Related list record creation

purdue
Kilo Sage

Hello,

I created a custom ui action for a related list on our scoped app parent table to create a child task.   However nothing is happening.   What am I missing?  Thanks, Chad

 

Screenshot 2026-03-03 at 3.34.41 PM.png

Screenshot 2026-03-03 at 3.36.22 PM.png

1 ACCEPTED SOLUTION

purdue
Kilo Sage

Hey Thanks All for your replies.  I was able to work with one of the other developers to get it working.

var uri = action.getGlideURI();
var path = uri.getFileFromPath() + '';
path = path.substring(0, path.length - 5) + '.do';

uri.set('sys_id', '-1');

path = checkWizard(uri, path);

if (path)
action.setRedirectURL(uri.toString(path));

action.setNoPop(true);

function checkWizard(uri, path) {
var already = uri.get('WIZARD:action');
if (already == 'follow')
return null;

var wizID = new GlideappWizardIntercept(path).get();
if (!wizID)
return path;

uri.set('sysparm_parent', wizID);
uri.deleteParmameter('sysparm_referring_url');
uri.deleteMatchingParameter('sysparm_list_');
uri.deleteMatchingParameter('sysparm_record_');
uri.deleteParmameter('sys_is_list');
uri.deleteParmameter('sys_is_related_list');
uri.deleteParmameter('sys_submitted');
uri.deleteParmameter('sysparm_checked_items');
uri.deleteParmameter('sysparm_ref_list_query');
uri.deleteParmameter('sysparm_current_row');

uri.set('sysparm_referring_url', uri.toString());
uri.deleteMatchingParameter('fancy.');
uri.deleteMatchingParameter('sys_rownum');
uri.deleteMatchingParameter('sysparm_encoded');
uri.deleteMatchingParameter('sysparm_query_encoded');
uri.deleteParmameter('sysparm_refer');

return 'wizard_view.do';
}

View solution in original post

5 REPLIES 5

purdue
Kilo Sage

Hey Thanks All for your replies.  I was able to work with one of the other developers to get it working.

var uri = action.getGlideURI();
var path = uri.getFileFromPath() + '';
path = path.substring(0, path.length - 5) + '.do';

uri.set('sys_id', '-1');

path = checkWizard(uri, path);

if (path)
action.setRedirectURL(uri.toString(path));

action.setNoPop(true);

function checkWizard(uri, path) {
var already = uri.get('WIZARD:action');
if (already == 'follow')
return null;

var wizID = new GlideappWizardIntercept(path).get();
if (!wizID)
return path;

uri.set('sysparm_parent', wizID);
uri.deleteParmameter('sysparm_referring_url');
uri.deleteMatchingParameter('sysparm_list_');
uri.deleteMatchingParameter('sysparm_record_');
uri.deleteParmameter('sys_is_list');
uri.deleteParmameter('sys_is_related_list');
uri.deleteParmameter('sys_submitted');
uri.deleteParmameter('sysparm_checked_items');
uri.deleteParmameter('sysparm_ref_list_query');
uri.deleteParmameter('sysparm_current_row');

uri.set('sysparm_referring_url', uri.toString());
uri.deleteMatchingParameter('fancy.');
uri.deleteMatchingParameter('sys_rownum');
uri.deleteMatchingParameter('sysparm_encoded');
uri.deleteMatchingParameter('sysparm_query_encoded');
uri.deleteParmameter('sysparm_refer');

return 'wizard_view.do';
}