@xuda.io/runtime-bundle 1.0.717 → 1.0.719

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2899,7 +2899,7 @@ func.datasource.create = async function (
2899
2899
  rowIdP,
2900
2900
  jobNoP,
2901
2901
  calling_trigger_prop,
2902
- parameters_raw_obj,
2902
+ screen_param,
2903
2903
  NA_isInitP,
2904
2904
  NA_callingSourceP,
2905
2905
  calling_jobP,
@@ -2932,7 +2932,6 @@ func.datasource.create = async function (
2932
2932
  parameters_obj_inP,
2933
2933
  static_refreshP,
2934
2934
  worker_id,
2935
- parameters_raw_obj,
2936
2935
  };
2937
2936
 
2938
2937
  var IS_DATASOURCE_REFRESH = null;
@@ -3068,7 +3067,7 @@ func.datasource.create = async function (
3068
3067
  args.rowIdP,
3069
3068
  args.jobNoP,
3070
3069
  args.calling_trigger_prop,
3071
- args.parameters_raw_obj,
3070
+ null,
3072
3071
  null,
3073
3072
  null,
3074
3073
  args.calling_jobP,
@@ -3109,7 +3108,7 @@ func.datasource.create = async function (
3109
3108
  return done(SESSION_ID, jsonP.dsSession, true);
3110
3109
  });
3111
3110
  };
