File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed
Client-Side Components/Catalog Client Script/Reusable GlideAjax Client Script Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change 1+ function onChange ( control , oldValue , newValue , isLoading ) {
2+ if ( isLoading || newValue === '' ) {
3+ return ;
4+ }
5+
6+ // Define parameters dynamically
7+ var tableName = 'sys_user' ; // Change as needed
8+ var keyField = 'sys_id' ; // Change as needed
9+ var fieldsToFetch = 'email' ; // Comma-separated list
10+ var targetField = 'user' ; // Field to populate
11+
12+ var ga = new GlideAjax ( 'DynamicTableQueryUtil' ) ;
13+ ga . addParam ( 'sysparm_name' , 'getTableRow' ) ;
14+ ga . addParam ( 'sysparm_table_name' , tableName ) ;
15+ ga . addParam ( 'sysparm_key_field' , keyField ) ;
16+ ga . addParam ( 'sysparm_key_value' , newValue ) ;
17+ ga . addParam ( 'sysparm_fields' , fieldsToFetch ) ;
18+ ga . getXML ( function ( response ) {
19+ var answer = response . responseXML . documentElement . getAttribute ( "answer" ) ;
20+ if ( ! answer ) {
21+ alert ( 'No response from Script Include' ) ;
22+ return ;
23+ }
24+
25+ var parsedAnswer = JSON . parse ( answer ) ;
26+ if ( parsedAnswer [ fieldsToFetch ] ) {
27+ g_form . setValue ( targetField , parsedAnswer [ fieldsToFetch ] [ 'fieldVal' ] ) ;
28+ } else {
29+ alert ( 'error' ) ;
30+ }
31+ } ) ;
32+ }
You can’t perform that action at this time.
0 commit comments