- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-31-2019 09:13 AM
Hello Guys,
I have a UI Action on the change form and I need to display a dialog window with a specific View from a custom table called timeline. I am using GlideModalForm in order to achieve that but the problem is that I need to set the Parent field from timeline to the number from the parent change form. I tried to use the gModalForm.addParm('parent', sysId); but this is not working and the parent stay empty.
Here is the code:
function timelineDialog(){
var sysId;
if (typeof rowSysId == 'undefined')
sysId = gel('sys_uniqueValue').value;
else
sysId = rowSysId;
var gModalForm = new GlideModalForm('Timelines record', 'table_name);
gModalForm.setPreference('sysparm_view', 'view_name');
gModalForm.addParm('parent', sysId);
gModalForm.setCompletionCallback(function(action_verb, sys_id, table, displayValue){
if (action_verb == 'sysverb_update'){
reloadWindow(window);
}
});
gModalForm.render();
}
Any help will be appropriated, thank you in advance
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-07-2019 06:02 AM
Guys, this is the solution for that issue:
function timelineDialog() {
ScriptLoader.getScripts('/scripts/classes/GlideModalFormSetWidth.js', function() {
var sysID = g_form.getUniqueValue(); // get the sys_id value from the change request
//Create and open the dialog form
var dialog = new GlideModalForm(new GwtMessage().getMessage("Title to be displayed on the popup message"),'table_name');
dialog.setSize("modal-lg",300);
dialog.setPreference('sys_id','-1'); //-1 to get create new record
dialog.setPreference('sysparm_view', 'name_of_the_view'); //Load 'create' view
dialog.setPreference('sysparm_query','parent='+sysID); //copy the change sys_id to the parent field
dialog.setPreference("sysparm_link_less", "true");
dialog.setPreference('sysparm_view_forced', 'true');
dialog.setPreference('sysparm_clear_stack', 'true');
//Fuction called on feedback submit, to add success message and refresh Knowledge Feedback Task related list
dialog.setCompletionCallback(function(action_verb, sys_id, table, displayValue){
location.reload();
var feedTaskNum = '<a href="/u_moj_timeline.do?sys_id='+sys_id+'&sysparm_view=">' + displayValue +'</a>';
g_form.addInfoMessage( new GwtMessage().getMessage("Successfully created Table Record [name of the table]: {0}",feedTaskNum));
});
//Open the dialog
dialog.render();
});
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-05-2020 05:13 PM
Is there a way of setting more than one value?
Using multiple: dialog.setPreference('sysparm_query','[field_name]='+[value]);
statements doesn't seem to work for populating multiple fields on the modal form.
Any assistance on this would be greatly appreciated!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-05-2020 05:55 PM
I figured this out:
dialog.setPreference('sysparm_query', 'u_incident=' + sysID + '^short_description=' + shortDesc);
this syntax works!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-24-2024 11:49 AM
dialog.setPreference('sysparm_query','parent='+sysID); //copy the change sys_id to the parent field
This line is the key. Adding the value to the query will populate the field in the modal form.