3112
- func.datasource.prepare = async function (SESSION_ID, prog_id, dataSourceNoP, parentDataSourceNoP, containerIdP, rowIdP, jobNoP, calling_trigger_prop, parameters_raw_obj, NA_isInitP, callingSourceP, calling_jobP, NA_screen_dsP, is_panelP, parameters_obj_inP, static_refreshP, run_atP, worker_id) {
3111
+ func.datasource.prepare = async function (SESSION_ID, prog_id, dataSourceNoP, parentDataSourceNoP, containerIdP, rowIdP, jobNoP, calling_trigger_prop, NA_screen_param, NA_isInitP, callingSourceP, calling_jobP, NA_screen_dsP, is_panelP, parameters_obj_inP, static_refreshP, run_atP, worker_id) {
3113
3112
  const set_parameters = async function () {
3114
3113
  var _session = SESSION_OBJ[SESSION_ID];
3115
3114
  const get_Out_parameters = async function (fieldIdP, located_field_param_idxP, param_row_idP) {
@@ -3238,7 +3237,6 @@ func.datasource.prepare = async function (SESSION_ID, prog_id, dataSourceNoP, pa
3238
3237
  static_refreshP,
3239
3238
  run_atP,
3240
3239
  worker_id,
3241
- parameters_raw_obj,
3242
3240
  };
3243
3241
 
3244
3242
  var dataSourceSession = null;
@@ -3860,8 +3858,8 @@ func.datasource.execute = async function (SESSION_ID, dataSourceSession, IS_DATA
3860
3858
  }
3861
3859
 
3862
3860
  // initiated with Update but no rows found
3863
- if (tree_obj.crudMode === 'U' && tree_obj.allowCreate && !_ds?.data_feed?.rows?.length) {
3864
- // if (tree_obj.crudMode === 'U' && tree_obj.allowCreate && !_raw_data_rows?.length) {
3861
+ // if (tree_obj.crudMode === 'U' && tree_obj.allowCreate && !_ds?.data_feed?.rows?.length) {
3862
+ if (tree_obj.crudMode === 'U' && tree_obj.allowCreate && !_raw_data_rows?.length) {
3865
3863
  _ds.set_mode = 'C';
3866
3864
  // _raw_data_rows[glb.newRecord] = [{ _ROWID: "newRecord" }];
3867
3865
 
@@ -4157,7 +4155,7 @@ func.datasource.run_events_functions = async function (SESSION_ID, dataSourceSes
4157
4155
  clearInterval(interval);
4158
4156
  resolve(job_num);
4159
4157
  }
4160
- if (i > 50) {
4158
+ if (i > 20) {
4161
4159
  console.error('deadlock detected');
4162
4160
  clearInterval(interval);
4163
4161
  resolve(job_num);
@@ -4895,18 +4893,6 @@ func.datasource.update = async function (SESSION_ID, datasource_changes, update_
4895
4893
 
4896
4894
  if (!fields_changed.includes(field_id)) {
4897
4895
  fields_changed.push(field_id);
4898
-
4899
- ///// REFRESH PARAMETERS IN
4900
- // for (const [_dsSession, _ds] of Object.entries(_session.DS_GLB)) {
4901
- // if (_ds.args.parameters_raw_obj) {
4902
- // for (const [key, exp] of Object.entries(_ds.args.parameters_raw_obj)) {
4903
- // if (exp.includes(field_id)) {
4904
- // let ret = await func.expression.get(SESSION_ID, exp, _dsSession, 'parameters');
4905
- // _ds.in_parameters[key].value = ret.result;
4906
- // }
4907
- // }
4908
- // }
4909
- // }
4910
4896
  }
4911
4897
  if (!datasource_changed.includes(dataSource)) {
4912
4898
  datasource_changed.push(dataSource);
@@ -4953,19 +4939,6 @@ func.datasource.update = async function (SESSION_ID, datasource_changes, update_
4953
4939
  datasource_changed[0], // refresh the current datasource only
4954
4940
  );
4955
4941
  }
4956
- // ///// REFRESH PARAMETERS IN
4957
- // if (fields_changed.length) {
4958
- // for (const [_dsSession, _ds] of Object.entries(_session.DS_GLB)) {
4959
- // if (_ds.args.parameters_raw_obj) {
4960
- // for (const [key, val] of Object.entries(_ds.args.parameters_raw_obj)) {
4961
- // if (fields_changed.includes(val)) {
4962
- // let ret = await func.expression.get(SESSION_ID, '@' + val, _dsSession, 'parameters');
4963
- // _ds.in_parameters[val].value = ret.result;
4964
- // }
4965
- // }
4966
- // }
4967
- // }
4968
- // }
4969
4942
  }
4970
4943
  resolve();
4971
4944
  });
@@ -11189,7 +11162,7 @@ func.expression.secure_eval = async function (SESSION_ID, sourceP, val, job_id,
11189
11162
  }
11190
11163
  };
11191
11164
  func.UI.screen = {};
11192
- func.UI.screen.init = async function (SESSION_ID, prog_id, sourceScreenP, callingDataSource_objP, $callingContainerP, triggerIdP, rowIdP, jobNoP, is_panelP, parameters_obj_inP, source_functionP, call_screen_propertiesP, refreshed_ds, parameters_raw_obj) {
11165
+ func.UI.screen.init = async function (SESSION_ID, prog_id, sourceScreenP, callingDataSource_objP, $callingContainerP, triggerIdP, rowIdP, jobNoP, is_panelP, parameters_obj_inP, source_functionP, call_screen_propertiesP, refreshed_ds) {
11193
11166
  if (!prog_id) return console.error('program is empty');
11194
11167
  let screen_ret = await func.utils.get_screen_obj(SESSION_ID, prog_id);
11195
11168
  if (!screen_ret) return console.error('program is not a screen object');
@@ -11242,7 +11215,6 @@ func.UI.screen.init = async function (SESSION_ID, prog_id, sourceScreenP, callin
11242
11215
  screenInfo,
11243
11216
  call_screen_propertiesP,
11244
11217
  parentDataSourceNoP: _session.DS_GLB?.[callingDataSource_objP?.dsSession]?.dsSession || callingDataSource_objP?.parentDataSourceNo || 0,
11245
- parameters_raw_obj,
11246
11218
  };
11247
11219
 
11248
11220
  switch (screen_type) {
@@ -11409,7 +11381,7 @@ func.UI.screen.init = async function (SESSION_ID, prog_id, sourceScreenP, callin
11409
11381
  rowIdP,
11410
11382
  jobNoP,
11411
11383
  null,
11412
- parameters_raw_obj,
11384
+ null,
11413
11385
  null,
11414
11386
  null,
11415
11387
  null,
@@ -12016,200 +11988,212 @@ func.UI.screen.refresh_screen = async function (SESSION_ID, fields_changed_arr,
12016
11988
  }
12017
11989
  };
12018
11990
 
12019
- func.UI.screen.refresh_screen_old = async function (SESSION_ID, fields_changed_arr, datasource_changed, fields_changed_datasource) {
12020
- // check the main program
12021
- if (fields_changed_datasource) {
12022
- const _session = SESSION_OBJ[SESSION_ID];
12023
- const _ds = _session.DS_GLB[fields_changed_datasource];
12024
- const prog_doc = await func.utils.DOCS_OBJ.get(SESSION_ID, _ds.prog_id);
12025
- const progDataSource_str = JSON.stringify(prog_doc.progDataSource);
12026
- for (const field_id of fields_changed_arr || []) {
12027
- }
12028
- }
11991
+ // func.UI.screen.refresh_screen = async function (SESSION_ID, fields_changed_arr, datasource_changed, fields_changed_datasource) {
11992
+ // // check the main program
11993
+ // if (fields_changed_datasource) {
11994
+ // const _session = SESSION_OBJ[SESSION_ID];
11995
+ // const _ds = _session.DS_GLB[fields_changed_datasource];
11996
+ // const prog_doc = await func.utils.DOCS_OBJ.get(SESSION_ID, _ds.prog_id);
11997
+ // const progDataSource_str = JSON.stringify(prog_doc.progDataSource);
11998
+ // for (const field_id of fields_changed_arr || []) {
12029
11999
 
12030
- const panels_obj = await func.UI.utils.get_panels_wrapper_from_dom(SESSION_ID, $(SESSION_OBJ[SESSION_ID].root_element), false);
12000
+ // }
12001
+ // }
12031
12002
 
12032
- for await (const [parent_element_ui_id, panel_val] of Object.entries(panels_obj)) {
12033
- const progDataSource_str = JSON.stringify(panel_val.prog_doc.progDataSource);
12003
+ // const panels_obj = await func.UI.utils.get_panels_wrapper_from_dom(SESSION_ID, $(SESSION_OBJ[SESSION_ID].root_element), false);
12034
12004
 
12035
- var found, refresh_reason, refresh_details;
12036
- if (fields_changed_arr) {
12037
- if (fields_changed_datasource && panel_val._ds.dsSession <= Number(fields_changed_datasource)) {
12038
- continue;
12039
- }
12040
- for (const field_id of fields_changed_arr) {
12041
- // get panel attributes
12042
- const _attributes = panel_val?.panelXuAttributes || {};
12005
+ // for await (const [parent_element_ui_id, panel_val] of Object.entries(panels_obj)) {
12006
+ // const progDataSource_str = JSON.stringify(panel_val.prog_doc.progDataSource);
12043
12007
 
12044
- // detect if program changed
12045
- found = _attributes['xu-exp:program']?.includes('@' + field_id);
12008
+ // var found, refresh_reason, refresh_details;
12009
+ // if (fields_changed_arr) {
12010
+ // if (fields_changed_datasource && panel_val._ds.dsSession <= Number(fields_changed_datasource)) {
12011
+ // continue;
12012
+ // }
12013
+ // for (const field_id of fields_changed_arr) {
12014
+ // // get panel attributes
12015
+ // const _attributes = panel_val?.panelXuAttributes || {};
12046
12016
 
12047
- if (found) {
12048
- refresh_reason = `program ${_attributes['xu-exp:program']} ${field_id} changed `;
12049
- refresh_details = _attributes;
12050
- break;
12051
- }
12017
+ // // detect if program changed
12018
+ // found = _attributes['xu-exp:program']?.includes('@' + field_id);
12052
12019
 
12053
- // _attributes holds also info of parameters in code_in: @code
12054
- // search field changed in panel call send parameters exp
12055
- for (const [attr, value] of Object.entries(_attributes)) {
12056
- const pattern = /xu-exp:(\w+)/;
12057
- const match = attr.match(pattern);
12020
+ // if (found) {
12021
+ // refresh_reason = `program ${_attributes['xu-exp:program']} ${field_id} changed `;
12022
+ // refresh_details = _attributes;
12023
+ // break;
12024
+ // }
12058
12025
 
12059
- if (!match) {
12060
- // continue if attribute is not expression
12061
- continue;
12062
- }
12063
- // code_in
12064
- const parameter_in_field_id = match?.[1];
12065
- // @code
12066
- if (value.includes(field_id)) {
12067
- // search parameter in field in the target program's progDataSource
12068
- found = progDataSource_str?.includes('@' + parameter_in_field_id);
12026
+ // // _attributes holds also info of parameters in code_in: @code
12027
+ // // search field changed in panel call send parameters exp
12028
+ // for (const [attr, value] of Object.entries(_attributes)) {
12029
+ // const pattern = /xu-exp:(\w+)/;
12030
+ // const match = attr.match(pattern);
12069
12031
 
12070
- if (found) {
12071
- refresh_reason = `field ${field_id} in progDataSource parameter_in changed`;
12072
- refresh_details = panel_val?.prog_doc?.progDataSource;
12032
+ // if (!match) {
12033
+ // // continue if attribute is not expression
12034
+ // continue;
12035
+ // }
12036
+ // // code_in
12037
+ // const parameter_in_field_id = match?.[1];
12038
+ // // @code
12039
+ // if (value.includes(field_id)) {
12040
+ // // search parameter in field in the target program's progDataSource
12041
+ // found = progDataSource_str?.includes('@' + parameter_in_field_id);
12073
12042
 
12074
- break;
12075
- }
12043
+ // if (found) {
12044
+ // refresh_reason = `field ${field_id} in progDataSource parameter_in changed`;
12045
+ // refresh_details = panel_val?.prog_doc?.progDataSource;
12076
12046
 
12077
- // found = find_field_in_progUi(prog_doc.progUi, parameter_in_field_id, 'xu-for');
12078
- found = func.UI.find_field_in_progUi_attributes(panel_val.prog_doc.progUi, parameter_in_field_id, 'xu-for').length;
12047
+ // break;
12048
+ // }
12079
12049
 
12080
- if (found) {
12081
- refresh_reason = `field ${field_id} in progUi xu-for parameter_in changed`;
12082
- refresh_details = found;
12050
+ // // found = find_field_in_progUi(prog_doc.progUi, parameter_in_field_id, 'xu-for');
12051
+ // found = func.UI.find_field_in_progUi_attributes(panel_val.prog_doc.progUi, parameter_in_field_id, 'xu-for').length;
12083
12052
 
12084
- break;
12085
- }
12086
- }
12087
- }
12053
+ // if (found) {
12054
+ // refresh_reason = `field ${field_id} in progUi xu-for parameter_in changed`;
12055
+ // refresh_details = found;
12088
12056
 
12089
- if (found) break;
12057
+ // break;
12058
+ // }
12059
+ // }
12060
+ // }
12090
12061
 
12091
- // search field changed in the target program's progDataSource // @code
12092
- found = progDataSource_str?.includes('@' + field_id);
12093
- if (found) {
12094
- refresh_reason = `field ${field_id} in progDataSource changed`;
12095
- refresh_details = panel_val?.prog_doc?.progDataSource;
12062
+ // if (found) break;
12096
12063
 
12097
- break;
12098
- }
12064
+ // // search field changed in the target program's progDataSource // @code
12065
+ // found = progDataSource_str?.includes('@' + field_id);
12066
+ // if (found) {
12067
+ // refresh_reason = `field ${field_id} in progDataSource changed`;
12068
+ // refresh_details = panel_val?.prog_doc?.progDataSource;
12099
12069
 
12100
- found = func.UI.find_field_in_progUi_attributes(panel_val.prog_doc.progUi, field_id, 'xu-for').length;
12101
- if (found) {
12102
- refresh_reason = `field ${field_id} in progUi xu-for changed`;
12103
- refresh_details = found;
12070
+ // break;
12071
+ // }
12104
12072
 
12105
- break;
12106
- }
12073
+ // found = func.UI.find_field_in_progUi_attributes(panel_val.prog_doc.progUi, field_id, 'xu-for').length;
12074
+ // if (found) {
12075
+ // refresh_reason = `field ${field_id} in progUi xu-for changed`;
12076
+ // refresh_details = found;
12107
12077
 
12108
- if (found) {
12109
- break;
12110
- }
12111
- }
12112
- }
12078
+ // break;
12079
+ // }
12113
12080
 
12114
- if (datasource_changed) {
12115
- if (panel_val._ds.dsSession == datasource_changed) {
12116
- refresh_reason = `panel datasource ${datasource_changed} changed`;
12117
- refresh_details = '';
12081
+ // if (found) {
12082
+ // break;
12083
+ // }
12084
+ // }
12085
+ // }
12118
12086
 
12119
- found = true;
12120
- }
12121
- }
12122
- if (found) {
12123
- const _session = SESSION_OBJ[SESSION_ID];
12124
- if (_session.engine_mode === 'live_preview') {
12125
- console.info('========= refresh info ==============');
12126
- console.info('reason:', refresh_reason);
12127
- console.info('details:', refresh_details);
12128
- console.info('panel:', panel_val);
12129
- console.info('=====================================');
12130
- }
12131
- const $div_elm = panel_val.$panel_div;
12132
- const wrapper_data = $div_elm.data();
12087
+ // if (datasource_changed) {
12088
+ // if (panel_val._ds.dsSession == datasource_changed) {
12089
+ // refresh_reason = `panel datasource ${datasource_changed} changed`;
12090
+ // refresh_details = '';
12133
12091
 
12134
- if (_.isEmpty(wrapper_data)) continue;
12092
+ // found = true;
12093
+ // }
12094
+ // }
12095
+ // if (found) {
12096
+ // const _session = SESSION_OBJ[SESSION_ID];
12097
+ // if (_session.engine_mode === 'live_preview') {
12098
+ // console.info('========= refresh info ==============');
12099
+ // console.info('reason:', refresh_reason);
12100
+ // console.info('details:', refresh_details);
12101
+ // console.info('panel:', panel_val);
12102
+ // console.info('=====================================');
12103
+ // }
12104
+ // const $div_elm = panel_val.$panel_div;
12105
+ // const wrapper_data = $div_elm.data();
12135
12106
 
12136
- try {
12137
- const ts = Date.now();
12138
- // remove old panel content
12139
- $.each(panel_val.ids, async function (key, val) {
12140
- $("[xu-ui-id='" + val + "']")
12141
- .attr('xu-ui-id', val + ts)
12142
- .removeData();
12143
- });
12107
+ // if (_.isEmpty(wrapper_data)) continue;
12144
12108
 
12145
- let refreshed_ds;
12146
- // check if ds exist and deleted by garbage collector
12109
+ // try {
12110
+ // const ts = Date.now();
12111
+ // // remove old panel content
12112
+ // $.each(panel_val.ids, async function (key, val) {
12113
+ // $("[xu-ui-id='" + val + "']")
12114
+ // .attr('xu-ui-id', val + ts)
12115
+ // .removeData();
12116
+ // });
12147
12117
 
12148
- if (_session.DS_GLB[panel_val._ds.dsSession]) {
12149
- refreshed_ds = panel_val._ds.dsSession;
12150
- }
12151
- for await (const item of wrapper_data.xuData.node_org.children) {
12152
- if (item.tagName !== 'xu-panel') continue;
12118
+ // let refreshed_ds;
12119
+ // // check if ds exist and deleted by garbage collector
12153
12120
 
12154
- const new_$div = await func.UI.screen.render_ui_tree(
12155
- SESSION_ID,
12156
- $div_elm, // the wrapper
12157
- _.cloneDeep(item), // _.cloneDeep(wrapper_data.xuData.node_org.children[0]), // the xu-panel node
12158
- {},
12159
- wrapper_data.xuData.paramsP, // the wrapper params
12160
- null,
12161
- null,
12162
- wrapper_data.xuData.key, // the wrapper key
12163
- refreshed_ds, // the refreshed_ds
12164
- wrapper_data.xuData.parent_node, // the wrapper parent node
12165
- null,
12166
- wrapper_data.xuData.$root_container, // the wrapper root container
12167
- );
12168
- }
12121
+ // if (_session.DS_GLB[panel_val._ds.dsSession]) {
12122
+ // refreshed_ds = panel_val._ds.dsSession;
12123
+ // }
12124
+ // for await (const item of wrapper_data.xuData.node_org.children) {
12125
+ // if (item.tagName !== 'xu-panel') continue;
12169
12126
 
12170
- // remove old panel content
12171
- $.each(panel_val.ids, async function (key, val) {
12172
- $("[xu-ui-id='" + val + ts + "']").remove();
12173
- });
12174
- } catch (error) {
12175
- debugger;
12176
- }
12177
- // continue;
12178
- }
12179
- }
12180
- };
12127
+ // const new_$div = await func.UI.screen.render_ui_tree(
12128
+ // SESSION_ID,
12129
+ // $div_elm, // the wrapper
12130
+ // _.cloneDeep(item), // _.cloneDeep(wrapper_data.xuData.node_org.children[0]), // the xu-panel node
12131
+ // {},
12132
+ // wrapper_data.xuData.paramsP, // the wrapper params
12133
+ // null,
12134
+ // null,
12135
+ // wrapper_data.xuData.key, // the wrapper key
12136
+ // refreshed_ds, // the refreshed_ds
12137
+ // wrapper_data.xuData.parent_node, // the wrapper parent node
12138
+ // null,
12139
+ // wrapper_data.xuData.$root_container, // the wrapper root container
12140
+ // );
12141
+ // }
12142
+
12143
+ // // remove old panel content
12144
+ // $.each(panel_val.ids, async function (key, val) {
12145
+ // $("[xu-ui-id='" + val + ts + "']").remove();
12146
+ // });
12147
+ // } catch (error) {
12148
+ // debugger;
12149
+ // }
12150
+ // // continue;
12151
+ // }
12152
+ // }
12153
+ // };
12181
12154
 
12182
12155
  const get_params_obj_new = async function (SESSION_ID, prog_id, nodeP, dsSession) {
12183
12156
  const _prog = await func.utils.VIEWS_OBJ.get(SESSION_ID, prog_id);
12184
12157
  if (!_prog) return;
12185
12158
 
12186
12159
  // get in parameters
12187
- let params_res = {},
12188
- params_raw = {};
12160
+ var params_obj = {};
12189
12161
  if (_prog?.properties?.progParams) {
12190
12162
  for await (const [key, val] of Object.entries(_prog.properties.progParams)) {
12191
12163
  if (!['in', 'out'].includes(val.data.dir)) continue;
12192
12164
 
12193
12165
  if (nodeP.attributes) {
12194
12166
  if (nodeP.attributes[val.data.parameter]) {
12195
- params_res[val.data.parameter] = nodeP.attributes[val.data.parameter];
12167
+ params_obj[val.data.parameter] = nodeP.attributes[val.data.parameter];
12196
12168
  } else if (nodeP.attributes[`xu-exp:${val.data.parameter}`]) {
12197
12169
  if (val.data.dir == 'out') {
12198
12170
  // only reference
12199
- params_res[val.data.parameter] = nodeP.attributes[`xu-exp:${val.data.parameter}`].replaceAll('@', '');
12171
+ params_obj[val.data.parameter] = nodeP.attributes[`xu-exp:${val.data.parameter}`].replaceAll('@', '');
12200
12172
  } else {
12201
12173
  // in parameter
12202
12174
  let ret = await func.expression.get(SESSION_ID, nodeP.attributes[`xu-exp:${val.data.parameter}`], dsSession, 'parameters');
12203
- params_res[val.data.parameter] = ret.result;
12204
- params_raw[val.data.parameter] = nodeP.attributes[`xu-exp:${val.data.parameter}`];
12175
+ params_obj[val.data.parameter] = ret.result;
12205
12176
  }
12206
12177
  }
12178
+
12179
+ // if (parameters_obj_inP?.[val.data.parameter].fx) {
12180
+ // let ret = await func.expression.get(
12181
+ // SESSION_ID,
12182
+ // parameters_obj_inP?.[val.data.parameter].fx,
12183
+ // dsSession,
12184
+ // "parameters"
12185
+ // );
12186
+ // params_obj[val.data.parameter] = ret.result;
12187
+ // } else {
12188
+ // params_obj[val.data.parameter] =
12189
+ // parameters_obj_inP?.[val.data.parameter].value;
12190
+ // }
12207
12191
  continue;
12208
12192
  }
12209
12193
  console.warn(`Warning: Program ${_prog.properties.menuName} expected In parameter: ${val.data.parameter} but received null instead`);
12210
12194
  }
12211
12195
  }
12212
- return { params_res, params_raw };
12196
+ return params_obj;
12213
12197
  };
12214
12198
 
12215
12199
  func.UI.screen.execute_xu_functions = async function (SESSION_ID, is_skeleton, $root_container, nodeP, $container, paramsP, parent_infoP, jobNoP, keyP, parent_nodeP, xu_func, $elm, val, is_init, refreshed_ds) {
@@ -12226,8 +12210,8 @@ func.UI.screen.execute_xu_functions = async function (SESSION_ID, is_skeleton, $
12226
12210
  const init_program = async function () {
12227
12211
  async function render_panel() {
12228
12212
  const prog_id = val.value?.prog || val.value;
12229
- const params_obj = await get_params_obj_new(SESSION_ID, prog_id, nodeP, paramsP.dsSessionP);
12230
- let ret_panel = await func.UI.screen.init(SESSION_ID, prog_id, paramsP.screenId, _ds, $elm, null, _ds.currentRecordId, null, true, params_obj.params_res, 'initXu_panel', undefined, prog_id !== _ds.prog_id ? null : refreshed_ds, params_obj.params_raw);
12213
+ const param_obj = await get_params_obj_new(SESSION_ID, prog_id, nodeP, paramsP.dsSessionP);
12214
+ let ret_panel = await func.UI.screen.init(SESSION_ID, prog_id, paramsP.screenId, _ds, $elm, null, _ds.currentRecordId, null, true, param_obj, 'initXu_panel', undefined, prog_id !== _ds.prog_id ? null : refreshed_ds);
12231
12215
  ret = { $new_div: ret_panel };
12232
12216
  $container.data().xuData.xuPanelProps = $elm.data().xuAttributes;
12233
12217
  $container.data().xuData.xuPanelData = ret_panel.data();
@@ -12276,8 +12260,8 @@ func.UI.screen.execute_xu_functions = async function (SESSION_ID, is_skeleton, $
12276
12260
  const program = val.value?.prog || val.value;
12277
12261
  var $wrapper = $('<div>');
12278
12262
  var $div = func.UI.screen.create_container(SESSION_ID, $root_container, nodeP, $container, paramsP, parent_infoP, jobNoP, keyP, parent_nodeP, nodeP.attributes, null, null, null, $wrapper, '');
12279
- const params_obj = await get_params_obj_new(SESSION_ID, program, nodeP, paramsP.dsSessionP);
12280
- let ret_init = await func.UI.screen.init(SESSION_ID, program, paramsP.screenId, _ds, $div, null, _ds.currentRecordId, jobNoP, true, params_obj.params_res, 'alterXu_panel', undefined, undefined, params_obj.params_raw);
12263
+ const param_obj = await get_params_obj_new(SESSION_ID, program, nodeP, paramsP.dsSessionP);
12264
+ let ret_init = await func.UI.screen.init(SESSION_ID, program, paramsP.screenId, _ds, $div, null, _ds.currentRecordId, jobNoP, true, param_obj, 'alterXu_panel');
12281
12265
  ret = {
12282
12266
  $new_div: ret_init,
12283
12267
  abort: true,