@sapui5/sap.suite.ui.generic.template 1.94.0 → 1.96.2

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 (280) 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/control/SmartKpiTag.js +2 -2
  4. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/FilterItemMicroChart.js +86 -49
  5. package/src/sap/suite/ui/generic/template/AnalyticalListPage/control/visualfilterbar/SmartVisualFilterBar.js +1 -29
  6. package/src/sap/suite/ui/generic/template/AnalyticalListPage/controller/ControllerImplementation.js +18 -17
  7. package/src/sap/suite/ui/generic/template/AnalyticalListPage/controller/VisualFilterDialogController.js +0 -35
  8. package/src/sap/suite/ui/generic/template/AnalyticalListPage/extensionAPI/ExtensionAPI.js +2 -2
  9. package/src/sap/suite/ui/generic/template/AnalyticalListPage/i18n/i18n.properties +25 -1
  10. package/src/sap/suite/ui/generic/template/AnalyticalListPage/util/FilterUtil.js +29 -11
  11. package/src/sap/suite/ui/generic/template/AnalyticalListPage/view/fragments/IconTabBarWithSmartTable.fragment.xml +1 -1
  12. package/src/sap/suite/ui/generic/template/ListReport/Component.js +51 -21
  13. package/src/sap/suite/ui/generic/template/ListReport/controller/ControllerImplementation.js +214 -202
  14. package/src/sap/suite/ui/generic/template/ListReport/controller/IappStateHandler.js +247 -146
  15. package/src/sap/suite/ui/generic/template/ListReport/controller/LegacyStateHandler.js +35 -2
  16. package/src/sap/suite/ui/generic/template/ListReport/controller/MultiEditHandler.js +74 -57
  17. package/src/sap/suite/ui/generic/template/ListReport/controller/MultipleViewsHandler.js +23 -30
  18. package/src/sap/suite/ui/generic/template/ListReport/controller/WorklistHandler.js +32 -93
  19. package/src/sap/suite/ui/generic/template/ListReport/controllerFrameworkExtensions.js +34 -4
  20. package/src/sap/suite/ui/generic/template/ListReport/extensionAPI/ExtensionAPI.js +6 -3
  21. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n.properties +5 -2
  22. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ar.properties +3 -1
  23. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_bg.properties +3 -1
  24. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ca.properties +5 -3
  25. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cs.properties +3 -1
  26. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_cy.properties +3 -1
  27. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_da.properties +3 -1
  28. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_de.properties +3 -1
  29. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_el.properties +3 -1
  30. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en.properties +3 -1
  31. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_GB.properties +3 -1
  32. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_US_sappsd.properties +3 -1
  33. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_US_saprigi.properties +3 -1
  34. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_en_US_saptrc.properties +3 -1
  35. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es.properties +3 -1
  36. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_es_MX.properties +3 -1
  37. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_et.properties +3 -1
  38. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fi.properties +3 -1
  39. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr.properties +3 -1
  40. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_fr_CA.properties +3 -1
  41. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hi.properties +3 -1
  42. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hr.properties +3 -1
  43. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_hu.properties +3 -1
  44. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_id.properties +3 -1
  45. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_it.properties +3 -1
  46. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_iw.properties +3 -1
  47. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ja.properties +3 -1
  48. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_kk.properties +3 -1
  49. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ko.properties +3 -1
  50. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lt.properties +3 -1
  51. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_lv.properties +3 -1
  52. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ms.properties +3 -1
  53. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_nl.properties +3 -1
  54. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_no.properties +3 -1
  55. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pl.properties +4 -2
  56. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt.properties +3 -1
  57. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_pt_PT.properties +3 -1
  58. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ro.properties +3 -1
  59. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_ru.properties +3 -1
  60. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sh.properties +3 -1
  61. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sk.properties +3 -1
  62. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sl.properties +3 -1
  63. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_sv.properties +5 -3
  64. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_th.properties +4 -2
  65. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_tr.properties +3 -1
  66. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_uk.properties +3 -1
  67. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_vi.properties +3 -1
  68. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_CN.properties +3 -1
  69. package/src/sap/suite/ui/generic/template/ListReport/i18n/i18n_zh_TW.properties +3 -1
  70. package/src/sap/suite/ui/generic/template/ListReport/view/ListReport.view.xml +10 -0
  71. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/CRUDActionButtons.fragment.xml +1 -1
  72. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/IconTabBarWithSmartTable.fragment.xml +15 -5
  73. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/MultiEditDialog.fragment.xml +36 -11
  74. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/{MultipleViewsSingleTableModeItemCustomData.fragment.xml → MultipleViewsItemCustomData.fragment.xml} +8 -4
  75. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/MultipleViewsSingleTableMode.fragment.xml +2 -2
  76. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartChart.fragment.xml +0 -2
  77. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartTable.fragment.xml +4 -10
  78. package/src/sap/suite/ui/generic/template/ListReport/view/fragments/SmartTableToolbar.fragment.xml +0 -8
  79. package/src/sap/suite/ui/generic/template/ObjectPage/controller/ControllerImplementation.js +596 -418
  80. package/src/sap/suite/ui/generic/template/ObjectPage/controller/MultipleViewsHandler.js +1 -1
  81. package/src/sap/suite/ui/generic/template/ObjectPage/extensionAPI/ExtensionAPI.js +2 -2
  82. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n.properties +3 -0
  83. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ar.properties +3 -1
  84. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_bg.properties +2 -0
  85. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ca.properties +2 -0
  86. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cs.properties +3 -1
  87. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_cy.properties +2 -0
  88. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_da.properties +2 -0
  89. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_de.properties +2 -0
  90. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_el.properties +2 -0
  91. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en.properties +2 -0
  92. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_GB.properties +2 -0
  93. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_US_sappsd.properties +2 -0
  94. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_US_saprigi.properties +2 -0
  95. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_en_US_saptrc.properties +2 -0
  96. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_es.properties +2 -0
  97. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_es_MX.properties +2 -0
  98. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_et.properties +2 -0
  99. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fi.properties +2 -0
  100. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fr.properties +5 -3
  101. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_fr_CA.properties +2 -0
  102. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hi.properties +2 -0
  103. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hr.properties +2 -0
  104. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_hu.properties +2 -0
  105. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_id.properties +2 -0
  106. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_it.properties +2 -0
  107. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_iw.properties +2 -0
  108. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ja.properties +2 -0
  109. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_kk.properties +2 -0
  110. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ko.properties +2 -0
  111. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_lt.properties +2 -0
  112. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_lv.properties +2 -0
  113. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ms.properties +2 -0
  114. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_nl.properties +2 -0
  115. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_no.properties +2 -0
  116. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pl.properties +2 -0
  117. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pt.properties +5 -3
  118. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_pt_PT.properties +2 -0
  119. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ro.properties +2 -0
  120. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_ru.properties +2 -0
  121. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sh.properties +2 -0
  122. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sk.properties +2 -0
  123. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sl.properties +2 -0
  124. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_sv.properties +2 -0
  125. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_th.properties +2 -0
  126. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_tr.properties +2 -0
  127. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_uk.properties +2 -0
  128. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_vi.properties +2 -0
  129. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_zh_CN.properties +2 -0
  130. package/src/sap/suite/ui/generic/template/ObjectPage/i18n/i18n_zh_TW.properties +2 -0
  131. package/src/sap/suite/ui/generic/template/ObjectPage/templateSpecificPreparationHelper.js +50 -2
  132. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartForm.fragment.xml +6 -2
  133. package/src/sap/suite/ui/generic/template/ObjectPage/view/fragments/SmartTable.fragment.xml +4 -5
  134. package/src/sap/suite/ui/generic/template/changeHandler/AddFilterItem.js +1 -1
  135. package/src/sap/suite/ui/generic/template/changeHandler/AddFooterActionButton.js +1 -1
  136. package/src/sap/suite/ui/generic/template/changeHandler/AddGroup.js +1 -1
  137. package/src/sap/suite/ui/generic/template/changeHandler/AddGroupElement.js +1 -1
  138. package/src/sap/suite/ui/generic/template/changeHandler/AddHeaderActionButton.js +1 -1
  139. package/src/sap/suite/ui/generic/template/changeHandler/AddHeaderFacet.js +1 -1
  140. package/src/sap/suite/ui/generic/template/changeHandler/AddSection.js +1 -1
  141. package/src/sap/suite/ui/generic/template/changeHandler/AddSubSection.js +1 -1
  142. package/src/sap/suite/ui/generic/template/changeHandler/AddTableColumn.js +1 -1
  143. package/src/sap/suite/ui/generic/template/changeHandler/AddToolbarActionButton.js +1 -1
  144. package/src/sap/suite/ui/generic/template/changeHandler/MoveFilterItems.js +1 -1
  145. package/src/sap/suite/ui/generic/template/changeHandler/MoveGroup.js +1 -1
  146. package/src/sap/suite/ui/generic/template/changeHandler/MoveGroupElement.js +1 -1
  147. package/src/sap/suite/ui/generic/template/changeHandler/MoveHeaderAndFooterActionButton.js +1 -1
  148. package/src/sap/suite/ui/generic/template/changeHandler/MoveHeaderFacet.js +1 -1
  149. package/src/sap/suite/ui/generic/template/changeHandler/MoveSection.js +1 -1
  150. package/src/sap/suite/ui/generic/template/changeHandler/MoveSubSection.js +1 -1
  151. package/src/sap/suite/ui/generic/template/changeHandler/MoveTableColumns.js +1 -1
  152. package/src/sap/suite/ui/generic/template/changeHandler/MoveToolbarActionButtons.js +1 -1
  153. package/src/sap/suite/ui/generic/template/changeHandler/RemoveFilterItem.js +1 -1
  154. package/src/sap/suite/ui/generic/template/changeHandler/RemoveGroup.js +1 -1
  155. package/src/sap/suite/ui/generic/template/changeHandler/RemoveGroupElement.js +1 -1
  156. package/src/sap/suite/ui/generic/template/changeHandler/RemoveHeaderAndFooterActionButton.js +1 -1
  157. package/src/sap/suite/ui/generic/template/changeHandler/RemoveHeaderFacet.js +1 -1
  158. package/src/sap/suite/ui/generic/template/changeHandler/RemoveSection.js +1 -1
  159. package/src/sap/suite/ui/generic/template/changeHandler/RemoveSubSection.js +1 -1
  160. package/src/sap/suite/ui/generic/template/changeHandler/RemoveTableColumn.js +1 -1
  161. package/src/sap/suite/ui/generic/template/changeHandler/RemoveToolbarActionButton.js +1 -1
  162. package/src/sap/suite/ui/generic/template/changeHandler/RevealFilterItem.js +1 -1
  163. package/src/sap/suite/ui/generic/template/changeHandler/RevealHeaderFacet.js +1 -1
  164. package/src/sap/suite/ui/generic/template/changeHandler/RevealTableColumn.js +1 -1
  165. package/src/sap/suite/ui/generic/template/changeHandler/RevealToolbarActionButton.js +1 -1
  166. package/src/sap/suite/ui/generic/template/changeHandler/generic/AddElement.js +1 -1
  167. package/src/sap/suite/ui/generic/template/changeHandler/generic/MoveElements.js +1 -1
  168. package/src/sap/suite/ui/generic/template/changeHandler/generic/RemoveElement.js +1 -1
  169. package/src/sap/suite/ui/generic/template/changeHandler/generic/RevealElement.js +1 -1
  170. package/src/sap/suite/ui/generic/template/changeHandler/util/AnnotationPropertyCommand.js +1 -1
  171. package/src/sap/suite/ui/generic/template/designtime/utils/DesigntimeUtils.js +2 -1
  172. package/src/sap/suite/ui/generic/template/detailTemplates/PaginatorButtonsHelper.js +2 -2
  173. package/src/sap/suite/ui/generic/template/detailTemplates/detailUtils.js +3 -2
  174. package/src/sap/suite/ui/generic/template/extensionAPI/extensionAPI.js +2 -1
  175. package/src/sap/suite/ui/generic/template/fragments/CreateWithDialog.fragment.xml +3 -0
  176. package/src/sap/suite/ui/generic/template/fragments/DataLoss.fragment.xml +2 -2
  177. package/src/sap/suite/ui/generic/template/fragments/DataLossTechnicalError.fragment.xml +4 -4
  178. package/src/sap/suite/ui/generic/template/fragments/GridTableCells.fragment.xml +10 -32
  179. package/src/sap/suite/ui/generic/template/fragments/HeaderContactWithDetailsPopover.fragment.xml +3 -5
  180. package/src/sap/suite/ui/generic/template/fragments/HeaderFormDataField.fragment.xml +4 -4
  181. package/src/sap/suite/ui/generic/template/fragments/SmartFormDataField.fragment.xml +5 -5
  182. package/src/sap/suite/ui/generic/template/fragments/TableCell.fragment.xml +2 -3
  183. package/src/sap/suite/ui/generic/template/fragments/TreeTableColumns.fragment.xml +3 -4
  184. package/src/sap/suite/ui/generic/template/genericUtilities/ControlStateWrapperFactory.js +6 -2
  185. package/src/sap/suite/ui/generic/template/genericUtilities/controlHelper.js +1 -0
  186. package/src/sap/suite/ui/generic/template/genericUtilities/controlStateWrapperFactory/SearchFieldWrapper.js +30 -0
  187. package/src/sap/suite/ui/generic/template/js/AnnotationHelper.js +8 -26
  188. package/src/sap/suite/ui/generic/template/js/QuickTemplates/QuickTemplateComponentFactory.js +3 -2
  189. package/src/sap/suite/ui/generic/template/js/staticChecksHelper.js +10 -1
  190. package/src/sap/suite/ui/generic/template/lib/AppComponent.js +10 -6
  191. package/src/sap/suite/ui/generic/template/lib/Application.js +18 -10
  192. package/src/sap/suite/ui/generic/template/lib/BusyHelper.js +19 -4
  193. package/src/sap/suite/ui/generic/template/lib/CRUDHelper.js +10 -10
  194. package/src/sap/suite/ui/generic/template/lib/CRUDManager.js +48 -16
  195. package/src/sap/suite/ui/generic/template/lib/CommonEventHandlers.js +124 -143
  196. package/src/sap/suite/ui/generic/template/lib/CommonUtils.js +70 -285
  197. package/src/sap/suite/ui/generic/template/lib/ComponentUtils.js +6 -20
  198. package/src/sap/suite/ui/generic/template/lib/ContextBookkeeping.js +13 -6
  199. package/src/sap/suite/ui/generic/template/lib/CreateWithDialogHandler.js +171 -147
  200. package/src/sap/suite/ui/generic/template/lib/DataLossHandler.js +12 -11
  201. package/src/sap/suite/ui/generic/template/lib/FlexibleColumnLayoutHandler.js +14 -3
  202. package/src/sap/suite/ui/generic/template/lib/MessageButtonHelper.js +1 -1
  203. package/src/sap/suite/ui/generic/template/lib/MessageUtils.js +5 -48
  204. package/src/sap/suite/ui/generic/template/lib/PageLeaveHandler.js +19 -27
  205. package/src/sap/suite/ui/generic/template/lib/StableIdDefinition.js +16 -5
  206. package/src/sap/suite/ui/generic/template/lib/TemplateAssembler.js +5 -3
  207. package/src/sap/suite/ui/generic/template/lib/TemplateComponent.js +3 -14
  208. package/src/sap/suite/ui/generic/template/lib/i18n/i18n.properties +18 -15
  209. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ar.properties +9 -7
  210. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_bg.properties +9 -7
  211. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ca.properties +27 -25
  212. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cs.properties +9 -7
  213. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_cy.properties +9 -7
  214. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_da.properties +9 -7
  215. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_de.properties +9 -7
  216. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_el.properties +9 -7
  217. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en.properties +9 -7
  218. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_GB.properties +9 -7
  219. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_sappsd.properties +9 -7
  220. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_saprigi.properties +9 -7
  221. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_en_US_saptrc.properties +9 -7
  222. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es.properties +10 -8
  223. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_es_MX.properties +9 -7
  224. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_et.properties +9 -7
  225. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fi.properties +8 -6
  226. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr.properties +9 -7
  227. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_fr_CA.properties +9 -7
  228. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hi.properties +9 -7
  229. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hr.properties +9 -7
  230. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_hu.properties +9 -7
  231. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_id.properties +9 -7
  232. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_it.properties +9 -7
  233. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_iw.properties +9 -7
  234. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ja.properties +10 -8
  235. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_kk.properties +9 -7
  236. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ko.properties +9 -7
  237. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lt.properties +9 -7
  238. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_lv.properties +8 -6
  239. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ms.properties +9 -7
  240. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_nl.properties +9 -7
  241. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_no.properties +9 -7
  242. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pl.properties +9 -7
  243. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt.properties +10 -8
  244. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_pt_PT.properties +9 -7
  245. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ro.properties +9 -7
  246. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_ru.properties +9 -7
  247. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sh.properties +9 -7
  248. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sk.properties +8 -6
  249. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sl.properties +9 -7
  250. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_sv.properties +9 -7
  251. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_th.properties +9 -7
  252. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_tr.properties +9 -7
  253. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_uk.properties +8 -6
  254. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_vi.properties +9 -7
  255. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_CN.properties +9 -7
  256. package/src/sap/suite/ui/generic/template/lib/i18n/i18n_zh_TW.properties +9 -7
  257. package/src/sap/suite/ui/generic/template/lib/multipleViews/MultipleTablesModeHelper.js +62 -80
  258. package/src/sap/suite/ui/generic/template/lib/multipleViews/MultipleViewsHandler.js +39 -45
  259. package/src/sap/suite/ui/generic/template/lib/multipleViews/SingleTableModeHelper.js +0 -6
  260. package/src/sap/suite/ui/generic/template/lib/navigation/NavigationController.js +145 -81
  261. package/src/sap/suite/ui/generic/template/lib/navigation/routingHelper.js +50 -4
  262. package/src/sap/suite/ui/generic/template/lib/presentationControl/PresentationControlHandlerFactory.js +163 -0
  263. package/src/sap/suite/ui/generic/template/lib/presentationControl/SmartChartHandler.js +119 -0
  264. package/src/sap/suite/ui/generic/template/lib/presentationControl/SmartListHandler.js +54 -0
  265. package/src/sap/suite/ui/generic/template/lib/presentationControl/SmartTableHandler.js +178 -0
  266. package/src/sap/suite/ui/generic/template/library.js +1 -1
  267. package/src/sap/suite/ui/generic/template/listTemplates/controller/DetailController.js +1 -1
  268. package/src/sap/suite/ui/generic/template/listTemplates/controller/IappStateHandler.js +54 -5
  269. package/src/sap/suite/ui/generic/template/listTemplates/controller/MultipleViewsHandler.js +78 -22
  270. package/src/sap/suite/ui/generic/template/listTemplates/controller/SmartChartController.js +2 -2
  271. package/src/sap/suite/ui/generic/template/listTemplates/fragments/DetailSmartTable.fragment.xml +1 -7
  272. package/src/sap/suite/ui/generic/template/listTemplates/fragments/SmartTableToolbar.fragment.xml +1 -1
  273. package/src/sap/suite/ui/generic/template/listTemplates/semanticDateRangeTypeHelper.js +1 -1
  274. package/src/sap/suite/ui/generic/template/support/DiagnosticsTool/DiagnosticsTool.js +30 -23
  275. package/src/sap/suite/ui/generic/template/themes/sap_horizon/ObjectPage.less +25 -0
  276. package/src/sap/suite/ui/generic/template/themes/sap_horizon/library.source.less +5 -0
  277. package/ui5.yaml +8 -0
  278. package/src/sap/suite/ui/generic/template/ListReport/controller/SmartListHandler.js +0 -45
  279. package/src/sap/suite/ui/generic/template/ListReport/controller/SmartTableHandler.js +0 -53
  280. package/src/sap/suite/ui/generic/template/ListReport/controller/SmartTableOrListHandler.js +0 -33
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapui5/sap.suite.ui.generic.template",
3
- "version": "1.94.0",
3
+ "version": "1.96.2",
4
4
  "description": "SAPUI5 Library sap.suite.ui.generic.template",
