@sapui5/sap.suite.ui.generic.template 1.136.14 → 1.136.16

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.
Files changed (42) hide show
  1. package/package.json +1 -1
  2. package/src/sap/suite/ui/generic/template/.library +1 -1
  3. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_bg.properties +3 -3
  4. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_da.properties +3 -3
  5. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n_it.properties +1 -1
  6. package/src/sap/suite/ui/generic/template/AnalyticalListPage/manifest.json +1 -1
  7. package/src/sap/suite/ui/generic/template/Canvas/manifest.json +1 -1
  8. package/src/sap/suite/ui/generic/template/ListReport/controller/ControllerImplementation.js +93 -12
  9. package/src/sap/suite/ui/generic/template/ListReport/controller/IappStateHandler.js +19 -8
  10. package/src/sap/suite/ui/generic/template/ListReport/manifest.json +1 -1
  11. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartChart.fragment.xml +2 -1
  12. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartTable.fragment.xml +3 -2
  13. package/src/sap/suite/ui/generic/template/ObjectPage/controller/ControllerImplementation.js +5 -2
  14. package/src/sap/suite/ui/generic/template/ObjectPage/controller/RelatedAppsHandler.js +19 -27
  15. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cnr.properties +1 -1
  16. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_mk.properties +1 -1
  17. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sh.properties +1 -1
  18. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sl.properties +3 -3
  19. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sr.properties +1 -1
  20. package/src/sap/suite/ui/generic/template/ObjectPage/manifest.json +1 -1
  21. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartChart.fragment.xml +3 -2
  22. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartTable.fragment.xml +3 -2
  23. package/src/sap/suite/ui/generic/template/QuickCreate/manifest.json +1 -1
  24. package/src/sap/suite/ui/generic/template/QuickView/manifest.json +1 -1
  25. package/src/sap/suite/ui/generic/template/genericUtilities/ControlStateWrapperFactory.js +108 -67
  26. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/DynamicPageWrapper.js +19 -51
  27. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/ObjectPageLayoutWrapper.js +10 -32
  28. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/PreliminaryWrapper.js +151 -0
  29. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SearchFieldWrapper.js +8 -30
  30. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SmartFilterBarWrapper.js +49 -162
  31. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SmartTableChartCommon.js +99 -93
  32. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SmartTableWrapper.js +22 -3
  33. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SmartVariantManagementWrapper.js +90 -81
  34. package/src/sap/suite/ui/generic/template/lib/AppComponent.js +1 -1
  35. package/src/sap/suite/ui/generic/template/lib/ContextMenuHandler.js +9 -0
  36. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fi.properties +2 -2
  37. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr.properties +2 -2
  38. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_mk.properties +1 -1
  39. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_nl.properties +1 -1
  40. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ru.properties +5 -5
  41. package/src/sap/suite/ui/generic/template/lib/navigation/NavigationController.js +1 -1
  42. package/src/sap/suite/ui/generic/template/library.js +1 -1
@@ -4,18 +4,16 @@ sap.ui.define([
4
4
 
5
5
  /**
6
6
  * Constructor for SmartVariantManagementWrapper
7
- * @param {sap.ui.comp.smartvariants.SmartVariantManagement} vTarget - The SmartVariantManagement control
8
- * or the Id of control for which this wrapper is created
7
+ * @param {sap.ui.comp.smartvariants.SmartVariantManagement} oControl - The SmartVariantManagement control
9
8
  * @param {object} oController - the controller of the current component
10
9
  * @param {object} oFactory - the controlStateWrapperFactory
11
10
  * @param {object} mParams
12
11
  * @param {array} mParams.managedControlWrappers - array of controlStateWrappers for controls handled by the SVM
13
- * (currently also including SFB wrapper - to be removed)
14
- * @param {Object} mParams.dynamicPageWrapper - dynamicPageWrapper instance handled by SVM
12
+ * @param {object} mParams.smartFilterBarWrapper - explicit reference to SmartFilterBarWrapper for special handling
15
13
  * @returns {object}
16
14
  */
17
15
 
18
- function SmartVariantManagementWrapper(vTarget, oController, oFactory, mParams) {
16
+ function SmartVariantManagementWrapper(oControl, oController, oFactory, mParams) {
19
17
  // Special handling of SmartFilterBarWrapper for several reasons:
20
18
  // - Suppress selection when restoring a variant. Selection is solely triggered according to information in appState. Otherwise, erroneous selection could be triggered in
21
19
  // a few situations:
@@ -26,14 +24,10 @@ sap.ui.define([
26
24
  // - Store and restore extension state (extension implemented in SFB instead of SVM, which would be more appropriate from architectural point of view)
27
25
  // flag to control whether we are currently in the process of applying a state to suppress the event to inform about a new state´
28
26
  // only needed when setting the variant itself - for managed controls, their wrappers should avoid firing the event themselves
29
- var oSmartVariantManagement, fnResolveControlAssigned, oPreliminaryState;
30
- var oControlAssignedPromise = new Promise(function (resolve) {
31
- fnResolveControlAssigned = resolve;
32
- });
33
-
34
- if (typeof vTarget !== "string") {
35
- fnSetControl(vTarget);
36
- }
27
+ var oSmartVariantManagement = oControl;
28
+ var oPreliminaryState;
29
+ var bIsApplyingVariant = false;
30
+ var bAllControlsInitialized = false;
37
31
 
38
32
  // Handles the state of the variant management itself (i.e. which variant is selected and whether it's dirty), including the state of the managed controls.
39
33
  // Is responsible esp. to restore this state with correct dependency resp. in correct order
@@ -50,69 +44,74 @@ sap.ui.define([
50
44
  // For these controls, a real user changes are already handled by the direct connection. On the other hand, these controls also fire their change events, if their state is
51
45
  // changed from SVM (by the same connection) - setting variant dirty here would be wrong.
52
46
  mParams.managedControlWrappers.forEach(function(oWrapper){
53
- if (!oWrapper.bVMConnection){
54
- oWrapper.attachStateChanged(function(){
55
- oSmartVariantManagement.currentVariantSetModified(true);
56
- });
57
- }
47
+ (oWrapper.oVMConnectionPromise || Promise.resolve(oWrapper.bVMConnection)).then(function(bVMConnection) {
48
+ if (!bVMConnection) {
49
+ oWrapper.attachStateChanged(function(){
50
+ oSmartVariantManagement.currentVariantSetModified(true);
51
+ });
52
+ }
53
+ });
58
54
  });
59
55
 
56
+ // Get SmartFilterBarWrapper explicitly from params.
57
+ // This connection is needed because SmartFilterBar provides special callbacks to store/restore state
58
+ // for controls that don't have a direct variant management connection (bVMConnection = false), such as:
59
+ // - Extension filters (custom filters added via app or adaptation extensions)
60
+ // - Multiple views state (selected tab in multi-table/chart scenarios)
61
+ // These controls need their state saved/restored with variants via the SFB's beforeVariantFetch/afterVariantLoad events.
62
+ var oSmartFilterBarWrapper = mParams.smartFilterBarWrapper;
60
63
 
61
-
62
- function fnSetControl(oControl) {
63
- oSmartVariantManagement = oControl;
64
- fnResolveControlAssigned(oSmartVariantManagement);
65
- }
66
-
67
- var oSmartFilterBarWrapper = mParams.managedControlWrappers.find(function(oWrapper){
68
- return oWrapper.setSVMWrapperCallbacks;
69
- });
70
-
71
- // provide callbacks needed for SFB wrapper to store/restore extnesion state with variant
64
+ // Provide callbacks needed for SFB wrapper to store/restore extension state with variant
72
65
  if (oSmartFilterBarWrapper){
73
- oSmartFilterBarWrapper.setSVMWrapperCallbacks({
74
- getManagedControlStates: function(){
75
- var mManagedControlStates = Object.create(null);
76
- mParams.managedControlWrappers.forEach(function(oWrapper){
77
- if (!oWrapper.bVMConnection){
78
- mManagedControlStates[oWrapper.getLocalId()] = oWrapper.getState();
79
- }
80
- });
81
- return mManagedControlStates;
82
- },
83
- setManagedControlStates: function(oState){
84
- mParams.managedControlWrappers.forEach(function(oWrapper){
85
- if (!oWrapper.bVMConnection){
86
- oWrapper.setState(oState[oWrapper.getLocalId()]);
87
- }
88
- });
89
- },
90
- setHeaderState: function(bHeaderToBeExpanded) {
91
- mParams.dynamicPageWrapper.setHeaderState(oController, bHeaderToBeExpanded);
92
- }
66
+ // Build array with wrapper + bVMConnection info once all wrappers are ready
67
+ Promise.all(mParams.managedControlWrappers.map(function(oWrapper){
68
+ return (oWrapper.oVMConnectionPromise || Promise.resolve(oWrapper.bVMConnection)).then(function(bVMConnection){
69
+ return {
70
+ wrapper: oWrapper,
71
+ bVMConnection: bVMConnection
72
+ };
73
+ });
74
+ })).then(function(aWrapperInfo) {
75
+ oSmartFilterBarWrapper.setSVMWrapperCallbacks({
76
+ getManagedControlStates: function(){
77
+ var mManagedControlStates = Object.create(null);
78
+ aWrapperInfo.forEach(function(oInfo){
79
+ if (!oInfo.bVMConnection) {
80
+ mManagedControlStates[oInfo.wrapper.getLocalId()] = oInfo.wrapper.getState();
81
+ }
82
+ });
83
+ return mManagedControlStates;
84
+ },
85
+ setManagedControlStates: function(oState){
86
+ aWrapperInfo.forEach(function(oInfo){
87
+ if (!oInfo.bVMConnection) {
88
+ oInfo.wrapper.setState(oState[oInfo.wrapper.getLocalId()]);
89
+ }
90
+ });
91
+ }
92
+ });
93
93
  });
94
94
  }
95
95
 
96
+ // Create promise that resolves when all managed controls' variant management is ready
97
+ // This ensures getState() can query controls even if setState() is never called (e.g., app starts from scratch)
98
+ var oAllControlsInitializedPromise = Promise.all(
99
+ mParams.managedControlWrappers.map(function(oWrapper){
100
+ return oWrapper.oVariantManagementInitializedPromise || Promise.resolve();
101
+ })
102
+ );
103
+
104
+ // Set flag when all controls are initialized
105
+ oAllControlsInitializedPromise.then(function() {
106
+ bAllControlsInitialized = true;
107
+ });
108
+
96
109
  // Wrapper is intended to set a state to the ui, but not to trigger a selection (which should happen only after all (relevant) parts of ui state is set to the correct state
97
110
  // are set correct. Therefore, setting variant from here should never trigger a selection.
98
111
  function fnSetVariant(sVariantId){
99
112
  if (oSmartFilterBarWrapper){
100
113
  oSmartFilterBarWrapper.suppressSelection(true);
101
114
  }
102
- var sId = mParams.managedControlWrappers[0].getLocalId();
103
- var oControl = oController.getView().byId(sId);
104
- if (oControl && oControl.isA("sap.ui.comp.smarttable.SmartTable")) {
105
- oControl.attachAfterVariantInitialise(function() {
106
- //set currentVariantId only when sVariantId is not standard (as it might be overriding existing
107
- //different currentVariantId) or smartTable's (oControl) currentVariantId is not equal to sVariantId.
108
- if (sVariantId !== '*standard*' && sVariantId !== '') {
109
- if (oControl.getCurrentVariantId && oControl.getCurrentVariantId() !== sVariantId) {
110
- oControl.setCurrentVariantId(sVariantId);
111
- }
112
- oSmartVariantManagement.setModified(false);
113
- }
114
- });
115
- }
116
115
  oSmartVariantManagement.setCurrentVariantId(sVariantId);
117
116
  if (oSmartFilterBarWrapper){
118
117
  oSmartFilterBarWrapper.suppressSelection(false);
@@ -133,7 +132,11 @@ sap.ui.define([
133
132
  }
134
133
 
135
134
  function getState() {
136
- if (!oSmartVariantManagement) {
135
+ // Return preliminary state if managed controls not fully initialized
136
+ // Note: If early getState() calls become an issue (controls not initialized yet), we could enhance this to:
137
+ // - Store only SVM-specific data (variantId, modified) in oPreliminaryState
138
+ // - Always query managed control wrappers directly (they handle their own preliminary state via PreliminaryWrapper)
139
+ if (!bAllControlsInitialized) {
137
140
  return oPreliminaryState;
138
141
  }
139
142
 
@@ -150,22 +153,23 @@ sap.ui.define([
150
153
 
151
154
  function setState(oState) {
152
155
  oPreliminaryState = oState;
153
- oControlAssignedPromise.then(function() {
156
+
157
+ // Wait for all managed controls to be initialized before applying state
158
+ oAllControlsInitializedPromise.then(function() {
159
+ bIsApplyingVariant = true;
154
160
  if (!oPreliminaryState) {
155
161
  // if no state is provided set default variant (not modified)
156
162
  // use cases:
157
163
  // - LR: if appStateKey in the URL that cannot be read
158
164
  // - OP: if switching to different object instance (in discovery mode always, in persistency mode when page was not shown)
159
165
  fnSetVariant(oSmartVariantManagement.getDefaultVariantId());
160
- return;
161
- }
162
- if (oPreliminaryState.modified) {
166
+ } else if (oPreliminaryState.modified) {
163
167
  // Special logic according to UX: If variant was modified anyway, there's no benefit for the user to see the name (but it could be confusing), so standard variant (not default!) should be
164
168
  // set (which is achieved by empty string)
165
169
  fnSetVariant("");
170
+ oSmartVariantManagement.currentVariantSetModified(true);
166
171
  // Usually restoring the state of any of the managed controls should mark the variant as dirty, but there might be edge cases (state from an old release not containing information for any
167
172
  // managed control now relevant), so to be on the safe side, we set modified=true explicitly.
168
- oSmartVariantManagement.currentVariantSetModified(true);
169
173
  fnSetManagedControlStates(oPreliminaryState);
170
174
  } else {
171
175
  fnSetVariant(oPreliminaryState.variantId);
@@ -183,6 +187,7 @@ sap.ui.define([
183
187
  }
184
188
  }
185
189
  }
190
+ bIsApplyingVariant = false;
186
191
  });
187
192
  }
188
193
 
@@ -190,26 +195,30 @@ sap.ui.define([
190
195
  // state of variant management itself can be changed directly (user selects a different variant or stores current state as (new) variant), or indirectly (user changes some
191
196
  // data of a control managed by VM, e.g. some filter values in SFB)
192
197
 
193
- oControlAssignedPromise.then(function() {
194
- // state change when user selects a different variant
195
- oSmartVariantManagement.attachSelect(fnHandler);
198
+ // Wrap the handler to suppress events when applying a variant
199
+ var fnSuppressibleHandler = function() {
200
+ if (!bIsApplyingVariant) {
201
+ fnHandler();
202
+ }
203
+ };
196
204
 
197
- // when user saves current state as a new variant, this is also a state change (as the variant id is part of the state)
198
- // note: Even if new (SFB) variant is marked as execute on select, and currently no data is selected, no need to select data here (and thus also not to collapse header).
199
- // This is one of the possible ways to get into a state with a clean variant with execute on select, but no data loaded - see also comment to identify SFB wrapper.
200
- oSmartVariantManagement.attachAfterSave(fnHandler);
205
+ // state change when user selects a different variant
206
+ oSmartVariantManagement.attachSelect(fnSuppressibleHandler);
201
207
 
202
- // any change of a managed control is state change
203
- mParams.managedControlWrappers.forEach(function(oWrapper){
204
- oWrapper.attachStateChanged(fnHandler);
205
- });
208
+ // when user saves current state as a new variant, this is also a state change (as the variant id is part of the state)
209
+ // note: Even if new (SFB) variant is marked as execute on select, and currently no data is selected, no need to select data here (and thus also not to collapse header).
210
+ // This is one of the possible ways to get into a state with a clean variant with execute on select, but no data loaded - see also comment to identify SFB wrapper.
211
+ oSmartVariantManagement.attachAfterSave(fnSuppressibleHandler);
212
+
213
+ // any change of a managed control is state change
214
+ mParams.managedControlWrappers.forEach(function(oWrapper){
215
+ oWrapper.attachStateChanged(fnSuppressibleHandler);
206
216
  });
207
217
  }
208
218
 
209
219
  return {
210
220
  getState : getState,
211
221
  setState : setState,
212
- setControl: fnSetControl,
213
222
  attachStateChanged : attachStateChanged
214
223
  };
215
224
  }
@@ -964,7 +964,7 @@ sap.ui.define([
964
964
  * @public
965
965
  * @extends sap.ui.core.UIComponent
966
966
  * @author SAP SE
967
- * @version 1.136.14
967
+ * @version 1.136.16
968
968
  * @name sap.suite.ui.generic.template.lib.AppComponent
969
969
  */
970
970
  var oAppComponent = UIComponent.extend("sap.suite.ui.generic.template.lib.AppComponent", {
@@ -190,6 +190,15 @@ sap.ui.define([
190
190
  var getHandler = function(bEnabled){
191
191
  return bEnabled && oConfiguration.executeAction.bind(null, oFocusInfo, oToolbarControlData, oButton);
192
192
  };
193
+ /**
194
+ * Skip if the action is unbound (doesn't require selection), i.e. no sap:action-for annotation is available.
195
+ * Currently, we just check for any sap:action-for annotation. To be correct, we might need to check whether the action is bound to the entity set of the table, esp.
196
+ * in case of function imports added to line items used on the object page, but bound to the parent entity set, e.g. a function import to create a child entity.
197
+ */
198
+ var oFunctionImport = oController.getOwnerComponent().getModel().getMetaModel().getODataFunctionImport(oToolbarControlData.Action);
199
+ if (oFunctionImport && !oFunctionImport["sap:action-for"]) {
200
+ return;
201
+ }
193
202
  // Check whether the action should be enabled
194
203
  var oEnablementInfo = oCommonUtils.getToolbarActionEnablementInfo(oToolbarControlData, oFocusInfo.applicableContexts, oSourceControl);
195
204
  // If the "oEnablementInfo" contains "enabledPromise", wait till the promise fulfilled and return the handler
@@ -269,9 +269,9 @@ NOITEMS_SMARTTABLE_WITH_FILTER_FOR_SEGMENTEDBUTTON=EiRivej\u00E4ValSuodPerJaTaul
269
269
 
270
270
  NOITEMS_SMARTCHART=Tietoja ei l\u00F6ytynyt.
271
271
 
272
- NOITEMS_LR_SMARTCHART=EiTietValSuodPerJaKaavN\u00E4kVart
272
+ NOITEMS_LR_SMARTCHART=Ei tietoja valitulla suodatinperusteella ja kaavion\u00E4kym\u00E4ll\u00E4.
273
273
 
274
- NOITEMS_SMARTCHART_WITH_FILTER=TietEiL\u00F6ydy. YrS\u00E4\u00E4tSuodParam.
274
+ NOITEMS_SMARTCHART_WITH_FILTER=Tietoja ei l\u00F6ytynyt. Yrit\u00E4 s\u00E4\u00E4t\u00E4\u00E4 suodatusperusteita.
275
275
 
276
276
  SMARTCHART_INITIAL_NODATA=Aloita asettamalla suodattimet ja valitsemalla "Aloita".
277
277
 
@@ -49,13 +49,13 @@ ST_STREAM_TYPE_MISMATCH=Le type de fichier s\u00E9lectionn\u00E9 n'est pas pris
49
49
 
50
50
  ST_DRAFT_OWNER=par {0}
51
51
 
52
- ST_DRAFT_ANOTHER_USER=d'un autre utilisateur
52
+ ST_DRAFT_ANOTHER_USER=par un autre utilisateur
53
53
 
54
54
  DATA_PASTE_ERROR_MESSAGE=Impossible de coller. {0} \u00E9l\u00E9ments contiennent des donn\u00E9es non valides.
55
55
 
56
56
  DATA_PASTE_ERROR_CORRECTION_MESSAGE=Corrigez les valeurs indiqu\u00E9es ci-dessous dans votre fichier source.
57
57
 
58
- DATA_PASTE_ERROR_CORRECTION_NOTE=(Note \: ligne/colonne indique la position dans l'ensemble des donn\u00E9es qu vous avez copi\u00E9.)
58
+ DATA_PASTE_ERROR_CORRECTION_NOTE=(Note \: La ligne/colonne indique la position dans l'ensemble des donn\u00E9es que vous avez copi\u00E9.)
59
59
 
60
60
  DATA_PASTE_UNSUPPORTED_FORMAT_MESSAGE=Coller indisponible pour cette table.
61
61
 
@@ -1,5 +1,5 @@
1
1
 
2
- ST_GENERIC_DRAFT_WITH_ACTIVE_DOCUMENT_DELETED=\u041F\u0440\u043E\u043C\u0435\u043D\u0438\u0442\u0435 \u0441\u0435 \u043E\u0442\u0444\u0440\u043B\u0435\u043D\u0438
2
+ ST_GENERIC_DRAFT_WITH_ACTIVE_DOCUMENT_DELETED=\u041F\u0440\u043E\u043C\u0435\u043D\u0438\u0442\u0435 \u0441\u0435 \u0437\u0430\u043D\u0435\u043C\u0430\u0440\u0435\u043D\u0438
3
3
 
4
4
  ST_GENERIC_DRAFT_WITHOUT_ACTIVE_DOCUMENT_DELETED=\u041D\u0430\u0446\u0440\u0442\u043E\u0442 \u0435 \u043E\u0442\u0444\u0440\u043B\u0435\u043D
5
5
 
@@ -273,7 +273,7 @@ NOITEMS_LR_SMARTCHART=Er zijn geen gegevens voor de geselecteerde filtercriteria
273
273
 
274
274
  NOITEMS_SMARTCHART_WITH_FILTER=Geen gegevens gevonden. Pas de filterparameters aan.
275
275
 
276
- SMARTCHART_INITIAL_NODATA=Stel relevante filters in en select. "Start" om te starten.
276
+ SMARTCHART_INITIAL_NODATA=Stel relevante filters in en selecteer "Start" om te starten.
277
277
 
278
278
  NOITEMS_LR_SMARTTABLE=Geen gegevens gevonden.
279
279
 
@@ -9,7 +9,7 @@ ST_GENERIC_ERROR_LOAD_DATA_TEXT=\u0417\u0430\u043F\u0440\u043E\u0448\u0435\u043D
9
9
 
10
10
  ST_GENERIC_NO_ITEM_SELECTED=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u043E\u0437\u0438\u0446\u0438\u044E
11
11
 
12
- ST_GENERIC_MULTIPLE_ITEMS_SELECTED=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u043E\u043B\u044C\u043A\u043E \u043E\u0434\u0438\u043D \u044D\u043B\u0435\u043C\u0435\u043D\u0442.
12
+ ST_GENERIC_MULTIPLE_ITEMS_SELECTED=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u043E\u043B\u044C\u043A\u043E \u043E\u0434\u043D\u0443 \u043F\u043E\u0437\u0438\u0446\u0438\u044E.
13
13
 
14
14
  ST_DATA_LOSS_TECHNICAL_ERROR_DISCARD=\u0418\u0437-\u0437\u0430 \u0442\u0435\u0445\u043D\u0438\u0447\u0435\u0441\u043A\u043E\u0439 \u043E\u0448\u0438\u0431\u043A\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u043D\u0435 \u0431\u044B\u043B\u0438 \u043F\u0440\u0438\u043C\u0435\u043D\u0435\u043D\u044B. \u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0438 \u0432\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043D\u0430 \u043F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0443\u044E \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443?
15
15
 
@@ -261,11 +261,11 @@ NEW_OBJECT=\u041D\u043E\u0432\u044B\u0439 \u043E\u0431\u044A\u0435\u043A\u0442
261
261
 
262
262
  UNNAMED_OBJECT=\u041E\u0431\u044A\u0435\u043A\u0442 \u0431\u0435\u0437 \u0438\u043C\u0435\u043D\u0438
263
263
 
264
- NOITEMS_SMARTTABLE=\u042D\u043B\u0435\u043C\u0435\u043D\u0442\u044B \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B.
264
+ NOITEMS_SMARTTABLE=\u041F\u043E\u0437\u0438\u0446\u0438\u0438 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B.
265
265
 
266
- NOITEMS_SMARTTABLE_WITH_FILTER=\u042D\u043B\u0435\u043C\u0435\u043D\u0442\u044B \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u043F\u043E\u0438\u0441\u043A\u0430 \u0438\u043B\u0438 \u0444\u0438\u043B\u044C\u0442\u0440\u0430.
266
+ NOITEMS_SMARTTABLE_WITH_FILTER=\u041F\u043E\u0437\u0438\u0446\u0438\u0438 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u043F\u043E\u0438\u0441\u043A\u0430 \u0438\u043B\u0438 \u0444\u0438\u043B\u044C\u0442\u0440\u0430.
267
267
 
268
- NOITEMS_SMARTTABLE_WITH_FILTER_FOR_SEGMENTEDBUTTON=\u041D\u0435\u0442 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432 \u0434\u043B\u044F \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0445 \u043A\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u0432 \u0444\u0438\u043B\u044C\u0442\u0440\u0430 \u0438 \u0440\u0430\u043A\u0443\u0440\u0441\u0430 \u0442\u0430\u0431\u043B\u0438\u0446\u044B.
268
+ NOITEMS_SMARTTABLE_WITH_FILTER_FOR_SEGMENTEDBUTTON=\u041D\u0435\u0442 \u043F\u043E\u0437\u0438\u0446\u0438\u0439 \u0434\u043B\u044F \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0445 \u043A\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u0432 \u0444\u0438\u043B\u044C\u0442\u0440\u0430 \u0438 \u0440\u0430\u043A\u0443\u0440\u0441\u0430 \u0442\u0430\u0431\u043B\u0438\u0446\u044B.
269
269
 
270
270
  NOITEMS_SMARTCHART=\u0414\u0430\u043D\u043D\u044B\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B.
271
271
 
@@ -287,7 +287,7 @@ ST_GENERIC_DELETE_WITH_WARNING_SUGGESTION_PLURAL=\u041F\u043E\u0434\u0441\u043A\
287
287
 
288
288
  ST_GENERIC_NOT_DELETED_RECORDS=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u0443\u0434\u0430\u043B\u0438\u0442\u044C {0} \u0438\u0437 {1} \u043E\u0431\u044A\u0435\u043A\u0442\u043E\u0432.
289
289
 
290
- ST_GENERIC_DELETE_ERROR_PLURAL=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043D\u0435\u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0445 \u043A\u0430\u0436\u0434\u044B\u0439 \u043F\u043E \u043E\u0442\u0434\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u0438.
290
+ ST_GENERIC_DELETE_ERROR_PLURAL=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043D\u0435\u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u043F\u043E\u0437\u0438\u0446\u0438\u0438. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0445 \u043F\u043E \u043E\u0442\u0434\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u0438.
291
291
 
292
292
  ST_GENERIC_NOT_PROCESSED_RECORDS=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C {0} \u0438\u0437 {1} \u043E\u0431\u044A\u0435\u043A\u0442\u043E\u0432.
293
293
 
@@ -3206,7 +3206,7 @@ sap.ui.define(["sap/ui/base/Object",
3206
3206
  * @param {sap.suite.ui.generic.template.lib.AppComponent} oAppComponent The AppComponent instance
3207
3207
  * @public
3208
3208
  * @extends sap.ui.base.Object
3209
- * @version 1.136.14
3209
+ * @version 1.136.16
3210
3210
  * @since 1.30.0
3211
3211
  * @alias sap.suite.ui.generic.template.lib.NavigationController
3212
3212
  */
@@ -66,7 +66,7 @@ sap.ui.define([
66
66
  interfaces: [],
67
67
  controls: [],
68
68
  elements: [],
69
- version: "1.136.14",
69
+ version: "1.136.16",
70
70
  extensions: {
71
71
  //Configuration used for rule loading of Support Assistant
72
72
  "sap.ui.support": {