5
5
  "homepage": "https://sap.github.io/ui5-tooling/pages/SAPUI5/",
6
6
  "author": "SAP SE (https://www.sap.com)",
@@ -7,7 +7,7 @@
7
7
 
8
8
  (c) Copyright 2009-2015 SAP SE. All rights reserved
9
9
  </copyright>
10
- <version>1.94.0</version>
10
+ <version>1.96.2</version>
11
11
 
12
12
  <documentation>Library with generic Suite UI templates.</documentation>
13
13
 
@@ -222,7 +222,7 @@ sap.ui.define([
222
222
  if (this.getEntitySet() === this._oSmartFilter.getEntitySet()) {
223
223
  bIsSameEntitySet = true;
224
224
  //to check all the mandatory fields are filled in SFB
225
- if (!FilterUtil.checkManditoryFieldsFilled(this._oSmartFilter)) {
225
+ if (!FilterUtil.checkManditoryFieldsFilled(this._oSmartFilter).bIsMandatoryFilter) {
226
226
  this._mandatoryfieldsErrorHandler(false, false, true);
227
227
  return;
228
228
  }
@@ -384,7 +384,7 @@ sap.ui.define([
384
384
  }
385
385
  //Check for mandatory values for KPI entityset than main entityset with matching fields
386
386
  if (!bIsSameEntitySet || !bIsDiffEntSetWithNoMatchFields) {
387
- if (!FilterUtil.checkManditoryFieldsFilled(this._oSmartFilter)) {
387
+ if (!FilterUtil.checkManditoryFieldsFilled(this._oSmartFilter).bIsMandatoryFilter) {
388
388
  this._mandatoryfieldsErrorHandler(false, false, true);
389
389
  return;
390
390
  }
@@ -83,15 +83,17 @@ sap.ui.define([
83
83
  FilterItemChart.prototype._shortRefNumber;
84
84
  FilterItemChart.prototype._isTriggeredBySync = false;
85
85
  FilterItemChart.prototype._multiUnit = false;
86
- FilterItemChart.prototype.technicalIssueMessage = "TECHNICAL_ISSUES_OVERLAY_MESSAGE";
86
+ FilterItemChart.prototype.technicalIssueMessage = "M_VISUAL_FILTERS_ERROR_DATA_TEXT";
87
87
  FilterItemChart.prototype.noDataIssueMessage = "NO_DATA_FOUND_OVERLAY_MESSAGE";
88
- FilterItemChart.prototype.requiredFilterMessage = "REQUIRED_FIELDS_OVERLAY_MESSAGE";
89
- FilterItemChart.prototype.multipleCurrencyMessage = "MULTIPLE_CURRENCY_OVERLAY_MESSAGE";
90
- FilterItemChart.prototype.multipleUnitMessage = "MULTIPLE_UNIT_OVERLAY_MESSAGE";
91
- FilterItemChart.prototype.hiddenMeasureMessage = "HIDDEN_MEASURE_OVERLAY_MESSAGE";
88
+ // FilterItemChart.prototype.requiredFilterMessage = "REQUIRED_FIELDS_OVERLAY_MESSAGE";
89
+ FilterItemChart.prototype.multipleCurrencyMessage = "M_VISUAL_FILTERS_MULTIPLE_CURRENCY";
90
+ FilterItemChart.prototype.multipleUnitMessage = "M_VISUAL_FILTERS_MULTIPLE_UNIT";
91
+ FilterItemChart.prototype.hiddenMeasureMessage = "M_VISUAL_FILTER_HIDDEN_MEASURE";
92
92
  FilterItemChart.prototype.invalidMeasureForDonutMessage = "INVALID_MEASURE_DONUT_MESSAGE";
93
93
  FilterItemChart.prototype.valuehelpAllMandatoryFilters = {};
94
94
  FilterItemChart.prototype.oDataQueryOptions = ["$select", "$top", "$expand", "$inlinecount", "$orderby", "$filter", "$skip", "$format"];
95
+ FilterItemChart.prototype.missingMandatoryField = "M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF";
96
+ FilterItemChart.prototype.missingMultipleMandatoryFields = "M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF";
95
97
 
96
98
  FilterItemChart.prototype.init = function() {
97
99
  this._bAllowBindingUpdateOnPropertyChange = false;
@@ -105,7 +107,8 @@ sap.ui.define([
105
107
  if (me._getChartAggregations().length) {
106
108
  // if multi unit show overlay
107
109
  if (me._multiUnit) {
108
- me.applyOverlay(me.getIsCurrency() ? me.multipleCurrencyMessage : me.multipleUnitMessage);
110
+ var dimLabel = FilterUtil.getPropertyNameDisplay(me.getModel(), me.getEntitySet(), me.getDimensionField(), me.getModel("@i18n"));
111
+ me.applyOverlay((me.getIsCurrency() ? me.multipleCurrencyMessage : me.multipleUnitMessage), dimLabel);
109
112
  if (me.data("isDialogFilterItem") === "true") {
110
113
  FilterUtil._updateVisualFilterAria(me.getParent().getParent());
111
114
  }
@@ -159,8 +162,12 @@ sap.ui.define([
159
162
  var oSFBParams = oSmartFilterBar.getEntitySet() === entitySet ? oSmartFilterBar.getAnalyticalParameters() : [];
160
163
  var aSVSelectOptions = this.getSelectFilters() && this.getSelectFilters().SelectOptions;
161
164
  var bSearchable = this.checkSearchable(oModel, entitySet, oSmartFilterBar, aSVParameters, aSVSelectOptions);
162
- if (!bSearchable) {
163
- this.applyOverlay(this.requiredFilterMessage);
165
+ if (bSearchable.aMandatoryFilter.length === 1) {
166
+ this.applyOverlay(this.missingMandatoryField, bSearchable.aMandatoryFilter[0]);
167
+ return;
168
+ }
169
+ if (!bSearchable.bIsMandatoryFilter) {
170
+ this.applyOverlay(this.missingMultipleMandatoryFields);
164
171
  return;
165
172
  }
166
173
  if (aSVParameters) {
@@ -417,9 +424,16 @@ sap.ui.define([
417
424
  return;
418
425
  }
419
426
  if (this._determineHiddenVisualFilter(oMetaModel, entityName, measureField)) {
420
- this.applyOverlay(this.hiddenMeasureMessage);
427
+ var measureLabel = FilterUtil.getPropertyNameDisplay(oModel, entityName, measureField, this.getModel("@i18n"));
428
+ this.applyOverlay(this.hiddenMeasureMessage, measureLabel);
421
429
  return;
422
430
  }
431
+ if (unitField) {
432
+ var unitFieldText = FilterUtil.getUnitFieldText(this.getModel(), entityName, unitField);
433
+ if (unitFieldText && FilterUtil.IsNavigationProperty(this.getModel(), entityName, unitFieldText)) {
434
+ var navPropertyForUnitField = unitFieldText.split("/")[0];
435
+ }
436
+ }
423
437
  //Non Accumulative measure will not be supported for Donut chart. Bringing up the overlay in this case
424
438
  if (bIsChartDonut) {
425
439
  if (this._determineIfInvalidMeasure(oMetaModel, entityName, measureField)) {
@@ -430,7 +444,7 @@ sap.ui.define([
430
444
  var selectFields = [measureField, dimField],
431
445
  navProperty = FilterUtil.IsNavigationProperty(this.getModel(), entityName, dimFieldDisplay) ? dimFieldDisplay.split("/")[0] : null,
432
446
  aNavigationPropertyKeys = FilterUtil.getKeysForNavigationEntitySet(oMetaModel, this.getEntitySet(), navProperty),
433
- selectFields = FilterUtil.getVisualFilterSelectFields(measureField, dimField, dimFieldDisplay, unitField, aSortFields, aNavigationPropertyKeys);
447
+ selectFields = FilterUtil.getVisualFilterSelectFields(measureField, dimField, dimFieldDisplay, unitField, aSortFields, aNavigationPropertyKeys, unitFieldText);
434
448
  //filter defined for donut chart total read call
435
449
  var filtersForTotal = (bIsChartDonut && this._inParameterFilterList && this._inParameterFilterList.aFilters && this._inParameterFilterList.aFilters.length) ? [this._inParameterFilterList] : [];
436
450
  var filterList = [];
@@ -517,19 +531,19 @@ sap.ui.define([
517
531
  }
518
532
  }
519
533
  });
520
- this._updateBindingInfo(oDataBindingInfo, selectFields, aRelativeToProperties, count, oExtensionContext, navProperty, bIsChartDonut);
534
+ this._updateBindingInfo(oDataBindingInfo, selectFields, aRelativeToProperties, count, oExtensionContext, navProperty, navPropertyForUnitField, bIsChartDonut);
521
535
 
522
536
  this._fetchData(oVisualFilterModel, sBindingPath, oDataBindingInfo, bIsChartDonut);
523
537
  } else { //for donut chart
524
538
  //update binding info for total data call
525
- this._updateBindingInfo(oDataBindingInfo, [measureField], aRelativeToProperties, 1, oExtensionContext, navProperty, bIsChartDonut, true, filtersForTotal);
539
+ this._updateBindingInfo(oDataBindingInfo, [measureField], aRelativeToProperties, 1, oExtensionContext, navProperty, navPropertyForUnitField, bIsChartDonut, true, filtersForTotal);
526
540
  var oTotalDataPromise = this._fetchData(oVisualFilterModel, sBindingPath, oDataBindingInfo, bIsChartDonut, true, oDatapoint);
527
541
 
528
542
  //setting filters of binding info to filter list as update binding info will change the object while updating fot total data read call
529
543
  oDataBindingInfo.filters = filterList;
530
544
 
531
545
  //updating binding info for top4 data call
532
- this._updateBindingInfo(oDataBindingInfo, selectFields, aRelativeToProperties, 4, oExtensionContext, navProperty, bIsChartDonut, false);
546
+ this._updateBindingInfo(oDataBindingInfo, selectFields, aRelativeToProperties, 4, oExtensionContext, navProperty, navPropertyForUnitField, bIsChartDonut, false);
533
547
  var oTop4DataPromise = this._fetchData(oVisualFilterModel, sBindingPath, oDataBindingInfo, bIsChartDonut, false, oDatapoint);
534
548
 
535
549
  // jQuery.when either waits for all promises to be resolved before executing handler, or
@@ -580,7 +594,7 @@ sap.ui.define([
580
594
  };
581
595
 
582
596
  //this function updates the Odata Binding info based on the chart type and return the updated object
583
- FilterItemChart.prototype._updateBindingInfo = function(oDataBindingInfo, selectFields, aRelativeToProperties, count, oExtensionContext, navProperty, bIsChartDonut, bToFetchTotalData, filtersForTotal) {
597
+ FilterItemChart.prototype._updateBindingInfo = function(oDataBindingInfo, selectFields, aRelativeToProperties, count, oExtensionContext, navProperty, navPropertyForUnitField, bIsChartDonut, bToFetchTotalData, filtersForTotal) {
584
598
  oDataBindingInfo.urlParameters = {
585
599
  "$select": aRelativeToProperties ? [aRelativeToProperties].concat(selectFields).join(",") : selectFields.join(","),
586
600
  "$top": count
@@ -600,6 +614,10 @@ sap.ui.define([
600
614
  extend(oDataBindingInfo.urlParameters, {"$expand": navProperty});
601
615
  }
602
616
 
617
+ if (bIsChartDonut ? (navPropertyForUnitField && !bToFetchTotalData) : navPropertyForUnitField) {
618
+ extend(oDataBindingInfo.urlParameters, {"$expand": navPropertyForUnitField});
619
+ }
620
+
603
621
  if (bIsChartDonut && (!bToFetchTotalData)) {
604
622
  //Only set if its a top4Data call
605
623
  oDataBindingInfo.sorters = this._sorters;
@@ -824,11 +842,23 @@ sap.ui.define([
824
842
  }
825
843
  prevUnit = unit;
826
844
  }
827
- this._applyUnitValue(this._multiUnit ? "" : prevUnit);
845
+ var unitFieldText = FilterUtil.getUnitFieldText(this.getModel(), this.getEntitySet(), unitField);
846
+ if (unitFieldText && FilterUtil.IsNavigationProperty(this.getModel(), this.getEntitySet(), unitFieldText)) {
847
+ var sUnitFieldText1 = unitFieldText.split("/")[0],
848
+ sUnitFieldText2 = unitFieldText.split("/")[1];
849
+ this._applyUnitValue(this._multiUnit ? "" : prevUnit + " (" + data[0][sUnitFieldText1][sUnitFieldText2] + ")");
850
+ return;
851
+ }
852
+ if (unitFieldText) {
853
+ unitFieldText = data[0][unitFieldText];
854
+ this._applyUnitValue(this._multiUnit ? "" : prevUnit + " (" + unitFieldText + ")");
828
855
  } else {
829
- // no unit field, so no unit displayed in title
830
- this._applyUnitValue("");
856
+ this._applyUnitValue(this._multiUnit ? "" : prevUnit);
831
857
  }
858
+ } else {
859
+ // no unit field, so no unit displayed in title
860
+ this._applyUnitValue("");
861
+ }
832
862
  };
833
863
  FilterItemChart.prototype._applyUnitValue = function(val) {
834
864
  if (this._lastUnitValue != val) {
@@ -1000,8 +1030,9 @@ sap.ui.define([
1000
1030
  return fixedInteger.format(parseFloat(value));
1001
1031
  };
1002
1032
 
1003
- FilterItemChart.prototype._getFormattedNumberWithUoM = function(value, UoM) {
1033
+ FilterItemChart.prototype._getFormattedNumberWithUoM = function(value, UoM, unitFieldText) {
1004
1034
  UoM = (UoM) ? UoM : "";
1035
+ unitFieldText = (unitFieldText) ? " (" + unitFieldText + ")" : "";
1005
1036
  //As per the documentation default locale is taken.
1006
1037
  var oLocale = sap.ui.getCore().getConfiguration().getFormatSettings().getFormatLocale();
1007
1038
  var formattedValue = NumberFormat.getFloatInstance({
@@ -1011,7 +1042,7 @@ sap.ui.define([
1011
1042
  oLocale
1012
1043
  ).format(value);
1013
1044
 
1014
- return (UoM === "%") ? formattedValue + "%" : formattedValue + " " + UoM;
1045
+ return (UoM === "%") ? formattedValue + "%" : formattedValue + " " + UoM + unitFieldText;
1015
1046
  };
1016
1047
 
1017
1048
  FilterItemChart.prototype._getDisplayedValue = function(value, sUnitFieldValue) {
@@ -1021,13 +1052,13 @@ sap.ui.define([
1021
1052
  return (bIsPercentage) ? nScaledValue + "%" : "" + nScaledValue;
1022
1053
  };
1023
1054
 
1024
- FilterItemChart.prototype._getToolTip = function(dimLabel, dimValue, unitField, color) {
1055
+ FilterItemChart.prototype._getToolTip = function(dimLabel, dimValue, unitField, unitFieldText, color) {
1025
1056
  var i18nModel = this.getModel("i18n");
1026
1057
  if (!i18nModel) {
1027
1058
  return "";
1028
1059
  }
1029
1060
  var rb = i18nModel.getResourceBundle();
1030
- var nFormattedNumberWithUoM = this._getFormattedNumberWithUoM(dimValue, unitField);
1061
+ var nFormattedNumberWithUoM = this._getFormattedNumberWithUoM(dimValue, unitField, unitFieldText);
1031
1062
  var color_translated;
1032
1063
  switch (color) {
1033
1064
  case "Good":
@@ -1200,9 +1231,11 @@ sap.ui.define([
1200
1231
  sDimFieldDisplay = this.getDimensionFieldDisplay(),
1201
1232
  sMeasureField = this.getMeasureField(),
1202
1233
  sUnitField = this.getUnitField(),
1234
+ sUnitFieldText = sUnitField && FilterUtil.getUnitFieldText(this.getModel(), this.getEntitySet(), sUnitField),
1203
1235
  aLabelParts = ( sDimField === sDimFieldDisplay ) ? [sDimFieldDisplay] : [sDimFieldDisplay, sDimField],
1204
1236
  aToolTipParts = ( sDimField === sDimFieldDisplay ) ? [sDimFieldDisplay, sMeasureField, ""] : [sDimFieldDisplay, sMeasureField, sDimField],
1205
1237
  aUnitFieldToolTipParts = sUnitField ? aToolTipParts.push(sUnitField) : aToolTipParts,
1238
+ aUnitFieldToolTipParts = sUnitFieldText ? aToolTipParts.push(sUnitFieldText) : aToolTipParts,
1206
1239
  me = this,
1207
1240
  oSettings = {
1208
1241
  label : {
@@ -1226,14 +1259,14 @@ sap.ui.define([
1226
1259
  },
1227
1260
  tooltip: {
1228
1261
  parts: aUnitFieldToolTipParts.constructor === Array ? aUnitFieldToolTipParts : aToolTipParts,
1229
- formatter: function(dimLabel, dimValue, sDimField, unitField) {
1262
+ formatter: function(dimLabel, dimValue, sDimField, unitField, unitFieldText) {
1230
1263
  //Convert false equivalent values (like undefined or null or NaN) to ""
1231
1264
  dimLabel = dimLabel || dimLabel === "" || dimLabel === 0 ? dimLabel : "";
1232
1265
  sDimField = sDimField || sDimField === "" || sDimField === 0 ? sDimField : "";
1233
1266
 
1234
1267
  sDimField = sDimField.constructor === Object ? "" : sDimField;
1235
1268
  dimLabel = me._getLabel(dimLabel, sDimField, false) || me._getI18nText("NOT_ASSIGNED");
1236
- return me._getToolTip(dimLabel, dimValue, unitField, this.getColor());
1269
+ return me._getToolTip(dimLabel, dimValue, unitField, unitFieldText, this.getColor());
1237
1270
  }
1238
1271
  },
1239
1272
  selected: {
@@ -1266,21 +1299,21 @@ sap.ui.define([
1266
1299
  * @param {string} sI18n i18n string for overlay message
1267
1300
  * @return {void}
1268
1301
  **/
1269
- FilterItemChart.prototype.applyOverlay = function(sI18n) {
1270
- var sPath = this.data("sPath");
1271
- if (sPath) {
1272
- var sShowOverlay = sPath + "/showChartOverlay";
1273
- var conFigModel = this.getModel('_visualFilterDialogModel') ? this.getModel('_visualFilterDialogModel') : this.getModel('_visualFilterConfigModel');
1274
- conFigModel.setProperty(sShowOverlay, (sI18n ? true : false));
1275
- if (sI18n) {
1276
- var sOverlayMessage = sPath + "/overlayMessage";
1277
- conFigModel.setProperty(sOverlayMessage, sI18n);
1278
- this.data("sOverlay", "true");
1279
- if (this.data("isDialogFilterItem") === "true") {
1280
- this.data("needsToUpdateAria", "true");
1281
- }
1282
- this.fireTitleChange();
1302
+ FilterItemChart.prototype.applyOverlay = function(sI18n, sLabel) {
1303
+ if (sI18n) {
1304
+ this._chart.setShowError(true);
1305
+ this._chart.setErrorMessageTitle(this._getI18nText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE"));
1306
+ this._chart.setErrorMessage(this.getModel("i18n").getResourceBundle().getText(sI18n, sLabel));
1307
+ this._chart.setBusy(false);
1308
+ this.data("sOverlay", "true");
1309
+ if (this.data("isDialogFilterItem") === "true") {
1310
+ this.data("needsToUpdateAria", "true");
1283
1311
  }
1312
+ this.fireTitleChange();
1313
+ } else {
1314
+ this._chart.setShowError(false);
1315
+ this._chart.setErrorMessageTitle("");
1316
+ this._chart.setErrorMessage("");
1284
1317
  }
1285
1318
  };
1286
1319
 
@@ -1348,10 +1381,14 @@ sap.ui.define([
1348
1381
  FilterItemChart.prototype.checkSearchable = function(oDataModel, oEntitySet, oSmartFilterBar, aParameters, aSVOptions) {
1349
1382
  var o4a = new oData4Analytics.Model(oData4Analytics.Model.ReferenceByModel(oDataModel));
1350
1383
  var queryResult = o4a.findQueryResultByName(oEntitySet);
1351
- var parameterization = queryResult && queryResult.getParameterization(), allParamsList = [], bSearchable = true;
1384
+ var parameterization = queryResult && queryResult.getParameterization(), allParamsList = [], bSearchable = { bIsMandatoryFilter: true };
1352
1385
  bSearchable = FilterUtil.checkManditoryFieldsFilled(oSmartFilterBar);
1353
- if (!bSearchable) {
1354
- FilterItemChart.prototype.requiredFilterMessage = "REQUIRED_FIELDS_OVERLAY_MESSAGE";
1386
+ if (bSearchable.aMandatoryFilter.length === 1) {
1387
+ FilterItemChart.prototype.missingMandatoryField = "M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF";
1388
+ return bSearchable;
1389
+ }
1390
+ if (!bSearchable.bIsMandatoryFilter) {
1391
+ FilterItemChart.prototype.missingMultipleMandatoryFields = "M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF";
1355
1392
  return bSearchable;
1356
1393
  }
1357
1394
  //if the collection path of the VF is a parameterized entity set
@@ -1374,9 +1411,9 @@ sap.ui.define([
1374
1411
  });
1375
1412
  });
1376
1413
  //required in case the last visual filter had overlay message of the main entity set
1377
- FilterItemChart.prototype.requiredFilterMessage = "REQUIRED_VH_FIELDS_OVERLAY_MESSAGE";
1414
+ FilterItemChart.prototype.missingMultipleMandatoryFields = "REQUIRED_VH_FIELDS_OVERLAY_MESSAGE";
1378
1415
  if (oSmartFilterBar.getEntitySet() === oEntitySet) {
1379
- FilterItemChart.prototype.requiredFilterMessage = "REQUIRED_FIELDS_OVERLAY_MESSAGE";
1416
+ FilterItemChart.prototype.missingMultipleMandatoryFields = "M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF";
1380
1417
  var oAllFilterData = oSmartFilterBar.getFilterData(true);
1381
1418
  //if collection path is the same as main entity set, then consider the param values set in SFB
1382
1419
  allMandatoryParameters.forEach(function(mParam) {
@@ -1387,38 +1424,38 @@ sap.ui.define([
1387
1424
  }
1388
1425
  //only if all parameters have values filled then the app is searchable
1389
1426
  if (allMandatoryParameters.length !== allParamsList.length) {
1390
- bSearchable = false;
1427
+ bSearchable.bIsMandatoryFilter = false;
1391
1428
  return bSearchable;
1392
1429
  }
1393
1430
  }
1394
1431
  // there could be mandatory filters (sap:required-in-filter = true) which have to b considered for the searchable state
1395
1432
  if (oSmartFilterBar.getEntitySet() === oEntitySet) {
1396
1433
  //required in case the last visual filter had overlay message of the valuehelp entity set and the current one is non-parameterized main entity set
1397
- FilterItemChart.prototype.requiredFilterMessage = "REQUIRED_FIELDS_OVERLAY_MESSAGE";
1434
+ FilterItemChart.prototype.missingMultipleMandatoryFields = "M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF";
1398
1435
  var allMandatoryFilters = oSmartFilterBar.determineMandatoryFilterItems();
1399
1436
  //API determineMandatoryFilters have both mandatory parameters and filters.
1400
1437
  //hence get only the mandatory filters
1401
1438
  var allMandatoryFilters = allMandatoryFilters.filter(function(elem) {
1402
1439
  return !elem._bIsParameter;
1403
1440
  });
1404
- bSearchable = allMandatoryFilters.every(function(mFilter) { //mandatory filters can be set via SV
1441
+ bSearchable.bIsMandatoryFilter = allMandatoryFilters.every(function(mFilter) { //mandatory filters can be set via SV
1405
1442
  return FilterUtil.checkFilterHasValueFromSelectionVariantOrSmartFilterBar(mFilter.getName(), mFilter.getName(), aSVOptions, oSmartFilterBar);
1406
1443
  });
1407
1444
  } else { //different VH entityset
1408
- FilterItemChart.prototype.requiredFilterMessage = "REQUIRED_VH_FIELDS_OVERLAY_MESSAGE";
1445
+ FilterItemChart.prototype.missingMultipleMandatoryFields = "REQUIRED_VH_FIELDS_OVERLAY_MESSAGE";
1409
1446
  var valuehelpMandatoryFiltersMapped;
1410
1447
  if (!FilterItemChart.prototype.valuehelpAllMandatoryFilters[oEntitySet]) { //first time
1411
1448
  FilterItemChart.prototype.valuehelpAllMandatoryFilters[oEntitySet] = FilterUtil.getAllMandatoryFilters(oDataModel, oEntitySet);
1412
1449
  }
1413
1450
  valuehelpMandatoryFiltersMapped = FilterUtil.getAllMandatoryFiltersMapping(FilterItemChart.prototype.valuehelpAllMandatoryFilters[oEntitySet], this.getInParameters());
1414
- bSearchable = valuehelpMandatoryFiltersMapped.aMappedFilterList.every(function(oFilter) { //mandatory filters can be set via SV or IN param
1451
+ bSearchable.bIsMandatoryFilter = valuehelpMandatoryFiltersMapped.aMappedFilterList.every(function(oFilter) { //mandatory filters can be set via SV or IN param
1415
1452
  return FilterUtil.checkFilterHasValueFromSelectionVariantOrSmartFilterBar(oFilter.valueListProperty, oFilter.localDataProperty, aSVOptions, oSmartFilterBar);
1416
1453
  });
1417
- if (!bSearchable) {
1454
+ if (!bSearchable.bIsMandatoryFilter) {
1418
1455
  return bSearchable;
1419
1456
  }
1420
1457
  //now for the IN mapping missing VH mandatory filters only
1421
- bSearchable = valuehelpMandatoryFiltersMapped.aMappingMissingFilterList.every(function(sFilter) { //mandatory filters can be set via SV
1458
+ bSearchable.bIsMandatoryFilter = valuehelpMandatoryFiltersMapped.aMappingMissingFilterList.every(function(sFilter) { //mandatory filters can be set via SV
1422
1459
  var bHasValue = aSVOptions && FilterUtil.checkFilterHasValueFromSelectionVariant(aSVOptions, sFilter);
1423
1460
  return bHasValue;
1424
1461
  });
@@ -446,32 +446,6 @@ sap.ui.define([
446
446
  items: [oToolbar]
447
447
  });
448
448
 
449
- var oHeaderOverlay = new VBox({
450
- width: "100%",
451
- height: this._cellItemHeightSouth,
452
- items: [
453
- new Text({
454
- width: this.cellWidth + "px",
455
- textAlign: SapCoreLibrary.TextAlign.Center,
456
- text: {
457
- path: '_visualFilterConfigModel>' + sPath + '/overlayMessage',
458
- formatter: function(sOverlayMessage) {
459
- return sOverlayMessage && this.getModel("i18n").getResourceBundle().getText(sOverlayMessage);
460
- }
461
- }
462
- })
463
- ],
464
- visible: {
465
- path: '_visualFilterConfigModel>' + sPath + '/showChartOverlay',
466
- formatter: function( bValue) {
467
- return bValue;
468
- }
469
- }
470
- });
471
-
472
- oHeaderOverlay.addStyleClass("sapUiOverlay");
473
- oHeaderOverlay.addStyleClass("sapSmartTemplatesAnalyticalListPageVFOverflow");
474
- oHeaderOverlay.addStyleClass("sapSmartTemplatesAnalyticalListPageVFOverflowCozy");
475
449
  var oHeaderChartBar = new VBox({
476
450
  height: this._cellItemHeightSouth,
477
451
  items: [oFilterItem],
@@ -503,13 +477,11 @@ sap.ui.define([
503
477
  width: (this.cellWidth + 16) + "px",//to fix focus issue temporarily
504
478
  items:[
505
479
  oHeaderTitleBar,
506
- oHeaderOverlay,
507
480
  oHeaderChartBar,
508
481
  oInvisibleText
509
482
  ]
510
483
  });
511
484
  oHeaderTitleBar.addStyleClass("sapSmartTemplatesAnalyticalListPageVFTitle");
512
- oHeaderOverlay.addStyleClass("sapSmartTemplatesAnalyticalListPageVFChart");
513
485
  oHeaderChartBar.addStyleClass("sapSmartTemplatesAnalyticalListPageVFChart");
514
486
  //firing onFilterItemAdded event every time a filter item is created
515
487
  this.fireOnFilterItemAdded(oFilterItem);
@@ -1046,7 +1018,7 @@ sap.ui.define([
1046
1018
  sText += " " + oResourceBundle.getText("VIS_FILTER_MANDATORY_PROPERTY_ARIA_LABEL");
1047
1019
  }
1048
1020
  if (sOverlay === "true") {
1049
- sText += " " + aItems[1].getItems()[0].getText();
1021
+ sText += " " + oResourceBundle.getText("M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE") + " " + oFilterItem._chart.getProperty("errorMessage");
1050
1022
  sText += " " + oResourceBundle.getText("VIS_FILTER_BAR_NAVIGATE_ARIA");
1051
1023
  } else {
1052
1024
  sText += " " + oResourceBundle.getText("VIS_FILTER_BAR_NAVIGATE_ARIA") + " " + oResourceBundle.getText("VIS_FILTER_ACCESS_FIELDS_ARIA");
@@ -215,7 +215,7 @@ sap.ui.define(["sap/ui/generic/app/navigation/service/SelectionVariant",
215
215
  var oEventParameters, oEventSource;
216
216
  oEventParameters = oEvent.getParameters();
217
217
  oEventSource = oEvent.getSource(); //set on semanticObjectController
218
- oTemplateUtils.oCommonEventHandlers.onSemanticObjectLinkNavigationTargetObtained(oEventSource, oEventParameters, oState, undefined, undefined);
218
+ oTemplateUtils.oCommonEventHandlers.onSemanticObjectLinkNavigationTargetObtained(oEventSource.getEntitySet(), oEventSource.getFieldSemanticObjectMap(), oEventParameters, oState, undefined, undefined);
219
219
  }
220
220
 
221
221
  function _getFilters(oSmartCtrl) {
@@ -480,7 +480,7 @@ sap.ui.define(["sap/ui/generic/app/navigation/service/SelectionVariant",
480
480
  }
481
481
  // Rebind table
482
482
  if (oState.oSmartTable) {
483
- oTemplateUtils.oCommonUtils.refreshSmartTable(oState.oSmartTable);
483
+ oTemplateUtils.oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oState.oSmartTable).refresh();
484
484
  }
485
485
  //Refresh Global Kpi
486
486
  if (oState.oKpiTagContainer) {
@@ -605,9 +605,7 @@ sap.ui.define(["sap/ui/generic/app/navigation/service/SelectionVariant",
605
605
  },
606
606
  addEntry: function(oEvent) {
607
607
  var oEventSource = oEvent.getSource();
608
- oTemplateUtils.oCommonUtils.fnProcessDataLossOrDraftDiscardConfirmation(function(){
609
608
  oTemplateUtils.oCommonEventHandlers.addEntry(oEventSource, false, oState.oSmartFilterbar);
610
- }, Function.prototype, oState);
611
609
  },
612
610
  deleteEntries: function(oEvent) {
613
611
  oTemplateUtils.oCommonEventHandlers.deleteEntries(oEvent);
@@ -627,7 +625,7 @@ sap.ui.define(["sap/ui/generic/app/navigation/service/SelectionVariant",
627
625
  var bAllLocked = true;
628
626
  var bAllNotDeletable = (sDeletablePath && sDeletablePath !== ""); // if Deletable-Path is undefined, then the items are deletable.
629
627
 
630
- var aContexts = oTemplateUtils.oCommonUtils.getSelectedContexts(oTable);
628
+ var aContexts = oTemplateUtils.oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oTemplateUtils.oCommonUtils.getOwnerPresentationControl(oTable)).getSelectedContexts();
631
629
  if (aContexts.length > 0) {
632
630
  for (var i = 0; i < aContexts.length; i++) {
633
631
  var oObject = oModel.getObject(aContexts[i].getPath());
@@ -767,13 +765,16 @@ sap.ui.define(["sap/ui/generic/app/navigation/service/SelectionVariant",
767
765
  oTemplateUtils.oCommonEventHandlers.onDataFieldWithIntentBasedNavigation(oEvent, oState);
768
766
  },
769
767
  onBeforeSemanticObjectLinkPopoverOpens: function(oEvent) {
770
- oTemplateUtils.oCommonUtils.fnProcessDataLossOrDraftDiscardConfirmation(function(){
771
- //Success function
772
- var sSelectionVariant = oState.oSmartFilterbar.getUiState({
773
- allFilters : false
774
- }).getSelectionVariant();
775
- oTemplateUtils.oCommonUtils.semanticObjectLinkNavigation(oEvent, sSelectionVariant, oController);
776
- }, Function.prototype, oState, Function.prototype);
768
+ var oSmartControl = oEvent.getSource();
769
+ var oSelectionVariant = oState.oSmartFilterbar.getUiState({
770
+ allFilters : false
771
+ }).getSelectionVariant();
772
+ //In case of Multiple View Applications, the filter context URL needs to be adjusted as the selected tab's context could be different from that of the filter context.
773
+ if (oState.oSmartFilterbar.getEntitySet() !== oSmartControl.getEntitySet()) {
774
+ oSelectionVariant.FilterContextUrl = oTemplateUtils.oServices.oApplication.getNavigationHandler().constructContextUrl(oSmartControl.getEntitySet(), oSmartControl.getModel());
775
+ }
776
+ var sSelectionVariant = JSON.stringify(oSelectionVariant);
777
+ oTemplateUtils.oCommonUtils.semanticObjectLinkNavigation(oEvent, sSelectionVariant, oController);
777
778
  },
778
779
  onAssignedFiltersChanged: function(oEvent) {
779
780
  if (oEvent && oEvent.getSource()) {
@@ -897,8 +898,8 @@ sap.ui.define(["sap/ui/generic/app/navigation/service/SelectionVariant",
897
898
  onDeterminingDataFieldForAction: function(oEvent) {
898
899
  var oTemplatePrivate = oState.oController.getOwnerComponent().getModel("_templPriv");
899
900
  var oContainerView = oTemplatePrivate.getProperty('/alp/contentView');
900
- var oContextContainer = (oContainerView === CONTAINER_VIEW_CHART) ? oState.oSmartChart : oState.oSmartTable;
901
- oTemplateUtils.oCommonEventHandlers.onDeterminingDataFieldForAction(oEvent, oContextContainer);
901
+ var oPresentationControlHandler = oTemplateUtils.oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oContainerView === CONTAINER_VIEW_CHART ? oState.oSmartChart : oState.oSmartTable);
902
+ oTemplateUtils.oCommonEventHandlers.onDeterminingDataFieldForAction(oEvent, oPresentationControlHandler);
902
903
  },
903
904
  /**
904
905
  * Called from Determining Button belonging to Table and Chart Annotation of type DataFieldForIntentBasedNavigation
@@ -908,15 +909,15 @@ sap.ui.define(["sap/ui/generic/app/navigation/service/SelectionVariant",
908
909
  var oButton = oEvent.getSource();
909
910
  var oTemplatePrivate = oState.oController.getOwnerComponent().getModel("_templPriv");
910
911
  var oContainerView = oTemplatePrivate.getProperty('/alp/contentView');
911
- var oContextContainer = (oContainerView === CONTAINER_VIEW_CHART) ? oState.oSmartChart : oState.oSmartTable.getTable();
912
- oTemplateUtils.oCommonEventHandlers.onDeterminingDataFieldForIntentBasedNavigation(oButton, oContextContainer, oState);
912
+ var aSelectedContexts = oTemplateUtils.oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oContainerView === CONTAINER_VIEW_CHART ? oState.oSmartChart : oState.oSmartTable).getSelectedContexts();
913
+ oTemplateUtils.oCommonEventHandlers.onDeterminingDataFieldForIntentBasedNavigation(oButton, aSelectedContexts, oState.oSmartFilterbar);
913
914
  },
914
915
  /**
915
916
  * onInlineDataFieldForAction Trigger the action as specified in the inline buttons
916
917
  * @param {Object} oEvent Event object
917
918
  */
918
919
  onInlineDataFieldForAction: function(oEvent) {
919
- oTemplateUtils.oCommonEventHandlers.onInlineDataFieldForAction(oEvent, oState);
920
+ oTemplateUtils.oCommonEventHandlers.onInlineDataFieldForAction(oEvent);
920
921
  },
921
922
  /**
922
923
  * onInlineDataFieldForIntentBasedNavigation Trigger the navigation as specified in the inline buttons
@@ -286,7 +286,6 @@ sap.ui.define([
286
286
  if (this.filterCompList[i].obj.shownInFilterDialog) {
287
287
  // Add toolbar and chart only if filters are visible
288
288
  this.filterCompList[i].toolbar = this._addChartCustomToolbar(this.oConfig.filterCompList[i], i);
289
- this.filterCompList[i].overlay = this._addChartOverlay(this.oConfig.filterCompList[i] , i);
290
289
  //this.filterChartList[i] = this._addChart(this.oConfig.filterCompList[i].component.type, this.oConfig.filterCompList[i].component.properties, i);
291
290
 
292
291
  var that = this,
@@ -314,7 +313,6 @@ sap.ui.define([
314
313
  new VBox({
315
314
  items: [
316
315
  that.filterCompList[i].toolbar,
317
- that.filterCompList[i].overlay,
318
316
  oFilterItemBox,
319
317
  oInvisibleText
320
318
  ]
@@ -405,39 +403,6 @@ sap.ui.define([
405
403
  //to enable Restore button on change of chart type, sort order, measure field and show in filter bar changes
406
404
  this.oState.oSmartFilterbar._oVariantManagement.currentVariantSetModified(true);
407
405
  },
408
- /**
409
- * Adds overlay in the filter dialog
410
- * @param {object} obj
411
- * @param {int} idx index in config object
412
- */
413
- _addChartOverlay: function(obj, idx) {
414
- var oHeaderOverlay = new VBox({
415
- width: "100%",
416
- height: obj.component.properties.height,
417
- items: [
418
- new Label({
419
- text : {
420
- path: '_visualFilterDialogModel>/filterCompList/' + idx + '/overlayMessage',
421
- formatter: function(sOverlayMessage) {
422
- return this.getModel("i18n").getResourceBundle().getText(sOverlayMessage);
423
- }
424
- },
425
- wrapping: true,
426
- textAlign: SapCoreLibrary.TextAlign.Center
427
- })
428
- ],
429
- visible: {
430
- path: '_visualFilterDialogModel>/filterCompList/' + idx + '/showChartOverlay',
431
- formatter: function( bValue) {
432
- return bValue;
433
- }
434
- }
435
- });
436
- oHeaderOverlay.addStyleClass("sapUiOverlay");
437
- oHeaderOverlay.addStyleClass("sapSmartTemplatesAnalyticalListPageVFOverflow");
438
- return oHeaderOverlay;
439
-
440
- },
441
406
 
442
407
  _formatTitle: function(titleObj, type){
443
408
  var rb = this.oVerticalBox.getModel("i18n").getResourceBundle();
@@ -26,7 +26,7 @@ sap.ui.define(["sap/ui/base/Object",
26
26
  if (sUiElementId) {
27
27
  oControl = oController.byId(sUiElementId);
28
28
  }
29
- return oTemplateUtils.oCommonUtils.getSelectedContexts(oControl);
29
+ return oTemplateUtils.oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oTemplateUtils.oCommonUtils.getOwnerPresentationControl(oControl)).getSelectedContexts();
30
30
  },
31
31
  /**
32
32
  * Triggers rebinding on the list
@@ -45,7 +45,7 @@ sap.ui.define(["sap/ui/base/Object",
45
45
  if (oState.oSmartTable) {
46
46
  //Filters from SmartChart should be considered by table
47
47
  oState.oController.getOwnerComponent().getModel("_templPriv").setProperty('/alp/_ignoreChartSelections', false);
48
- oTemplateUtils.oCommonUtils.refreshSmartTable(oState.oSmartTable);
48
+ oTemplateUtils.oServices.oPresentationControlHandlerFactory.getPresentationControlHandler(oState.oSmartTable).refresh();
49
49
  }
50
50
  },
51
51
  /**
@@ -207,6 +207,9 @@ CHARTTABLE_AUTOHIDE_ON=Show only items based on the chart selection
207
207
  # XBUT,50: shown as tooltip on toggle of the chart-table mode
208
208
  CHARTTABLE_AUTOHIDE_OFF=Show all Items
209
209
 
210
+ #YMSG, 100
211
+ M_VISUAL_FILTERS_ERROR_MESSAGE_TITLE=Unable to display filter
212
+
210
213
  #YMSG, 100
211
214
  MULTIPLE_UNIT_OVERLAY_MESSAGE=Refine filter to set single unit of measure.
212
215
 
@@ -219,6 +222,27 @@ NO_DATA_FOUND_OVERLAY_MESSAGE=No data found.
219
222
  #YMSG, 150
220
223
  REQUIRED_FIELDS_OVERLAY_MESSAGE=Unable to display this filter due to the missing mandatory fields.
221
224
 
225
+ #YMSG, 150
226
+ M_VISUAL_FILTERS_ERROR_DATA_TEXT=Unable to load data due to a technical issue.
227
+
228
+ #YMSG, 150
229
+ M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_SINGLEVF=Provide a filter value for {0}
230
+
231
+ #YMSG, 150
232
+ M_VISUAL_FILTERS_PROVIDE_FILTER_VAL_MULTIPLEVF=Provide filter values for all required fields.
233
+
234
+ #YMSG, 150
235
+ M_VISUAL_FILTERS_MULTIPLE_CURRENCY=To see this chart, set only one currency for {0}
236
+
237
+ #YMSG, 150
238
+ M_VISUAL_FILTERS_MULTIPLE_UNIT=To see this chart, set only one value for {0}
239
+
240
+ #YMSG, 150
241
+ M_VISUAL_FILTER_HIDDEN_MEASURE=Unable to load visual filter. Measure {0} is marked with UI.Hidden.
242
+
243
+ #YMSG, 150
244
+ M_VISUAL_FILTER_UNSUPPORTED_CHART_TYPE=Chart type is not supported for visual filters. Use a line chart or a bar chart.
245
+
222
246
  #YMSG, 150
223
247
  REQUIRED_VH_FIELDS_OVERLAY_MESSAGE=Unable to load data due to missing mandatory fields. Please contact your administrator.
224
248
 
@@ -229,7 +253,7 @@ TECHNICAL_ISSUES_OVERLAY_MESSAGE=Unable to retrieve data due to a technical issu
229
253
  HIDDEN_MEASURE_OVERLAY_MESSAGE=Unable to load visual filter due to a hidden measure.
230
254
 
231
255
  #YMSG, 100
232
- INVALID_MEASURE_DONUT_MESSAGE=Invalid measure found for this chart type. Ensure that the measure values are accumulative and positive.
256
+ INVALID_MEASURE_DONUT_MESSAGE=Invalid measure for a donut chart. Ensure that the measure is cumulative and positive.
233
257
 
234
258
  # XBUT,30: show as tooltip on share button
235
259
  SHARE=Share