diff --git a/apps/common/main/lib/component/Mixtbar.js b/apps/common/main/lib/component/Mixtbar.js index 7a40660a8..61d99d021 100644 --- a/apps/common/main/lib/component/Mixtbar.js +++ b/apps/common/main/lib/component/Mixtbar.js @@ -96,11 +96,13 @@ define([ '' + '' + '' + diff --git a/apps/common/main/lib/component/SynchronizeTip.js b/apps/common/main/lib/component/SynchronizeTip.js index 9ddedf973..d012a2d97 100644 --- a/apps/common/main/lib/component/SynchronizeTip.js +++ b/apps/common/main/lib/component/SynchronizeTip.js @@ -111,7 +111,9 @@ define([ } else if (this.placement == 'top') this.cmpEl.css({bottom : innerHeight - showxy.top + 'px', right: Common.Utils.innerWidth() - showxy.left - this.target.width()/2 + 'px'}); - else {// left or right + else if (this.placement == 'target') { + this.cmpEl.css({top : (showxy.top+5) + 'px', left: (showxy.left+5) + 'px'}); + } else {// left or right var top = showxy.top + this.target.height()/2, height = this.cmpEl.height(); if (top+height>innerHeight) diff --git a/apps/common/main/lib/component/Tab.js b/apps/common/main/lib/component/Tab.js index 5d61c243a..e7c644aaa 100644 --- a/apps/common/main/lib/component/Tab.js +++ b/apps/common/main/lib/component/Tab.js @@ -51,9 +51,15 @@ define([ this.active = false; this.label = 'Tab'; this.cls = ''; + this.iconCls = ''; + this.iconVisible = false; + this.iconTitle = ''; this.index = -1; - this.template = _.template(['
  • ', - '<%- label %>', + this.template = _.template(['
  • ', + '', + '
    ', + '<%- label %>', + '
    ', '
  • '].join('')); this.initialize.call(this, opts); @@ -126,6 +132,16 @@ define([ setCaption: function(text) { this.$el.find('> span').text(text); + }, + + changeIconState: function(visible, title) { + if (this.iconCls.length) { + this.iconVisible = visible; + this.iconTitle = title || ''; + this[visible ? 'addClass' : 'removeClass']('icon-visible'); + if (title) + this.$el.find('.' + this.iconCls).attr('title', title); + } } }); diff --git a/apps/common/main/lib/view/EditNameDialog.js b/apps/common/main/lib/view/EditNameDialog.js new file mode 100644 index 000000000..d4f6d4f51 --- /dev/null +++ b/apps/common/main/lib/view/EditNameDialog.js @@ -0,0 +1,127 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2020 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ +/** + * EditNameDialog.js + * + * Created by Julia Radzhabova on 10.07.2020 + * Copyright (c) 2020 Ascensio System SIA. All rights reserved. + * + */ + +define([ + 'common/main/lib/component/Window', + 'common/main/lib/component/InputField' +], function () { 'use strict'; + + Common.Views.EditNameDialog = Common.UI.Window.extend(_.extend({ + options: { + width: 330, + header: false, + cls: 'modal-dlg', + buttons: ['ok', 'cancel'] + }, + + initialize : function(options) { + _.extend(this.options, options || {}); + + this.template = [ + '
    ', + '
    ', + '', + '
    ', + '
    ', + '
    ' + ].join(''); + + this.options.tpl = _.template(this.template)(this.options); + + Common.UI.Window.prototype.initialize.call(this, this.options); + }, + + render: function() { + Common.UI.Window.prototype.render.call(this); + + var me = this; + me.inputLabel = new Common.UI.InputField({ + el : $('#id-dlg-label-caption'), + allowBlank : false, + blankError : me.options.error ? me.options.error : me.textLabelError, + style : 'width: 100%;', + validateOnBlur: false, + validation : function(value) { + return value ? true : ''; + } + }); + me.inputLabel.setValue(this.options.value || '' ); + + var $window = this.getChild(); + $window.find('.btn').on('click', _.bind(this.onBtnClick, this)); + }, + + show: function() { + Common.UI.Window.prototype.show.apply(this, arguments); + + var me = this; + _.delay(function(){ + me.getChild('input').focus(); + },50); + }, + + onPrimary: function(event) { + this._handleInput('ok'); + return false; + }, + + onBtnClick: function(event) { + this._handleInput(event.currentTarget.attributes['result'].value); + }, + + _handleInput: function(state) { + if (this.options.handler) { + if (state == 'ok') { + if (this.inputLabel.checkValidate() !== true) { + this.inputLabel.cmpEl.find('input').focus(); + return; + } + } + + this.options.handler.call(this, state, this.inputLabel.getValue()); + } + + this.close(); + }, + + textLabel: 'Label:', + textLabelError: 'Label must not be empty.' + }, Common.Views.EditNameDialog || {})); +}); \ No newline at end of file diff --git a/apps/common/main/lib/view/Header.js b/apps/common/main/lib/view/Header.js index 4f00bebb7..013d52043 100644 --- a/apps/common/main/lib/view/Header.js +++ b/apps/common/main/lib/view/Header.js @@ -664,9 +664,11 @@ define([ fakeMenuItem: function() { return { - conf: {checked: false}, + conf: {checked: false, disabled: false}, setChecked: function (val) { this.conf.checked = val; }, - isChecked: function () { return this.conf.checked; } + isChecked: function () { return this.conf.checked; }, + setDisabled: function (val) { this.conf.disabled = val; }, + isDisabled: function () { return this.conf.disabled; } }; }, diff --git a/apps/common/main/lib/view/SymbolTableDialog.js b/apps/common/main/lib/view/SymbolTableDialog.js index 452dae9a3..82fbd02b3 100644 --- a/apps/common/main/lib/view/SymbolTableDialog.js +++ b/apps/common/main/lib/view/SymbolTableDialog.js @@ -489,9 +489,18 @@ define([ var init = (aFontSelects.length<1); init && this.initFonts(); + //fill recents + this.fillRecentSymbols(); + + var lastfont; if (options.font) { + lastfont = options.font; + } else if (aRecents.length>0) { + lastfont = aRecents[0].font; + } + if (lastfont) { for(var i = 0; i < aFontSelects.length; ++i){ - if(aFontSelects[i].displayValue === options.font){ + if(aFontSelects[i].displayValue === lastfont){ nCurrentFont = i; break; } @@ -526,6 +535,8 @@ define([ nCurrentSymbol = options.code; } else if (options.symbol) { nCurrentSymbol = this.fixedCharCodeAt(options.symbol, 0); + } else if (aRecents.length>0) { + nCurrentSymbol = aRecents[0].symbol; } if (init && this.options.lang && this.options.lang != 'en') { @@ -539,6 +550,8 @@ define([ this.on('resizing', _.bind(this.onWindowResizing, this)); this.on('resize', _.bind(this.onWindowResize, this)); + + bMainFocus = true; }, initFonts: function() { @@ -705,9 +718,6 @@ define([ me.updateInput(); }); - //fill recents - this.fillRecentSymbols(); - this.symbolTablePanel = $window.find('#symbol-table-scrollable-div'); this.previewPanel = $window.find('#id-preview-data'); this.previewParent = this.previewPanel.parent(); @@ -822,7 +832,7 @@ define([ this.options.handler.call(this, this, state, settings); } if (state=='ok') { - !special && settings.updateRecents && this.checkRecent(nCurrentSymbol, settings.font); + !special && this.checkRecent(nCurrentSymbol, settings.font); !special && settings.updateRecents && this.updateRecents(); if (this.type) return; @@ -1050,7 +1060,7 @@ define([ this._handleInput('ok'); else { var settings = this.getPasteSymbol($(e.target).attr('id')); - settings.updateRecents && this.checkRecent(nCurrentSymbol, settings.font); + this.checkRecent(nCurrentSymbol, settings.font); settings.updateRecents && this.updateView(false, undefined, undefined, true); this.fireEvent('symbol:dblclick', this, 'ok', settings); } diff --git a/apps/common/main/resources/less/synchronize-tip.less b/apps/common/main/resources/less/synchronize-tip.less index 921310553..205c3595e 100644 --- a/apps/common/main/resources/less/synchronize-tip.less +++ b/apps/common/main/resources/less/synchronize-tip.less @@ -23,6 +23,16 @@ } } + &.no-arrow { + .tip-arrow { + display: none; + } + + .asc-synchronizetip { + padding-right: 30px; + } + } + &.inc-index { z-index: @zindex-navbar + 4; } diff --git a/apps/documenteditor/main/app/controller/Links.js b/apps/documenteditor/main/app/controller/Links.js index 5e52e1e46..661e67e2e 100644 --- a/apps/documenteditor/main/app/controller/Links.js +++ b/apps/documenteditor/main/app/controller/Links.js @@ -47,7 +47,8 @@ define([ 'documenteditor/main/app/view/TableOfContentsSettings', 'documenteditor/main/app/view/BookmarksDialog', 'documenteditor/main/app/view/CaptionDialog', - 'documenteditor/main/app/view/NotesRemoveDialog' + 'documenteditor/main/app/view/NotesRemoveDialog', + 'documenteditor/main/app/view/CrossReferenceDialog' ], function () { 'use strict'; @@ -69,7 +70,8 @@ define([ 'links:notes': this.onNotesClick, 'links:hyperlink': this.onHyperlinkClick, 'links:bookmarks': this.onBookmarksClick, - 'links:caption': this.onCaptionClick + 'links:caption': this.onCaptionClick, + 'links:crossref': this.onCrossRefClick }, 'DocumentHolder': { 'links:contents': this.onTableContents, @@ -154,12 +156,15 @@ define([ this._state.in_object = in_image || in_table || in_equation; var control_props = this.api.asc_IsContentControl() ? this.api.asc_GetContentControlProperties() : null, - control_plain = (control_props) ? (control_props.get_ContentControlType()==Asc.c_oAscSdtLevelType.Inline) : false; + control_plain = (control_props) ? (control_props.get_ContentControlType()==Asc.c_oAscSdtLevelType.Inline) : false, + lock_type = control_props ? control_props.get_Lock() : Asc.c_oAscSdtLockType.Unlocked, + content_locked = lock_type==Asc.c_oAscSdtLockType.SdtContentLocked || lock_type==Asc.c_oAscSdtLockType.ContentLocked; var rich_del_lock = (frame_pr) ? !frame_pr.can_DeleteBlockContentControl() : false, rich_edit_lock = (frame_pr) ? !frame_pr.can_EditBlockContentControl() : false, plain_del_lock = (frame_pr) ? !frame_pr.can_DeleteInlineContentControl() : false, plain_edit_lock = (frame_pr) ? !frame_pr.can_EditInlineContentControl() : false; + var need_disable = paragraph_locked || in_equation || in_image || in_header || control_plain || rich_edit_lock || plain_edit_lock; this.view.btnsNotes.setDisabled(need_disable); @@ -171,6 +176,10 @@ define([ need_disable = in_header; this.view.btnCaption.setDisabled(need_disable); + + need_disable = paragraph_locked || header_locked || control_plain || rich_edit_lock || plain_edit_lock || content_locked; + this.view.btnCrossRef.setDisabled(need_disable); + this.dlgCrossRefDialog && this.dlgCrossRefDialog.isVisible() && this.dlgCrossRefDialog.setLocked(need_disable); }, onApiCanAddHyperlink: function(value) { @@ -443,6 +452,24 @@ define([ onShowContentControlsActions: function(obj, x, y) { (obj.type == Asc.c_oAscContentControlSpecificType.TOC) && this.onShowTOCActions(obj, x, y); + }, + + onCrossRefClick: function(btn) { + if (this.dlgCrossRefDialog && this.dlgCrossRefDialog.isVisible()) return; + + var me = this; + me.dlgCrossRefDialog = new DE.Views.CrossReferenceDialog({ + api: me.api, + crossRefProps: me.crossRefProps, + handler: function (result, settings) { + if (result != 'ok') + Common.NotificationCenter.trigger('edit:complete', me.toolbar); + } + }); + me.dlgCrossRefDialog.on('close', function(obj){ + me.crossRefProps = me.dlgCrossRefDialog.getSettings(); + }); + me.dlgCrossRefDialog.show(); } }, DE.Controllers.Links || {})); diff --git a/apps/documenteditor/main/app/controller/Toolbar.js b/apps/documenteditor/main/app/controller/Toolbar.js index 5880f473f..8bccdbc2f 100644 --- a/apps/documenteditor/main/app/controller/Toolbar.js +++ b/apps/documenteditor/main/app/controller/Toolbar.js @@ -60,7 +60,8 @@ define([ 'documenteditor/main/app/view/WatermarkSettingsDialog', 'documenteditor/main/app/view/CompareSettingsDialog', 'documenteditor/main/app/view/ListSettingsDialog', - 'documenteditor/main/app/view/DateTimeDialog' + 'documenteditor/main/app/view/DateTimeDialog', + 'documenteditor/main/app/view/LineNumbersDialog' ], function () { 'use strict'; @@ -101,7 +102,9 @@ define([ pgmargins: undefined, fontsize: undefined, in_equation: false, - in_chart: false + in_chart: false, + linenum_apply: Asc.c_oAscSectionApplyType.All, + suppress_num: undefined }; this.flg = {}; this.diagramEditor = null; @@ -334,6 +337,8 @@ define([ toolbar.btnInsertSymbol.on('click', _.bind(this.onInsertSymbolClick, this)); toolbar.mnuNoControlsColor.on('click', _.bind(this.onNoControlsColor, this)); toolbar.mnuControlsColorPicker.on('select', _.bind(this.onSelectControlsColor, this)); + toolbar.btnLineNumbers.menu.on('item:click', _.bind(this.onLineNumbersSelect, this)); + toolbar.btnLineNumbers.menu.on('show:after', _.bind(this.onLineNumbersShow, this)); Common.Gateway.on('insertimage', _.bind(this.insertImage, this)); Common.Gateway.on('setmailmergerecipients', _.bind(this.setMailMergeRecipients, this)); $('#id-toolbar-menu-new-control-color').on('click', _.bind(this.onNewControlsColor, this)); @@ -385,6 +390,7 @@ define([ this.api.asc_registerCallback('asc_onMathTypes', _.bind(this.onApiMathTypes, this)); this.api.asc_registerCallback('asc_onColumnsProps', _.bind(this.onColumnsProps, this)); this.api.asc_registerCallback('asc_onSectionProps', _.bind(this.onSectionProps, this)); + this.api.asc_registerCallback('asc_onLineNumbersProps', _.bind(this.onLineNumbersProps, this)); this.api.asc_registerCallback('asc_onContextMenu', _.bind(this.onContextMenu, this)); this.api.asc_registerCallback('asc_onShowParaMarks', _.bind(this.onShowParaMarks, this)); this.api.asc_registerCallback('asc_onChangeSdtGlobalSettings', _.bind(this.onChangeSdtGlobalSettings, this)); @@ -886,6 +892,10 @@ define([ toolbar.btnWatermark.setDisabled(header_locked); + if (frame_pr) { + this._state.suppress_num = !!frame_pr.get_SuppressLineNumbers(); + } + this._state.in_equation = in_equation; }, @@ -1674,6 +1684,67 @@ define([ Common.NotificationCenter.trigger('edit:complete', this.toolbar); }, + onLineNumbersSelect: function(menu, item) { + if (_.isUndefined(item.value)) + return; + + switch (item.value) { + case 0: + this.api.asc_SetLineNumbersProps(this._state.linenum_apply, null); + break; + case 1: + case 2: + case 3: + this._state.linenum = undefined; + if (this.api && item.checked) { + var props = new Asc.CSectionLnNumType(); + props.put_Restart(item.value==1 ? Asc.c_oAscLineNumberRestartType.Continuous : (item.value==2 ? Asc.c_oAscLineNumberRestartType.NewPage : Asc.c_oAscLineNumberRestartType.NewSection)); + this.api.asc_SetLineNumbersProps(this._state.linenum_apply, props); + } + break; + case 4: + this.api && this.api.asc_SetParagraphSuppressLineNumbers(item.checked); + break; + case 5: + var win, + me = this; + win = new DE.Views.LineNumbersDialog({ + applyTo: me._state.linenum_apply, + handler: function(dlg, result) { + if (result == 'ok') { + var settings = dlg.getSettings(); + me.api.asc_SetLineNumbersProps(settings.type, settings.props); + me._state.linenum_apply = settings.type; + Common.NotificationCenter.trigger('edit:complete', me.toolbar); + } + } + }); + win.show(); + win.setSettings(me.api.asc_GetLineNumbersProps()); + break; + } + Common.NotificationCenter.trigger('edit:complete', this.toolbar); + }, + + onLineNumbersProps: function(props) { + var index = 0; + if (props) { + switch (props.get_Restart()) { + case Asc.c_oAscLineNumberRestartType.Continuous: index = 1; break; + case Asc.c_oAscLineNumberRestartType.NewPage: index = 2; break; + case Asc.c_oAscLineNumberRestartType.NewSection: index = 3; break; + } + } + if (this._state.linenum === index) + return; + this.toolbar.btnLineNumbers.menu.items[index].setChecked(true); + this._state.linenum = index; + }, + + onLineNumbersShow: function(menu) { + menu.items[4].setChecked(this._state.suppress_num); + }, + onColorSchemaClick: function(menu, item) { if (this.api) { this.api.asc_ChangeColorSchemeByIdx(item.value); @@ -2589,7 +2660,8 @@ define([ if (this.dlgSymbolTable && this.dlgSymbolTable.isVisible()) return; if (this.api) { - var me = this; + var me = this, + selected = me.api.asc_GetSelectedText(); me.dlgSymbolTable = new Common.Views.SymbolTableDialog({ api: me.api, lang: me.mode.lang, @@ -2597,6 +2669,8 @@ define([ type: 1, special: true, showShortcutKey: true, + font: selected && selected.length>0 ? this.api.get_TextProps().get_TextPr().get_FontFamily().get_Name() : undefined, + symbol: selected && selected.length>0 ? selected.charAt(0) : undefined, buttons: [{value: 'ok', caption: this.textInsert}, 'close'], handler: function(dlg, result, settings) { if (result == 'ok') { diff --git a/apps/documenteditor/main/app/template/ParagraphSettingsAdvanced.template b/apps/documenteditor/main/app/template/ParagraphSettingsAdvanced.template index 8fa069f2c..99fcd8786 100644 --- a/apps/documenteditor/main/app/template/ParagraphSettingsAdvanced.template +++ b/apps/documenteditor/main/app/template/ParagraphSettingsAdvanced.template @@ -79,6 +79,11 @@
    + + +
    + + diff --git a/apps/documenteditor/main/app/template/Toolbar.template b/apps/documenteditor/main/app/template/Toolbar.template index e154cb48b..535edf885 100644 --- a/apps/documenteditor/main/app/template/Toolbar.template +++ b/apps/documenteditor/main/app/template/Toolbar.template @@ -130,6 +130,7 @@ +
    @@ -158,6 +159,7 @@ +
    diff --git a/apps/documenteditor/main/app/view/CrossReferenceDialog.js b/apps/documenteditor/main/app/view/CrossReferenceDialog.js new file mode 100644 index 000000000..cfc5b6f61 --- /dev/null +++ b/apps/documenteditor/main/app/view/CrossReferenceDialog.js @@ -0,0 +1,459 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2020 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * + */ + +/** + * CrossReferenceDialog.js + * + * Created by Julia Radzhabova on 22.09.2020 + * Copyright (c) 2020 Ascensio System SIA. All rights reserved. + * + */ +define([ + 'common/main/lib/component/Window', + 'common/main/lib/component/ComboBox' +], function () { 'use strict'; + + DE.Views.CrossReferenceDialog = Common.UI.Window.extend(_.extend({ + options: { + width: 400, + height: 407, + style: 'min-width: 240px;', + cls: 'modal-dlg', + modal: false + }, + + initialize : function(options) { + _.extend(this.options, { + title: this.txtTitle, + buttons: [{value: 'ok', caption: this.textInsert}, 'close'] + }, options || {}); + + this.template = [ + '
    ', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '', + '
    ', + '', + '
    ', + '
    ', + '', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '', + '
    ', + '
    ', + '
    ' + ].join(''); + + this.crossRefProps = options.crossRefProps; + this.api = options.api; + this.options.tpl = _.template(this.template)(this.options); + this._locked = false; + + Common.UI.Window.prototype.initialize.call(this, this.options); + }, + + render: function() { + Common.UI.Window.prototype.render.call(this); + + var me = this, + $window = this.getChild(); + $window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this)); + + var arr = Common.Utils.InternalSettings.get("de-settings-captions"); + if (arr==null || arr==undefined) { + arr = Common.localStorage.getItem("de-settings-captions") || ''; + Common.Utils.InternalSettings.set("de-settings-captions", arr); + } + arr = arr ? JSON.parse(arr) : []; + + // 0 - not removable + arr = arr.concat([{ value: 5, displayValue: this.textEquation }, + { value: 6, displayValue: this.textFigure }, + { value: 7, displayValue: this.textTable } + ]); + arr.sort(function(a,b){ + var sa = a.displayValue.toLowerCase(), + sb = b.displayValue.toLowerCase(); + return sa>sb ? 1 : (sa<%= value %>') + }); + this.refList.on('entervalue', _.bind(this.onPrimary, this)) + .on('item:dblclick', _.bind(this.onPrimary, this)); + + this.lblWhich = $window.find('#id-dlg-cross-which'); + + this.btnInsert = new Common.UI.Button({ + el: $window.find('.primary'), + disabled: true + }); + + this.afterRender(); + }, + + afterRender: function() { + this._setDefaults(); + }, + + _handleInput: function(state, fromButton) { + if (this.options.handler) { + this.options.handler.call(this, state); + } + if (state=='ok') { + if(!fromButton && document.activeElement && document.activeElement.localName == 'textarea' && /area_id/.test(document.activeElement.id)){ + return; + } + !this.btnInsert.isDisabled() && this.insertReference(); + return; + } + this.close(); + }, + + onBtnClick: function(event) { + this._handleInput(event.currentTarget.attributes['result'].value, true); + }, + + onPrimary: function(event) { + this._handleInput('ok'); + return false; + }, + + getSettings: function() { + return {type: this.cmbType.getValue(), refType: this.cmbReference.getValue()}; + }, + + _setDefaults: function () { + var rec, + currentRef; + if (this.crossRefProps) { + rec = this.cmbType.store.findWhere({value: this.crossRefProps.type}); + rec && (currentRef = this.crossRefProps.refType); + } + rec ? this.cmbType.selectRecord(rec) : this.cmbType.setValue(0); + this.refreshReferenceTypes(this.cmbType.getSelectedRecord(), currentRef); + }, + + insertReference: function() { + var record = this.refList.getSelectedRec(), + typeRec = this.cmbType.getSelectedRecord(), + type = (typeRec.type==1 || typeRec.value>4) ? 5 : typeRec.value, + reftype = this.cmbReference.getValue(), + link = this.chInsertAs.getValue()=='checked', + below = this.chBelowAbove.getValue()=='checked', + separator = (this.chSeparator.getValue()=='checked') ? this.inputSeparator.getValue() : undefined; + + switch (type) { + case 0: // paragraph + case 1: // heading + this.api.asc_AddCrossRefToParagraph(record.get('para'), reftype, link, below, separator); + break; + case 2: // bookmark + this.api.asc_AddCrossRefToBookmark(record.get('value'), reftype, link, below, separator); + break; + case 3: // footnote + case 4: // endnote + this.api.asc_AddCrossRefToNote(record.get('para'), reftype, link, below); + break; + case 5: // caption + if (reftype==Asc.c_oAscDocumentRefenceToType.OnlyCaptionText && record.get('para').asc_canAddRefToCaptionText(typeRec.displayValue)===false) { + Common.UI.warning({ + msg : this.textEmpty + }); + } else + this.api.asc_AddCrossRefToCaption(typeRec.displayValue, record.get('para'), reftype, link, below); + break; + } + }, + + onTypeSelected: function (combo, record) { + this.refreshReferenceTypes(record); + }, + + refreshReferenceTypes: function(record, currentRef) { + var arr = [], + str = this.textWhich, type = 5; + if (record.type==1 || record.value > 4) { + // custom labels from caption dialog and Equation, Figure, Table + arr = [ + { value: Asc.c_oAscDocumentRefenceToType.Text, displayValue: this.textCaption }, + { value: Asc.c_oAscDocumentRefenceToType.OnlyLabelAndNumber, displayValue: this.textLabelNum }, + { value: Asc.c_oAscDocumentRefenceToType.OnlyCaptionText, displayValue: this.textOnlyCaption }, + { value: Asc.c_oAscDocumentRefenceToType.PageNum, displayValue: this.textPageNum }, + { value: Asc.c_oAscDocumentRefenceToType.AboveBelow, displayValue: this.textAboveBelow } + ]; + } else { + type = record.value; + switch (record.value) { + case 0: // paragraph + arr = [ + { value: Asc.c_oAscDocumentRefenceToType.PageNum, displayValue: this.textPageNum }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNum, displayValue: this.textParaNum }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNumNoContext, displayValue: this.textParaNumNo }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNumFullContex, displayValue: this.textParaNumFull }, + { value: Asc.c_oAscDocumentRefenceToType.Text, displayValue: this.textText }, + { value: Asc.c_oAscDocumentRefenceToType.AboveBelow, displayValue: this.textAboveBelow } + ]; + str = this.textWhichPara; + break; + case 1: // heading + arr = [ + { value: Asc.c_oAscDocumentRefenceToType.Text, displayValue: this.textHeadingText }, + { value: Asc.c_oAscDocumentRefenceToType.PageNum, displayValue: this.textPageNum }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNum, displayValue: this.textHeadingNum }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNumNoContext, displayValue: this.textHeadingNumNo }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNumFullContex, displayValue: this.textHeadingNumFull }, + { value: Asc.c_oAscDocumentRefenceToType.AboveBelow, displayValue: this.textAboveBelow } + ]; + str = this.textWhichHeading; + break; + case 2: // bookmark + arr = [ + { value: Asc.c_oAscDocumentRefenceToType.Text, displayValue: this.textBookmarkText }, + { value: Asc.c_oAscDocumentRefenceToType.PageNum, displayValue: this.textPageNum }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNum, displayValue: this.textParaNum }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNumNoContext, displayValue: this.textParaNumNo }, + { value: Asc.c_oAscDocumentRefenceToType.ParaNumFullContex, displayValue: this.textParaNumFull }, + { value: Asc.c_oAscDocumentRefenceToType.AboveBelow, displayValue: this.textAboveBelow } + ]; + str = this.textWhichBookmark; + break; + case 3: // note + arr = [ + { value: Asc.c_oAscDocumentRefenceToType.NoteNumber, displayValue: this.textNoteNum }, + { value: Asc.c_oAscDocumentRefenceToType.PageNum, displayValue: this.textPageNum }, + { value: Asc.c_oAscDocumentRefenceToType.AboveBelow, displayValue: this.textAboveBelow }, + { value: Asc.c_oAscDocumentRefenceToType.NoteNumberFormatted, displayValue: this.textNoteNumForm } + ]; + str = this.textWhichNote; + break; + case 4: // end note + arr = [ + { value: Asc.c_oAscDocumentRefenceToType.NoteNumber, displayValue: this.textEndNoteNum }, + { value: Asc.c_oAscDocumentRefenceToType.PageNum, displayValue: this.textPageNum }, + { value: Asc.c_oAscDocumentRefenceToType.AboveBelow, displayValue: this.textAboveBelow }, + { value: Asc.c_oAscDocumentRefenceToType.NoteNumberFormatted, displayValue: this.textEndNoteNumForm } + ]; + str = this.textWhichEndnote; + break; + } + } + this.cmbReference.setData(arr); + this.cmbReference.setValue(currentRef ? currentRef : arr[0].value); + this.onReferenceSelected(this.cmbReference, this.cmbReference.getSelectedRecord()); + this.lblWhich.text(str); + this.refreshReferences(type); + }, + + refreshReferences: function(type) { + var store = this.refList.store, + arr = [], + props; + switch (type) { + case 0: // paragraph + props = this.api.asc_GetAllNumberedParagraphs(); + break; + case 1: // heading + props = this.api.asc_GetAllHeadingParagraphs(); + break; + case 2: // bookmark + props = this.api.asc_GetBookmarksManager(); + break; + case 3: // footnote + props = this.api.asc_GetAllFootNoteParagraphs(); + break; + case 4: // endnote + props = this.api.asc_GetAllEndNoteParagraphs(); + break; + case 5: // caption + props = this.api.asc_GetAllCaptionParagraphs(this.cmbType.getSelectedRecord().displayValue); + break; + } + if (type==2) { // bookmark + var count = props.asc_GetCount(); + for (var i=0; i0) { + var rec = store.at(0); + this.refList.selectRecord(rec); + this.refList.scrollToRecord(rec); + } + this.btnInsert.setDisabled(arr.length<1 || this._locked); + }, + + onReferenceSelected: function(combo, record) { + var refType = record.value, + typeRec = this.cmbType.getSelectedRecord(), + type = (typeRec.type==1 || typeRec.value>4) ? 5 : typeRec.value; + var disable = (type==5 && refType!==Asc.c_oAscDocumentRefenceToType.PageNum) || (type<5) && (refType==Asc.c_oAscDocumentRefenceToType.Text || refType==Asc.c_oAscDocumentRefenceToType.AboveBelow); + this.chBelowAbove.setDisabled(disable); + disable = !(type==0 || type==2) || (refType!==Asc.c_oAscDocumentRefenceToType.ParaNumFullContex); + this.chSeparator.setDisabled(disable); + this.inputSeparator.setDisabled(disable || this.chSeparator.getValue()!=='checked'); + }, + + setLocked: function(locked){ + this._locked = locked; + this.btnInsert.setDisabled(this.refList.store.length<1 || this._locked); + }, + + txtTitle: 'Cross-reference', + txtType: 'Reference type', + txtReference: 'Insert reference to', + textInsertAs: 'Insert as hyperlink', + textSeparate: 'Separate numbers with', + textIncludeAbove: 'Include above/below', + textPageNum: 'Page number', + textParaNum: 'Paragraph number', + textParaNumNo: 'Paragraph number (no context)', + textParaNumFull: 'Paragraph number (full context)', + textText: 'Paragraph text', + textAboveBelow: 'Above/below', + textHeadingText: 'Heading text', + textHeadingNum: 'Heading number', + textHeadingNumNo: 'Heading number (no context)', + textHeadingNumFull: 'Heading number (full context)', + textBookmarkText: 'Bookmark text', + textNoteNum: 'Footnote number', + textNoteNumForm: 'Footnote number (formatted)', + textEndNoteNum: 'Endnote number', + textEndNoteNumForm: 'Endnote number (formatted)', + textCaption: 'Entire caption', + textLabelNum: 'Only label and number', + textOnlyCaption: 'Only caption text', + textParagraph: 'Numbered item', + textHeading: 'Heading', + textBookmark: 'Bookmark', + textFootnote: 'Footnote', + textEndnote: 'Endnote', + textEquation: 'Equation', + textFigure: 'Figure', + textTable: 'Table', + textInsert: 'Insert', + textWhich: 'For which caption', + textWhichHeading: 'For which heading', + textWhichBookmark: 'For which bookmark', + textWhichNote: 'For which footnote', + textWhichEndnote: 'For which endnote', + textWhichPara: 'For which numbered item', + textEmpty: 'The request reference is empty.' + + }, DE.Views.CrossReferenceDialog || {})) +}); \ No newline at end of file diff --git a/apps/documenteditor/main/app/view/LineNumbersDialog.js b/apps/documenteditor/main/app/view/LineNumbersDialog.js new file mode 100644 index 000000000..f1c37058e --- /dev/null +++ b/apps/documenteditor/main/app/view/LineNumbersDialog.js @@ -0,0 +1,258 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2020 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ +/** + * LineNumbersDialog.js + * + * Created by Julia Svinareva on 18/09/19 + * Copyright (c) 2020 Ascensio System SIA. All rights reserved. + * + */ + +define([ + 'common/main/lib/component/Window', + 'common/main/lib/component/CheckBox', + 'common/main/lib/component/MetricSpinner' +], function () { 'use strict'; + + DE.Views.LineNumbersDialog = Common.UI.Window.extend(_.extend({ + options: { + width: 290, + height: 308, + header: true, + style: 'min-width: 290px;', + cls: 'modal-dlg', + buttons: ['ok', 'cancel'] + }, + + initialize : function(options) { + _.extend(this.options, { + title: this.textTitle + }, options || {}); + + this.template = [ + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ' + ].join(''); + + this.options.tpl = _.template(this.template)(this.options); + + this.spinners = []; + this._noApply = false; + + Common.UI.Window.prototype.initialize.call(this, this.options); + }, + + render: function() { + Common.UI.Window.prototype.render.call(this); + + this.chAddLineNumbering = new Common.UI.CheckBox({ + el: $('#line-numbers-add-line-numbering'), + labelText: this.textAddLineNumbering + }).on('change', _.bind(function(field, newValue, oldValue, eOpts){ + var checked = field.getValue()!=='checked'; + this.spnStartAt.setDisabled(checked); + this.spnFromText.setDisabled(checked); + this.spnCountBy.setDisabled(checked); + this.rbRestartEachPage.setDisabled(checked); + this.rbRestartEachSection.setDisabled(checked); + this.rbContinuous.setDisabled(checked); + }, this)); + + this.spnStartAt = new Common.UI.MetricSpinner({ + el: $('#line-numbers-start-at'), + step: 1, + width: 80, + defaultUnit : '', + value: 1, + maxValue: 32767, + minValue: 1, + disabled: true + }); + + this.spnFromText = new Common.UI.MetricSpinner({ + el: $('#line-numbers-from-text'), + step: 0.1, + width: 80, + defaultUnit : 'cm', + value: 'Auto', + maxValue: 55.87, + minValue: 0.1, + allowAuto: true, + disabled: true + }); + this.spinners.push(this.spnFromText); + + this.spnCountBy = new Common.UI.MetricSpinner({ + el: $('#line-numbers-count-by'), + step: 1, + width: 80, + defaultUnit : '', + value: 1, + maxValue: 100, + minValue: 1, + disabled: true + }); + + this.rbRestartEachPage = new Common.UI.RadioBox({ + el: $('#line-numbers-restart-each-page'), + labelText: this.textRestartEachPage, + name: 'asc-radio-line-numbers', + disabled: true, + checked: true + }); + + this.rbRestartEachSection = new Common.UI.RadioBox({ + el: $('#line-numbers-restart-each-section'), + labelText: this.textRestartEachSection, + name: 'asc-radio-line-numbers', + disabled: true + }); + + this.rbContinuous = new Common.UI.RadioBox({ + el: $('#line-numbers-continuous'), + labelText: this.textContinuous, + name: 'asc-radio-line-numbers', + disabled: true + }); + + this.cmbApply = new Common.UI.ComboBox({ + el: $('#line-numbers-combo-apply'), + cls: 'input-group-nr', + menuStyle: 'min-width: 125px;', + editable: false, + data: [ + { displayValue: this.textSection, value: Asc.c_oAscSectionApplyType.Current }, + { displayValue: this.textForward, value: Asc.c_oAscSectionApplyType.ToEnd }, + { displayValue: this.textDocument, value: Asc.c_oAscSectionApplyType.All } + ] + }); + this.cmbApply.setValue(this.options.applyTo); + + this.getChild().find('.dlg-btn').on('click', _.bind(this.onBtnClick, this)); + + this.updateMetricUnit(); + }, + + afterRender: function() { + }, + + setSettings: function (props) { + if (props) { + var type = props.get_Restart(); + this.chAddLineNumbering.setValue(true); + switch (type) { + case Asc.c_oAscLineNumberRestartType.Continuous: this.rbContinuous.setValue(true, true); break; + case Asc.c_oAscLineNumberRestartType.NewPage: this.rbRestartEachPage.setValue(true, true); break; + case Asc.c_oAscLineNumberRestartType.NewSection: this.rbRestartEachSection.setValue(true, true); break; + } + this.spnStartAt.setValue(props.get_Start()!==null && props.get_Start()!==undefined ? props.get_Start() : '', true); + this.spnFromText.setValue(props.get_Distance()!==null && props.get_Distance()!==undefined ? Common.Utils.Metric.fnRecalcFromMM(props.get_Distance() * 25.4 / 20 / 72.0) : -1, true); + this.spnCountBy.setValue(props.get_CountBy()!==null && props.get_CountBy()!==undefined ? props.get_CountBy() : '', true); + } else + this.chAddLineNumbering.setValue(false); + }, + + _handleInput: function(state) { + if (this.options.handler) { + this.options.handler.call(this, this, state); + } + + this.close(); + }, + + onBtnClick: function(event) { + this._handleInput(event.currentTarget.attributes['result'].value); + }, + + onPrimary: function() { + this._handleInput('ok'); + return false; + }, + + getSettings: function() { + var props; + if (this.chAddLineNumbering.getValue()==='checked') { + props = new Asc.CSectionLnNumType(); + if (this.rbContinuous.getValue()) + props.put_Restart(Asc.c_oAscLineNumberRestartType.Continuous); + else if (this.rbRestartEachPage.getValue()) + props.put_Restart(Asc.c_oAscLineNumberRestartType.NewPage); + else if (this.rbRestartEachSection.getValue()) + props.put_Restart(Asc.c_oAscLineNumberRestartType.NewSection); + props.put_Start(this.spnStartAt.getValue()!=='' ? this.spnStartAt.getNumberValue() : undefined); + var value = this.spnFromText.getNumberValue(); + props.put_Distance(value<0 ? null : parseInt(Common.Utils.Metric.fnRecalcToMM(value) * 72 * 20 / 25.4)); + props.put_CountBy(this.spnCountBy.getValue()!=='' ? this.spnCountBy.getNumberValue() : undefined); + } + return {props: props, type: this.cmbApply.getValue()}; + }, + + updateMetricUnit: function() { + if (this.spinners) { + for (var i=0; i0 ? me.api.get_TextProps().get_TextPr().get_FontFamily().get_Name() : undefined, + symbol: selected && selected.length>0 ? selected.charAt(0) : undefined, handler: function(dlg, result, settings) { if (result == 'ok') { me.api.asc_insertSymbol(settings.font ? settings.font : me.api.get_TextProps().get_TextPr().get_FontFamily().get_Name(), settings.code, settings.special); diff --git a/apps/spreadsheeteditor/main/app.js b/apps/spreadsheeteditor/main/app.js index f274e5365..98f81f10a 100644 --- a/apps/spreadsheeteditor/main/app.js +++ b/apps/spreadsheeteditor/main/app.js @@ -158,6 +158,7 @@ require([ 'Main', 'PivotTable', 'DataTab', + 'ViewTab', 'Common.Controllers.Fonts', 'Common.Controllers.Chat', 'Common.Controllers.Comments', @@ -181,6 +182,7 @@ require([ 'spreadsheeteditor/main/app/controller/Print', 'spreadsheeteditor/main/app/controller/PivotTable', 'spreadsheeteditor/main/app/controller/DataTab', + 'spreadsheeteditor/main/app/controller/ViewTab', 'spreadsheeteditor/main/app/view/FileMenuPanels', 'spreadsheeteditor/main/app/view/ParagraphSettings', 'spreadsheeteditor/main/app/view/ImageSettings', diff --git a/apps/spreadsheeteditor/main/app/controller/CellEditor.js b/apps/spreadsheeteditor/main/app/controller/CellEditor.js index 659f72cbc..cb92d6915 100644 --- a/apps/spreadsheeteditor/main/app/controller/CellEditor.js +++ b/apps/spreadsheeteditor/main/app/controller/CellEditor.js @@ -309,6 +309,11 @@ define([ onLockDefNameManager: function(state) { this.namedrange_locked = (state == Asc.c_oAscDefinedNameReason.LockDefNameManager); + }, + + disableEditing: function(disabled) { + this.editor.$btnfunc[!disabled?'removeClass':'addClass']('disabled'); + this.editor.btnNamedRanges.setVisible(!disabled); } }); }); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js index 4a0b94ab2..a85e080f1 100644 --- a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js +++ b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js @@ -1959,6 +1959,7 @@ define([ documentHolder.menuHyperlink.setDisabled(isCellLocked || inPivot); documentHolder.menuAddHyperlink.setDisabled(isCellLocked || inPivot); documentHolder.pmiInsFunction.setDisabled(isCellLocked || inPivot); + documentHolder.pmiFreezePanes.setDisabled(this.api.asc_isWorksheetLockedOrDeleted(this.api.asc_getActiveWorksheetIndex())); if (showMenu) this.showPopupMenu(documentHolder.ssMenu, {}, event); } else if (this.permissions.isEditDiagram && seltype == Asc.c_oAscSelectionType.RangeChartText) { diff --git a/apps/spreadsheeteditor/main/app/controller/LeftMenu.js b/apps/spreadsheeteditor/main/app/controller/LeftMenu.js index de93a8e20..40d66fe24 100644 --- a/apps/spreadsheeteditor/main/app/controller/LeftMenu.js +++ b/apps/spreadsheeteditor/main/app/controller/LeftMenu.js @@ -188,6 +188,15 @@ define([ return this; }, + disableEditing: function(disabled) { + this.leftMenu.btnComments.setDisabled(disabled); + this.leftMenu.btnChat.setDisabled(disabled); + this.leftMenu.btnPlugins.setDisabled(disabled); + this.leftMenu.btnSpellcheck.setDisabled(disabled); + + this.leftMenu.getMenu('file').disableEditing(disabled); + }, + createDelayedElements: function() { /** coauthoring begin **/ if ( this.mode.canCoAuthoring ) { diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js index 431e08729..5017242a1 100644 --- a/apps/spreadsheeteditor/main/app/controller/Main.js +++ b/apps/spreadsheeteditor/main/app/controller/Main.js @@ -358,6 +358,7 @@ define([ this.appOptions.mentionShare = !((typeof (this.appOptions.customization) == 'object') && (this.appOptions.customization.mentionShare==false)); this.appOptions.canMakeActionLink = this.editorConfig.canMakeActionLink; this.appOptions.canFeaturePivot = true; + this.appOptions.canFeatureViews = !!this.api.asc_isSupportFeature("sheet-views"); this.headerView = this.getApplication().getController('Viewport').getView('Common.Views.Header'); this.headerView.setCanBack(this.appOptions.canBackToFolder === true, (this.appOptions.canBackToFolder) ? this.editorConfig.customization.goback.text : ''); @@ -1149,7 +1150,7 @@ define([ } if (!me.appOptions.isEditMailMerge && !me.appOptions.isEditDiagram && me.appOptions.canFeaturePivot) - application.getController('PivotTable').setMode(me.appOptions).setConfig({config: me.editorConfig}, me.api); + application.getController('PivotTable').setMode(me.appOptions); var viewport = this.getApplication().getController('Viewport').getView('Viewport'); viewport.applyEditorMode(); @@ -1533,6 +1534,10 @@ define([ config.msg = this.errorMoveSlicerError; break; + case Asc.c_oAscError.ID.LockedEditView: + config.msg = this.errorEditView; + break; + default: config.msg = (typeof id == 'string') ? id : this.errorDefaultMessage.replace('%1', id); break; @@ -2220,13 +2225,16 @@ define([ disablefunc: function (disable) { me.disableEditing(disable); var app = me.getApplication(); + app.getController('Toolbar').DisableToolbar(disable,disable); app.getController('RightMenu').SetDisabled(disable, true); app.getController('Statusbar').SetDisabled(disable); app.getController('Common.Controllers.ReviewChanges').SetDisabled(disable); app.getController('DocumentHolder').SetDisabled(disable, true); var leftMenu = app.getController('LeftMenu'); - leftMenu.leftMenu.getMenu('file').getButton('protect').setDisabled(disable); leftMenu.setPreviewMode(disable); + leftMenu.disableEditing(disable); + app.getController('CellEditor').disableEditing(disable); + app.getController('Viewport').disableEditing(disable); var comments = app.getController('Common.Controllers.Comments'); if (comments) comments.setPreviewMode(disable); }}); @@ -2662,7 +2670,8 @@ define([ errorPasteSlicerError: 'Table slicers cannot be copied from one workbook to another.', errorFrmlMaxLength: 'You cannot add this formula as its length exceeded the allowed number of characters.
    Please edit it and try again.', errorFrmlMaxReference: 'You cannot enter this formula because it has too many values,
    cell references, and/or names.', - errorMoveSlicerError: 'Table slicers cannot be copied from one workbook to another.
    Try again by selecting the entire table and the slicers.' + errorMoveSlicerError: 'Table slicers cannot be copied from one workbook to another.
    Try again by selecting the entire table and the slicers.', + errorEditView: 'The existing sheet view cannot be edited and the new ones cannot be created at the moment as some of them are being edited.' } })(), SSE.Controllers.Main || {})) }); diff --git a/apps/spreadsheeteditor/main/app/controller/PivotTable.js b/apps/spreadsheeteditor/main/app/controller/PivotTable.js index f826afaea..3b1cba876 100644 --- a/apps/spreadsheeteditor/main/app/controller/PivotTable.js +++ b/apps/spreadsheeteditor/main/app/controller/PivotTable.js @@ -89,12 +89,10 @@ define([ Common.NotificationCenter.on('api:disconnect', _.bind(this.SetDisabled, this)); }, - setConfig: function (data, api) { - this.view = this.createView('PivotTable'); - this.setApi(api); - if (data) { - this.sdkViewName = data['sdkviewname'] || this.sdkViewName; - } + setConfig: function (config) { + this.view = this.createView('PivotTable', { + toolbar: config.toolbar.toolbar + }); }, setApi: function (api) { @@ -106,6 +104,7 @@ define([ this.api.asc_registerCallback('asc_onSelectionChanged', _.bind(this.onSelectionChanged, this)); Common.NotificationCenter.on('cells:range', _.bind(this.onCellsRange, this)); } + return this; }, setMode: function(mode) { @@ -400,7 +399,7 @@ define([ Common.Utils.lockControls(SSE.enumLock.noPivot, !pivotInfo, {array: this.view.lockedControls}); Common.Utils.lockControls(SSE.enumLock.pivotLock, pivotInfo && (info.asc_getLockedPivotTable()===true), {array: this.view.lockedControls}); - Common.Utils.lockControls(SSE.enumLock.editPivot, !!pivotInfo, {array: [this.view.btnAddPivot]}); + Common.Utils.lockControls(SSE.enumLock.editPivot, !!pivotInfo, {array: this.view.btnsAddPivot}); if (pivotInfo) this.ChangeSettings(pivotInfo); diff --git a/apps/spreadsheeteditor/main/app/controller/RightMenu.js b/apps/spreadsheeteditor/main/app/controller/RightMenu.js index b0318ecce..76477378c 100644 --- a/apps/spreadsheeteditor/main/app/controller/RightMenu.js +++ b/apps/spreadsheeteditor/main/app/controller/RightMenu.js @@ -413,7 +413,7 @@ define([ SetDisabled: function(disabled, allowSignature) { this.setMode({isEdit: !disabled}); - if (this.rightmenu) { + if (this.rightmenu && this.rightmenu.paragraphSettings) { this.rightmenu.paragraphSettings.disableControls(disabled); this.rightmenu.shapeSettings.disableControls(disabled); this.rightmenu.imageSettings.disableControls(disabled); diff --git a/apps/spreadsheeteditor/main/app/controller/Statusbar.js b/apps/spreadsheeteditor/main/app/controller/Statusbar.js index 779b1c9d0..fdc2310b2 100644 --- a/apps/spreadsheeteditor/main/app/controller/Statusbar.js +++ b/apps/spreadsheeteditor/main/app/controller/Statusbar.js @@ -104,6 +104,7 @@ define([ this.api.asc_registerCallback('asc_onError', _.bind(this.onError, this)); this.api.asc_registerCallback('asc_onFilterInfo', _.bind(this.onApiFilterInfo , this)); this.api.asc_registerCallback('asc_onActiveSheetChanged', _.bind(this.onApiActiveSheetChanged, this)); + this.api.asc_registerCallback('asc_onRefreshNamedSheetViewList', _.bind(this.onRefreshNamedSheetViewList, this)); this.statusbar.setApi(api); }, @@ -711,12 +712,61 @@ define([ onApiActiveSheetChanged: function (index) { this.statusbar.tabMenu.hide(); + if (this._sheetViewTip && this._sheetViewTip.isVisible() && this.api.asc_getActiveNamedSheetView && !this.api.asc_getActiveNamedSheetView(index)) { // hide tip when sheet in the default mode + this._sheetViewTip.hide(); + } + }, + + onRefreshNamedSheetViewList: function() { + var views = this.api.asc_getNamedSheetViews(), + active = false, + name="", + me = this; + for (var i=0; i0 ? me.api.asc_getCellInfo().asc_getXfs().asc_getFontName() : undefined, + symbol: selected && selected.length>0 ? selected.charAt(0) : undefined, handler: function(dlg, result, settings) { if (result == 'ok') { me.api.asc_insertSymbol(settings.font ? settings.font : me.api.asc_getCellInfo().asc_getXfs().asc_getFontName(), settings.code, settings.special); @@ -3314,6 +3317,7 @@ define([ if ( config.canFeaturePivot ) { tab = {action: 'pivot', caption: me.textPivot}; var pivottab = me.getApplication().getController('PivotTable'); + pivottab.setApi(me.api).setConfig({toolbar: me}); $panel = pivottab.createToolbarPanel(); if ($panel) { me.toolbar.addTab(tab, $panel, 5); @@ -3342,6 +3346,10 @@ define([ me.toolbar.addTab(tab, $panel, 7); } } + + var viewtab = me.getApplication().getController('ViewTab'); + viewtab.setApi(me.api).setConfig({toolbar: me, mode: config}); + Array.prototype.push.apply(me.toolbar.lockControls, viewtab.getView('ViewTab').getButtons()); } } }, diff --git a/apps/spreadsheeteditor/main/app/controller/ViewTab.js b/apps/spreadsheeteditor/main/app/controller/ViewTab.js new file mode 100644 index 000000000..8a38b83bb --- /dev/null +++ b/apps/spreadsheeteditor/main/app/controller/ViewTab.js @@ -0,0 +1,218 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2020 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * + */ + +/** + * ViewTab.js + * + * Created by Julia Radzhabova on 08.07.2020 + * Copyright (c) 2020 Ascensio System SIA. All rights reserved. + * + */ + +define([ + 'core', + 'spreadsheeteditor/main/app/view/ViewTab', + 'spreadsheeteditor/main/app/view/ViewManagerDlg' +], function () { + 'use strict'; + + SSE.Controllers.ViewTab = Backbone.Controller.extend(_.extend({ + models : [], + collections : [ + ], + views : [ + 'ViewTab' + ], + sdkViewName : '#id_main', + + initialize: function () { + }, + onLaunch: function () { + this._state = {}; + }, + + setApi: function (api) { + if (api) { + this.api = api; + this.api.asc_registerCallback('asc_onZoomChanged', this.onApiZoomChange.bind(this)); + this.api.asc_registerCallback('asc_onSelectionChanged', _.bind(this.onSelectionChanged, this)); + this.api.asc_registerCallback('asc_onWorksheetLocked', _.bind(this.onWorksheetLocked, this)); + this.api.asc_registerCallback('asc_onSheetsChanged', this.onApiSheetChanged.bind(this)); + this.api.asc_registerCallback('asc_onUpdateSheetViewSettings', this.onApiSheetChanged.bind(this)); + this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onCoAuthoringDisconnect, this)); + Common.NotificationCenter.on('api:disconnect', _.bind(this.onCoAuthoringDisconnect, this)); + } + return this; + }, + + setConfig: function(config) { + this.toolbar = config.toolbar; + this.view = this.createView('ViewTab', { + toolbar: this.toolbar.toolbar, + mode: config.mode + }); + this.addListeners({ + 'ViewTab': { + 'viewtab:freeze': this.onFreeze, + 'viewtab:formula': this.onViewSettings, + 'viewtab:headings': this.onViewSettings, + 'viewtab:gridlines': this.onViewSettings, + 'viewtab:zoom': this.onZoom, + 'viewtab:showview': this.onShowView, + 'viewtab:openview': this.onOpenView, + 'viewtab:createview': this.onCreateView, + 'viewtab:manager': this.onOpenManager + }, + 'Statusbar': { + 'sheet:changed': this.onApiSheetChanged.bind(this) + } + }); + Common.NotificationCenter.on('layout:changed', _.bind(this.onLayoutChanged, this)); + }, + + SetDisabled: function(state) { + this.view && this.view.SetDisabled(state); + }, + + getView: function(name) { + return !name && this.view ? + this.view : Backbone.Controller.prototype.getView.call(this, name); + }, + + onCoAuthoringDisconnect: function() { + this.SetDisabled(true); + }, + + onSelectionChanged: function(info) { + if (!this.toolbar.editMode || !this.view) return; + }, + + onFreeze: function(state) { + if (this.api) { + this.api.asc_freezePane(); + } + Common.NotificationCenter.trigger('edit:complete', this.view); + }, + + onZoom: function(zoom) { + if (this.api) { + this.api.asc_setZoom(zoom/100); + } + Common.NotificationCenter.trigger('edit:complete', this.view); + }, + + onViewSettings: function(type, value){ + if (this.api) { + switch (type) { + case 0: this.getApplication().getController('Viewport').header.fireEvent('formulabar:hide', [ value!=='checked']); break; + case 1: this.api.asc_setDisplayHeadings(value=='checked'); break; + case 2: this.api.asc_setDisplayGridlines( value=='checked'); break; + } + } + Common.NotificationCenter.trigger('edit:complete', this.view); + }, + + onShowView: function() { + var views = this.api.asc_getNamedSheetViews(), + menu = this.view.btnSheetView.menu._innerMenu, + active = false; + + menu.removeItems(1, menu.items.length-1); + _.each(views, function(item, index) { + menu.addItem(new Common.UI.MenuItem({ + caption : item.asc_getName(), + checkable: true, + allowDepress: false, + checked : item.asc_getIsActive() + })); + if (item.asc_getIsActive()) + active = true; + }); + menu.items[0].setChecked(!active, true); + }, + + onOpenView: function(item) { + this.api && this.api.asc_setActiveNamedSheetView((item.value == 'default') ? null : item.name); + }, + + onCreateView: function(item) { + this.api && this.api.asc_addNamedSheetView(null, true); + }, + + onOpenManager: function(item) { + var me = this; + (new SSE.Views.ViewManagerDlg({ + api: this.api, + handler: function(result, value) { + if (result == 'ok' && value) { + if (me.api) { + me.api.asc_setActiveNamedSheetView(value); + } + } + Common.NotificationCenter.trigger('edit:complete', me.view); + }, + views: this.api.asc_getNamedSheetViews() + })).on('close', function(win){ + }).show(); + }, + + onWorksheetLocked: function(index,locked) { + if (index == this.api.asc_getActiveWorksheetIndex()) { + Common.Utils.lockControls(SSE.enumLock.sheetLock, locked, {array: [this.view.chHeadings, this.view.chGridlines, this.view.btnFreezePanes]}); + } + }, + + onApiSheetChanged: function() { + if (!this.toolbar.mode || !this.toolbar.mode.isEdit || this.toolbar.mode.isEditDiagram || this.toolbar.mode.isEditMailMerge) return; + + var params = this.api.asc_getSheetViewSettings(); + this.view.chHeadings.setValue(!!params.asc_getShowRowColHeaders(), true); + this.view.chGridlines.setValue(!!params.asc_getShowGridLines(), true); + this.view.btnFreezePanes.toggle(!!params.asc_getIsFreezePane(), true); + + var currentSheet = this.api.asc_getActiveWorksheetIndex(); + this.onWorksheetLocked(currentSheet, this.api.asc_isWorksheetLockedOrDeleted(currentSheet)); + }, + + onLayoutChanged: function(area) { + if (area=='celleditor' && arguments[1]) { + this.view.chFormula.setValue(arguments[1]=='showed', true); + } + }, + + onApiZoomChange: function(zf, type){ + var value = Math.floor((zf + .005) * 100); + this.view.cmbZoom.setValue(value, value + '%'); + } + }, SSE.Controllers.ViewTab || {})); +}); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/controller/Viewport.js b/apps/spreadsheeteditor/main/app/controller/Viewport.js index 5db842009..0a90ed4f9 100644 --- a/apps/spreadsheeteditor/main/app/controller/Viewport.js +++ b/apps/spreadsheeteditor/main/app/controller/Viewport.js @@ -127,6 +127,7 @@ define([ this.api.asc_registerCallback('asc_onZoomChanged', this.onApiZoomChange.bind(this)); this.api.asc_registerCallback('asc_onSheetsChanged', this.onApiSheetChanged.bind(this)); this.api.asc_registerCallback('asc_onUpdateSheetViewSettings', this.onApiSheetChanged.bind(this)); + this.api.asc_registerCallback('asc_onWorksheetLocked', this.onWorksheetLocked.bind(this)); this.api.asc_registerCallback('asc_onEditCell', this.onApiEditCell.bind(this)); this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',this.onApiCoAuthoringDisconnect.bind(this)); Common.NotificationCenter.on('api:disconnect', this.onApiCoAuthoringDisconnect.bind(this)); @@ -209,7 +210,7 @@ define([ }, this)); } - var mnuitemHideFormulaBar = new Common.UI.MenuItem({ + me.header.mnuitemHideFormulaBar = new Common.UI.MenuItem({ caption : me.textHideFBar, checked : Common.localStorage.getBool('sse-hidden-formula'), checkable : true, @@ -220,6 +221,7 @@ define([ caption : me.textHideHeadings, checkable : true, checked : me.header.mnuitemHideHeadings.isChecked(), + disabled : me.header.mnuitemHideHeadings.isDisabled(), value : 'headings' }); @@ -227,6 +229,7 @@ define([ caption : me.textHideGridlines, checkable : true, checked : me.header.mnuitemHideGridlines.isChecked(), + disabled : me.header.mnuitemHideGridlines.isDisabled(), value : 'gridlines' }); @@ -234,6 +237,7 @@ define([ caption : me.textFreezePanes, checkable : true, checked : me.header.mnuitemFreezePanes.isChecked(), + disabled : me.header.mnuitemFreezePanes.isDisabled(), value : 'freezepanes' }); @@ -270,7 +274,7 @@ define([ style: 'min-width: 180px;', items: [ me.header.mnuitemCompactToolbar, - mnuitemHideFormulaBar, + me.header.mnuitemHideFormulaBar, {caption:'--'}, me.header.mnuitemHideHeadings, me.header.mnuitemHideGridlines, @@ -400,6 +404,7 @@ define([ case 'celleditor': if (arguments[1]) { this.boxSdk.css('border-top', arguments[1]=='hidden'?'none':''); + this.header.mnuitemHideFormulaBar && this.header.mnuitemHideFormulaBar.setChecked(arguments[1]=='hidden', true); } this.viewport.celayout.doLayout(); break; @@ -442,6 +447,21 @@ define([ me.header.mnuitemHideHeadings.setChecked(!params.asc_getShowRowColHeaders()); me.header.mnuitemHideGridlines.setChecked(!params.asc_getShowGridLines()); me.header.mnuitemFreezePanes.setChecked(params.asc_getIsFreezePane()); + + var currentSheet = me.api.asc_getActiveWorksheetIndex(); + this.onWorksheetLocked(currentSheet, this.api.asc_isWorksheetLockedOrDeleted(currentSheet)); + } + }, + + onWorksheetLocked: function(index,locked) { + var me = this; + var appConfig = me.viewport.mode; + if ( !!appConfig && !appConfig.isEditDiagram && !appConfig.isEditMailMerge ) { + if (index == this.api.asc_getActiveWorksheetIndex()) { + me.header.mnuitemHideHeadings.setDisabled(locked); + me.header.mnuitemHideGridlines.setDisabled(locked); + me.header.mnuitemFreezePanes.setDisabled(locked); + } } }, @@ -484,6 +504,10 @@ define([ } }, + disableEditing: function (disabled) { + this.header.btnOptions.menu.items[6].setDisabled(disabled); + }, + textHideFBar: 'Hide Formula Bar', textHideHeadings: 'Hide Headings', textHideGridlines: 'Hide Gridlines', diff --git a/apps/spreadsheeteditor/main/app/template/Toolbar.template b/apps/spreadsheeteditor/main/app/template/Toolbar.template index daef46a62..4408cfbd0 100644 --- a/apps/spreadsheeteditor/main/app/template/Toolbar.template +++ b/apps/spreadsheeteditor/main/app/template/Toolbar.template @@ -120,6 +120,7 @@
    +
    @@ -225,6 +226,48 @@
    +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    + +
    +
    +
    +
    +
    \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/view/FileMenu.js b/apps/spreadsheeteditor/main/app/view/FileMenu.js index b78b27a71..4f41c7ba0 100644 --- a/apps/spreadsheeteditor/main/app/view/FileMenu.js +++ b/apps/spreadsheeteditor/main/app/view/FileMenu.js @@ -322,6 +322,12 @@ define([ this.panels['help'] = ((new SSE.Views.FileMenuPanels.Help({menu: this})).render()); this.panels['help'].setLangConfig(this.mode.lang); } + + if ( this.mode.disableEditing != undefined ) { + this.panels['opts'].disableEditing(this.mode.disableEditing); + this.miProtect.setDisabled(this.mode.disableEditing); + delete this.mode.disableEditing; + } }, setMode: function(mode, delay) { @@ -410,6 +416,15 @@ define([ } }, + disableEditing: function(disabled) { + if ( !this.panels ) { + this.mode.disableEditing = disabled; + } else { + this.panels['opts'].disableEditing(disabled); + this.miProtect.setDisabled(disabled); + } + }, + btnSaveCaption : 'Save', btnDownloadCaption : 'Download as...', btnInfoCaption : 'Document Info...', diff --git a/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js b/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js index 734cfc524..f556f7154 100644 --- a/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js +++ b/apps/spreadsheeteditor/main/app/view/FileMenuPanels.js @@ -261,6 +261,20 @@ define([ this.spellcheckSettings && this.spellcheckSettings.setApi(api); }, + disableEditing: function(disabled) { + if ( disabled ) { + $(this.viewSettingsPicker.dataViewItems[1].el).hide(); + $(this.viewSettingsPicker.dataViewItems[2].el).hide(); + } else { + if ( this.mode.canPrint ) + $(this.viewSettingsPicker.dataViewItems[1].el).show(); + + if ( this.mode.isEdit ) { + $(this.viewSettingsPicker.dataViewItems[2].el).show(); + } + } + }, + txtGeneral: 'General', txtPageSettings: 'Page Settings', txtSpellChecking: 'Spell checking' diff --git a/apps/spreadsheeteditor/main/app/view/PivotTable.js b/apps/spreadsheeteditor/main/app/view/PivotTable.js index 86a922445..9c26f70aa 100644 --- a/apps/spreadsheeteditor/main/app/view/PivotTable.js +++ b/apps/spreadsheeteditor/main/app/view/PivotTable.js @@ -53,7 +53,7 @@ define([ var template = '
    ' + '
    ' + - '' + + '' + '
    ' + '
    ' + '
    ' + @@ -94,8 +94,10 @@ define([ function setEvents() { var me = this; - this.btnAddPivot.on('click', function (e) { - me.fireEvent('pivottable:create'); + this.btnsAddPivot.forEach(function(button) { + button.on('click', function (b, e) { + me.fireEvent('pivottable:create'); + }); }); this.btnPivotLayout.menu.on('item:click', function (menu, item, e) { @@ -149,11 +151,14 @@ define([ initialize: function (options) { Common.UI.BaseView.prototype.initialize.call(this, options); - this.appConfig = options.mode; + this.toolbar = options.toolbar; this.lockedControls = []; var _set = SSE.enumLock; + this.btnsAddPivot = Common.Utils.injectButtons(this.toolbar.$el.find('.btn-slot.slot-add-pivot'), '', 'toolbar__icon btn-pivot-sum', this.txtPivotTable, + [_set.lostConnect, _set.coAuth, _set.editPivot, _set.selRangeEdit, _set.selChart, _set.selChartText, _set.selShape, _set.selShapeText, _set.selImage, _set.selSlicer, _set.editCell]); + this.chRowHeader = new Common.UI.CheckBox({ labelText: this.textRowHeader, lock : [_set.lostConnect, _set.coAuth, _set.noPivot, _set.selRangeEdit, _set.pivotLock] @@ -178,14 +183,6 @@ define([ }); this.lockedControls.push(this.chColBanded); - this.btnAddPivot = new Common.UI.Button({ - cls: 'btn-toolbar x-huge icon-top', - iconCls: 'toolbar__icon btn-pivot-sum', - caption: this.txtCreate, - disabled : false, - lock : [_set.lostConnect, _set.coAuth, _set.editPivot, _set.selRangeEdit, _set.selChart, _set.selChartText, _set.selShape, _set.selShapeText, _set.selImage, _set.selSlicer, _set.editCell] - }); - this.btnPivotLayout = new Common.UI.Button({ cls : 'btn-toolbar x-huge icon-top', iconCls : 'toolbar__icon btn-pivot-layout', @@ -277,7 +274,9 @@ define([ (new Promise(function (accept, reject) { accept(); })).then(function(){ - me.btnAddPivot.updateHint(me.tipCreatePivot); + me.btnsAddPivot.forEach( function(btn) { + btn.updateHint(me.tipCreatePivot); + }); me.btnRefreshPivot.updateHint(me.tipRefresh); me.btnSelectPivot.updateHint(me.tipSelect); me.btnPivotLayout.updateHint(me.capLayout); @@ -326,12 +325,15 @@ define([ getPanel: function () { this.$el = $(_.template(template)( {} )); + var _set = SSE.enumLock; + this.btnsAddPivot = this.btnsAddPivot.concat(Common.Utils.injectButtons(this.$el.find('.btn-slot.slot-add-pivot'), '', 'toolbar__icon btn-pivot-sum', this.txtCreate, + [_set.lostConnect, _set.coAuth, _set.editPivot, _set.selRangeEdit, _set.selChart, _set.selChartText, _set.selShape, _set.selShapeText, _set.selImage, _set.selSlicer, _set.editCell])); + this.chRowHeader.render(this.$el.find('#slot-chk-header-row')); this.chColHeader.render(this.$el.find('#slot-chk-header-column')); this.chRowBanded.render(this.$el.find('#slot-chk-banded-row')); this.chColBanded.render(this.$el.find('#slot-chk-banded-column')); - this.btnAddPivot.render(this.$el.find('#slot-btn-add-pivot')); this.btnRefreshPivot.render(this.$el.find('#slot-btn-refresh-pivot')); this.btnSelectPivot.render(this.$el.find('#slot-btn-select-pivot')); this.btnPivotLayout.render(this.$el.find('#slot-btn-pivot-report-layout')); @@ -353,11 +355,11 @@ define([ }, getButtons: function(type) { - return this.lockedControls.concat(this.btnAddPivot); + return this.btnsAddPivot.concat(this.lockedControls); }, SetDisabled: function (state) { - this.lockedControls.concat(this.btnAddPivot).forEach(function(button) { + this.btnsAddPivot.concat(this.lockedControls).forEach(function(button) { if ( button ) { button.setDisabled(state); } @@ -393,7 +395,8 @@ define([ tipGrandTotals: 'Show or hide grand totals', tipSubtotals: 'Show or hide subtotals', txtSelect: 'Select', - tipSelect: 'Select entire pivot table' + tipSelect: 'Select entire pivot table', + txtPivotTable: 'Pivot Table' } }()), SSE.Views.PivotTable || {})); }); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/view/Statusbar.js b/apps/spreadsheeteditor/main/app/view/Statusbar.js index 7ec57c21c..36ce28f51 100644 --- a/apps/spreadsheeteditor/main/app/view/Statusbar.js +++ b/apps/spreadsheeteditor/main/app/view/Statusbar.js @@ -489,11 +489,12 @@ define([ if (this.api) { var wc = this.api.asc_getWorksheetsCount(), i = -1; - var hidentems = [], items = [], tab, locked; + var hidentems = [], items = [], tab, locked, name; var sindex = this.api.asc_getActiveWorksheetIndex(); while (++i < wc) { locked = me.api.asc_isWorksheetLockedOrDeleted(i); + name = me.api.asc_getActiveNamedSheetView ? me.api.asc_getActiveNamedSheetView(i) || '' : ''; tab = { sheetindex : i, index : items.length, @@ -501,7 +502,10 @@ define([ label : me.api.asc_getWorksheetName(i), // reorderable : !locked, cls : locked ? 'coauth-locked':'', - isLockTheDrag : locked + isLockTheDrag : locked, + iconCls : 'btn-sheet-view', + iconTitle : name, + iconVisible : name!=='' }; this.api.asc_isWorksheetHidden(i)? hidentems.push(tab) : items.push(tab); @@ -765,7 +769,7 @@ define([ showCustomizeStatusBar: function (e) { var el = $(e.target); if ($('#status-zoom-box').find(el).length > 0 - || $(e.target).parent().hasClass('list-item') + || $(e.target).closest('.statusbar .list-item').length>0 || $('#status-tabs-scroll').find(el).length > 0 || $('#status-addtabs-box').find(el).length > 0) return; this.customizeStatusBarMenu.hide(); diff --git a/apps/spreadsheeteditor/main/app/view/Toolbar.js b/apps/spreadsheeteditor/main/app/view/Toolbar.js index 1ce114d80..ab0632f4d 100644 --- a/apps/spreadsheeteditor/main/app/view/Toolbar.js +++ b/apps/spreadsheeteditor/main/app/view/Toolbar.js @@ -325,7 +325,9 @@ define([ { caption: me.textTabInsert, action: 'ins', extcls: 'canedit'}, {caption: me.textTabLayout, action: 'layout', extcls: 'canedit'}, {caption: me.textTabFormula, action: 'formula', extcls: 'canedit'}, - {caption: me.textTabData, action: 'data', extcls: 'canedit'} + {caption: me.textTabData, action: 'data', extcls: 'canedit'}, + undefined, undefined, undefined, + {caption: me.textTabView, action: 'view', extcls: 'canedit'} ]} ); @@ -2435,6 +2437,7 @@ define([ tipPrintTitles: 'Print titles', capBtnInsSlicer: 'Slicer', tipInsertSlicer: 'Insert slicer', - textVertical: 'Vertical Text' + textVertical: 'Vertical Text', + textTabView: 'View' }, SSE.Views.Toolbar || {})); }); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/view/ViewManagerDlg.js b/apps/spreadsheeteditor/main/app/view/ViewManagerDlg.js new file mode 100644 index 000000000..59c46eaf3 --- /dev/null +++ b/apps/spreadsheeteditor/main/app/view/ViewManagerDlg.js @@ -0,0 +1,346 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2020 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * +*/ +/** + * + * ViewManagerDlg.js + * + * Created by Julia.Radzhabova on 09.07.2020 + * Copyright (c) 2020 Ascensio System SIA. All rights reserved. + * + */ + +define([ + 'common/main/lib/view/EditNameDialog', + 'common/main/lib/view/AdvancedSettingsWindow', + 'common/main/lib/component/ComboBox', + 'common/main/lib/component/ListView', + 'common/main/lib/component/InputField' +], function () { + 'use strict'; + + SSE.Views = SSE.Views || {}; + + SSE.Views.ViewManagerDlg = Common.Views.AdvancedSettingsWindow.extend(_.extend({ + options: { + alias: 'ViewManagerDlg', + contentWidth: 460, + height: 330, + buttons: null + }, + + initialize: function (options) { + var me = this; + _.extend(this.options, { + title: this.txtTitle, + template: [ + '
    ', + '
    ', + '
    ', + '
    ', + '', + '', + '', + '', + '', + '', + '', + '
    ', + '', + '
    ', + '
    ', + '', + '', + '', + '', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '
    ', + '' + ].join('') + }, options); + + this.api = options.api; + this.views = options.views || []; + this.userTooltip = true; + this.currentView = undefined; + + this.wrapEvents = { + onRefreshNamedSheetViewList: _.bind(this.onRefreshNamedSheetViewList, this) + }; + + Common.Views.AdvancedSettingsWindow.prototype.initialize.call(this, this.options); + }, + render: function () { + Common.Views.AdvancedSettingsWindow.prototype.render.call(this); + var me = this; + + this.viewList = new Common.UI.ListView({ + el: $('#view-manager-list', this.$window), + store: new Common.UI.DataViewStore(), + simpleAddMode: true, + emptyText: this.textEmpty, + template: _.template(['
    '].join('')), + itemTemplate: _.template([ + '
    ', + '
    <%= name %>
    ', + '<% if (lock) { %>', + '
    <%=lockuser%>
    ', + '<% } %>', + '
    ' + ].join('')) + }); + this.viewList.on('item:select', _.bind(this.onSelectItem, this)) + .on('item:keydown', _.bind(this.onKeyDown, this)) + .on('item:dblclick', _.bind(this.onDblClickItem, this)) + .on('entervalue', _.bind(this.onDblClickItem, this)); + + this.btnNew = new Common.UI.Button({ + el: $('#view-manager-btn-new') + }); + this.btnNew.on('click', _.bind(this.onNew, this, false)); + + this.btnRename = new Common.UI.Button({ + el: $('#view-manager-btn-rename') + }); + this.btnRename.on('click', _.bind(this.onRename, this)); + + this.btnDuplicate = new Common.UI.Button({ + el: $('#view-manager-btn-duplicate') + }); + this.btnDuplicate.on('click', _.bind(this.onNew, this, true)); + + this.btnDelete = new Common.UI.Button({ + el: $('#view-manager-btn-delete') + }); + this.btnDelete.on('click', _.bind(this.onDelete, this)); + + this.afterRender(); + }, + + afterRender: function() { + this._setDefaults(); + }, + + _setDefaults: function (props) { + this.refreshList(this.views, 0); + this.api.asc_registerCallback('asc_onRefreshNamedSheetViewList', this.wrapEvents.onRefreshNamedSheetViewList); + }, + + onRefreshNamedSheetViewList: function() { + this.refreshList(this.api.asc_getNamedSheetViews(), this.currentView); + }, + + refreshList: function(views, selectedItem) { + if (views) { + this.views = views; + var arr = []; + for (var i=0; i0) { + if (selectedItem===undefined || selectedItem===null) selectedItem = 0; + if (_.isNumber(selectedItem)) { + if (selectedItem>val-1) selectedItem = val-1; + this.viewList.selectByIndex(selectedItem); + setTimeout(function() { + me.viewList.scrollToRecord(me.viewList.store.at(selectedItem)); + }, 50); + + } + if (this.userTooltip===true && this.viewList.cmpEl.find('.lock-user').length>0) + this.viewList.cmpEl.on('mouseover', _.bind(this.onMouseOverLock, this)).on('mouseout', _.bind(this.onMouseOutLock, this)); + } + + var me = this; + _.delay(function () { + me.viewList.cmpEl.find('.listview').focus(); + me.viewList.scroller.update({alwaysVisibleY: true}); + }, 100, this); + }, + + onMouseOverLock: function (evt, el, opt) { + if (this.userTooltip===true && $(evt.target).hasClass('lock-user')) { + var me = this, + tipdata = $(evt.target).tooltip({title: this.tipIsLocked,trigger:'manual'}).data('bs.tooltip'); + + this.userTooltip = tipdata.tip(); + this.userTooltip.css('z-index', parseInt(this.$window.css('z-index')) + 10); + tipdata.show(); + + setTimeout(function() { me.userTipHide(); }, 5000); + } + }, + + userTipHide: function () { + if (typeof this.userTooltip == 'object') { + this.userTooltip.remove(); + this.userTooltip = undefined; + this.viewList.cmpEl.off('mouseover').off('mouseout'); + } + }, + + onMouseOutLock: function (evt, el, opt) { + if (typeof this.userTooltip == 'object') this.userTipHide(); + }, + + onNew: function (duplicate) { + var rec = duplicate ? this.viewList.getSelectedRec().get('view') : undefined; + this.currentView = this.viewList.store.length; + this.api.asc_addNamedSheetView(rec); + }, + + onDelete: function () { + var me = this, + rec = this.viewList.getSelectedRec(), + res; + if (rec) { + if (rec.get('active')) { + Common.UI.warning({ + msg: this.warnDeleteView.replace('%1', rec.get('name')), + buttons: ['yes', 'no'], + primary: 'yes', + callback: function(btn) { + if (btn == 'yes') { + me.api.asc_deleteNamedSheetViews([rec.get('view')]); + } + } + }); + } else { + this.api.asc_deleteNamedSheetViews([rec.get('view')]); + } + } + }, + + onRename: function () { + var rec = this.viewList.getSelectedRec(); + if (rec) { + var me = this; + (new Common.Views.EditNameDialog({ + label: this.textRenameLabel, + error: this.textRenameError, + value: rec.get('name'), + handler: function(result, value) { + if (result == 'ok') { + rec.get('view').asc_setName(value); + } + } + })).show(); + } + }, + + getSettings: function() { + var rec = this.viewList.getSelectedRec(); + return rec ? rec.get('name') : null; + }, + + getUserName: function(id){ + var usersStore = SSE.getCollection('Common.Collections.Users'); + if (usersStore){ + var rec = usersStore.findUser(id); + if (rec) + return Common.Utils.UserInfoParser.getParsedName(rec.get('username')); + } + return this.guestText; + }, + + onSelectItem: function(lisvView, itemView, record) { + this.userTipHide(); + var rawData = {}, + isViewSelect = _.isFunction(record.toJSON); + + if (isViewSelect){ + if (record.get('selected')) { + rawData = record.toJSON(); + } else {// record deselected + return; + } + this.currentView = _.indexOf(this.viewList.store.models, record); + this.btnRename.setDisabled(rawData.lock); + this.btnDelete.setDisabled(rawData.lock); + } + }, + + close: function () { + this.userTipHide(); + this.api.asc_unregisterCallback('asc_onRefreshNamedSheetViewList', this.wrapEvents.onRefreshNamedSheetViewList); + + Common.Views.AdvancedSettingsWindow.prototype.close.call(this); + }, + + onKeyDown: function (lisvView, record, e) { + if (e.keyCode==Common.UI.Keys.DELETE && !this.btnDelete.isDisabled()) + this.onDelete(); + }, + + onDblClickItem: function (lisvView, record, e) { + this.onPrimary(); + }, + + txtTitle: 'Sheet View Manager', + textViews: 'Sheet views', + closeButtonText : 'Close', + textNew: 'New', + textRename: 'Rename', + textDuplicate: 'Duplicate', + textDelete: 'Delete', + textGoTo: 'Go to view', + textEmpty: 'No views have been created yet.', + guestText: 'Guest', + tipIsLocked: 'This element is being edited by another user.', + textRenameLabel: 'Rename view', + textRenameError: 'View name must not be empty.', + warnDeleteView: "You are trying to delete the currently enabled view '%1'.
    Close this view and delete it?" + + }, SSE.Views.ViewManagerDlg || {})); +}); \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/view/ViewTab.js b/apps/spreadsheeteditor/main/app/view/ViewTab.js new file mode 100644 index 000000000..0420a1495 --- /dev/null +++ b/apps/spreadsheeteditor/main/app/view/ViewTab.js @@ -0,0 +1,321 @@ +/* + * + * (c) Copyright Ascensio System SIA 2010-2020 + * + * This program is a free software product. You can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License (AGPL) + * version 3 as published by the Free Software Foundation. In accordance with + * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect + * that Ascensio System SIA expressly excludes the warranty of non-infringement + * of any third-party rights. + * + * This program is distributed WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For + * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html + * + * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha + * street, Riga, Latvia, EU, LV-1050. + * + * The interactive user interfaces in modified source and object code versions + * of the Program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU AGPL version 3. + * + * Pursuant to Section 7(b) of the License you must retain the original Product + * logo when distributing the program. Pursuant to Section 7(e) we decline to + * grant you any rights under trademark law for use of our trademarks. + * + * All the Product's GUI elements, including illustrations and icon sets, as + * well as technical writing content are licensed under the terms of the + * Creative Commons Attribution-ShareAlike 4.0 International. See the License + * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + * + */ +/** + * ViewTab.js + * + * Created by Julia Radzhabova on 08.07.2020 + * Copyright (c) 2020 Ascensio System SIA. All rights reserved. + * + */ + +define([ + 'common/main/lib/util/utils', + 'common/main/lib/component/BaseView', + 'common/main/lib/component/Layout' +], function () { + 'use strict'; + + SSE.Views.ViewTab = Common.UI.BaseView.extend(_.extend((function(){ + function setEvents() { + var me = this; + if ( me.appConfig.canFeatureViews ) { + me.btnCloseView.on('click', function (btn, e) { + me.fireEvent('viewtab:openview', [{name: 'default', value: 'default'}]); + }); + me.btnCreateView.on('click', function (btn, e) { + me.fireEvent('viewtab:createview'); + }); + } + + me.btnFreezePanes.on('click', function (btn, e) { + me.fireEvent('viewtab:freeze', [btn.pressed]); + }); + this.chFormula.on('change', function (field, value) { + me.fireEvent('viewtab:formula', [0, value]); + }); + this.chHeadings.on('change', function (field, value) { + me.fireEvent('viewtab:headings', [1, value]); + }); + this.chGridlines.on('change', function (field, value) { + me.fireEvent('viewtab:gridlines', [2, value]); + }); + this.cmbZoom.on('selected', function(combo, record) { + me.fireEvent('viewtab:zoom', [record.value]); + }); + } + + return { + options: {}, + + initialize: function (options) { + Common.UI.BaseView.prototype.initialize.call(this); + this.toolbar = options.toolbar; + this.appConfig = options.mode; + + this.lockedControls = []; + + var me = this, + $host = me.toolbar.$el, + _set = SSE.enumLock; + + if ( me.appConfig.canFeatureViews ) { + this.btnSheetView = new Common.UI.Button({ + parentEl: $host.find('#slot-btn-sheet-view'), + cls: 'btn-toolbar x-huge icon-top', + iconCls: 'toolbar__icon btn-sheet-view', + caption: me.capBtnSheetView, + lock : [_set.lostConnect, _set.coAuth], + menu: true + }); + this.lockedControls.push(this.btnSheetView); + + this.btnCreateView = new Common.UI.Button({ + id : 'id-toolbar-btn-createview', + cls : 'btn-toolbar', + iconCls : 'toolbar__icon btn-sheet-view-new', + caption : this.textCreate, + lock : [_set.coAuth, _set.lostConnect] + }); + this.lockedControls.push(this.btnCreateView); + Common.Utils.injectComponent($host.find('#slot-createview'), this.btnCreateView); + + this.btnCloseView = new Common.UI.Button({ + id : 'id-toolbar-btn-closeview', + cls : 'btn-toolbar', + iconCls : 'toolbar__icon btn-sheet-view-close', + caption : this.textClose, + lock : [_set.coAuth, _set.lostConnect] + }); + this.lockedControls.push(this.btnCloseView); + Common.Utils.injectComponent($host.find('#slot-closeview'), this.btnCloseView); + } + + this.btnFreezePanes = new Common.UI.Button({ + parentEl: $host.find('#slot-btn-freeze'), + cls: 'btn-toolbar x-huge icon-top', + iconCls: 'toolbar__icon btn-freeze-panes', + caption: this.capBtnFreeze, + split: false, + enableToggle: true, + lock: [_set.sheetLock, _set.lostConnect, _set.coAuth] + }); + this.lockedControls.push(this.btnFreezePanes); + + this.cmbZoom = new Common.UI.ComboBox({ + el : $host.find('#slot-field-zoom'), + cls : 'input-group-nr', + menuStyle : 'min-width: 55px;', + hint : me.tipFontSize, + editable : false, + lock : [_set.coAuth, _set.lostConnect], + data : [ + { displayValue: "50%", value: 50 }, + { displayValue: "75%", value: 75 }, + { displayValue: "100%", value: 100 }, + { displayValue: "125%", value: 125 }, + { displayValue: "150%", value: 150 }, + { displayValue: "175%", value: 175 }, + { displayValue: "200%", value: 200 } + ] + }); + this.cmbZoom.setValue(100); + + this.chFormula = new Common.UI.CheckBox({ + el: $host.findById('#slot-chk-formula'), + labelText: this.textFormula, + value: !Common.localStorage.getBool('sse-hidden-formula'), + lock : [_set.lostConnect, _set.coAuth] + }); + this.lockedControls.push(this.chFormula); + + this.chHeadings = new Common.UI.CheckBox({ + el: $host.findById('#slot-chk-heading'), + labelText: this.textHeadings, + lock : [_set.sheetLock, _set.lostConnect, _set.coAuth] + }); + this.lockedControls.push(this.chHeadings); + + this.chGridlines = new Common.UI.CheckBox({ + el: $host.findById('#slot-chk-gridlines'), + labelText: this.textGridlines, + lock : [_set.sheetLock, _set.lostConnect, _set.coAuth] + }); + this.lockedControls.push(this.chGridlines); + + $host.find('#slot-lbl-zoom').text(this.textZoom); + + Common.NotificationCenter.on('app:ready', this.onAppReady.bind(this)); + }, + + render: function (el) { + return this; + }, + + onAppReady: function (config) { + var me = this; + (new Promise(function (accept, reject) { + accept(); + })).then(function(){ + if (!config.canFeatureViews) { + me.toolbar && me.toolbar.$el.find('.group.sheet-views').hide(); + me.toolbar && me.toolbar.$el.find('.separator.sheet-views').hide(); + } else { + me.btnSheetView.updateHint( me.tipSheetView ); + me.setButtonMenu(me.btnSheetView); + + me.btnCreateView.updateHint(me.tipCreate); + me.btnCloseView.updateHint(me.tipClose); + } + me.btnFreezePanes.updateHint(me.tipFreeze); + + setEvents.call(me); + }); + }, + + focusInner: function(menu, e) { + if (e.keyCode == Common.UI.Keys.UP) + menu.items[menu.items.length-1].cmpEl.find('> a').focus(); + else + menu.items[0].cmpEl.find('> a').focus(); + }, + + focusOuter: function(menu, e) { + menu.items[2].cmpEl.find('> a').focus(); + }, + + onBeforeKeyDown: function(menu, e) { + if (e.keyCode == Common.UI.Keys.RETURN) { + e.preventDefault(); + e.stopPropagation(); + var li = $(e.target).closest('li'); + (li.length>0) && li.click(); + Common.UI.Menu.Manager.hideAll(); + } else if (e.namespace!=="after.bs.dropdown" && (e.keyCode == Common.UI.Keys.DOWN || e.keyCode == Common.UI.Keys.UP)) { + var $items = $('> [role=menu] > li:not(.divider):not(.disabled):visible', menu.$el).find('> a'); + if (!$items.length) return; + var index = $items.index($items.filter(':focus')), + me = this; + if (menu._outerMenu && (e.keyCode == Common.UI.Keys.UP && index==0 || e.keyCode == Common.UI.Keys.DOWN && index==$items.length - 1) || + menu._innerMenu && (e.keyCode == Common.UI.Keys.UP || e.keyCode == Common.UI.Keys.DOWN) && index!==-1) { + e.preventDefault(); + e.stopPropagation(); + _.delay(function() { + menu._outerMenu ? me.focusOuter(menu._outerMenu, e) : me.focusInner(menu._innerMenu, e); + }, 10); + } + } + }, + + setButtonMenu: function(btn) { + var me = this, + arr = [{caption: me.textDefault, value: 'default', checkable: true, allowDepress: false}]; + btn.setMenu(new Common.UI.Menu({ + items: [ + {template: _.template('
    ')}, + { caption: '--' }, + { + caption: me.textManager, + value: 'manager' + } + ] + })); + btn.menu.items[2].on('click', function (item, e) { + me.fireEvent('viewtab:manager'); + }); + btn.menu.on('show:after', function (menu, e) { + var internalMenu = menu._innerMenu; + internalMenu.scroller.update({alwaysVisibleY: true}); + _.delay(function() { + menu._innerMenu && menu._innerMenu.cmpEl.focus(); + }, 10); + }).on('show:before', function (menu, e) { + me.fireEvent('viewtab:showview'); + }).on('keydown:before', _.bind(me.onBeforeKeyDown, this)); + + var menu = new Common.UI.Menu({ + maxHeight: 300, + cls: 'internal-menu', + items: arr + }); + menu.render(btn.menu.items[0].cmpEl.children(':first')); + menu.cmpEl.css({ + display : 'block', + position : 'relative', + left : 0, + top : 0 + }); + menu.cmpEl.attr({tabindex: "-1"}); + menu.on('item:toggle', function (menu, item, state, e) { + if (!!state) + me.fireEvent('viewtab:openview', [{name: item.caption, value: item.value}]); + }).on('keydown:before', _.bind(me.onBeforeKeyDown, this)); + btn.menu._innerMenu = menu; + menu._outerMenu = btn.menu; + }, + + show: function () { + Common.UI.BaseView.prototype.show.call(this); + this.fireEvent('show', this); + }, + + getButtons: function(type) { + if (type===undefined) + return this.lockedControls; + return []; + }, + + SetDisabled: function (state) { + this.lockedControls && this.lockedControls.forEach(function(button) { + if ( button ) { + button.setDisabled(state); + } + }, this); + }, + + capBtnSheetView: 'Sheet View', + capBtnFreeze: 'Freeze Panes', + textZoom: 'Zoom', + tipSheetView: 'Sheet view', + textDefault: 'Default', + textManager: 'View manager', + tipFreeze: 'Freeze panes', + tipCreate: 'Create sheet view', + tipClose: 'Close sheet view', + textCreate: 'New', + textClose: 'Close', + textFormula: 'Formula bar', + textHeadings: 'Headings', + textGridlines: 'Gridlines' + } + }()), SSE.Views.ViewTab || {})); +}); diff --git a/apps/spreadsheeteditor/main/app_dev.js b/apps/spreadsheeteditor/main/app_dev.js index 08f9f3083..71c3aff86 100644 --- a/apps/spreadsheeteditor/main/app_dev.js +++ b/apps/spreadsheeteditor/main/app_dev.js @@ -151,6 +151,7 @@ require([ 'Main', 'PivotTable', 'DataTab', + 'ViewTab', 'Common.Controllers.Fonts', 'Common.Controllers.Chat', 'Common.Controllers.Comments', @@ -174,6 +175,7 @@ require([ 'spreadsheeteditor/main/app/controller/Print', 'spreadsheeteditor/main/app/controller/PivotTable', 'spreadsheeteditor/main/app/controller/DataTab', + 'spreadsheeteditor/main/app/controller/ViewTab', 'spreadsheeteditor/main/app/view/FileMenuPanels', 'spreadsheeteditor/main/app/view/ParagraphSettings', 'spreadsheeteditor/main/app/view/ImageSettings', diff --git a/apps/spreadsheeteditor/main/locale/en.json b/apps/spreadsheeteditor/main/locale/en.json index b87701625..76229fefc 100644 --- a/apps/spreadsheeteditor/main/locale/en.json +++ b/apps/spreadsheeteditor/main/locale/en.json @@ -103,6 +103,8 @@ "Common.Views.CopyWarningDialog.textToPaste": "for Paste", "Common.Views.DocumentAccessDialog.textLoading": "Loading...", "Common.Views.DocumentAccessDialog.textTitle": "Sharing Settings", + "Common.Views.EditNameDialog.textLabel": "Label:", + "Common.Views.EditNameDialog.textLabelError": "Label must not be empty.", "Common.Views.Header.labelCoUsersDescr": "Users who are editing the file:", "Common.Views.Header.textAdvSettings": "Advanced settings", "Common.Views.Header.textBack": "Open file location", @@ -850,6 +852,7 @@ "SSE.Controllers.Main.warnNoLicense": "You've reached the limit for simultaneous connections to %1 editors. This document will be opened for viewing only.
    Contact %1 sales team for personal upgrade terms.", "SSE.Controllers.Main.warnNoLicenseUsers": "You've reached the user limit for %1 editors. Contact %1 sales team for personal upgrade terms.", "SSE.Controllers.Main.warnProcessRightsChange": "You have been denied the right to edit the file.", + "SSE.Controllers.Main.errorEditView": "The existing sheet view cannot be edited and the new ones cannot be created at the moment as some of them are being edited.", "SSE.Controllers.Print.strAllSheets": "All Sheets", "SSE.Controllers.Print.textFirstCol": "First column", "SSE.Controllers.Print.textFirstRow": "First row", @@ -867,6 +870,7 @@ "SSE.Controllers.Statusbar.strSheet": "Sheet", "SSE.Controllers.Statusbar.warnDeleteSheet": "The selected worksheets might contain data. Are you sure you want to proceed?", "SSE.Controllers.Statusbar.zoomText": "Zoom {0}%", + "SSE.Controllers.Statusbar.textSheetViewTip": "You are in Sheet View mode. Filters and sorting are visible only to you and those who are still in this view.", "SSE.Controllers.Toolbar.confirmAddFontName": "The font you are going to save is not available on the current device.
    The text style will be displayed using one of the system fonts, the saved font will be used when it is available.
    Do you want to continue?", "SSE.Controllers.Toolbar.errorMaxRows": "ERROR! The maximum number of data series per chart is 255", "SSE.Controllers.Toolbar.errorStockChart": "Incorrect row order. To build a stock chart place the data on the sheet in the following order:
    opening price, max price, min price, closing price.", @@ -2183,6 +2187,7 @@ "SSE.Views.PivotTable.txtCreate": "Insert Table", "SSE.Views.PivotTable.txtRefresh": "Refresh", "SSE.Views.PivotTable.txtSelect": "Select", + "SSE.Views.PivotTable.txtPivotTable": "Pivot Table", "SSE.Views.PrintSettings.btnDownload": "Save & Download", "SSE.Views.PrintSettings.btnPrint": "Save & Print", "SSE.Views.PrintSettings.strBottom": "Bottom", @@ -2890,6 +2895,7 @@ "SSE.Views.Toolbar.txtTime": "Time", "SSE.Views.Toolbar.txtUnmerge": "Unmerge Cells", "SSE.Views.Toolbar.txtYen": "¥ Yen", + "SSE.Views.Toolbar.textTabView": "View", "SSE.Views.Top10FilterDialog.textType": "Show", "SSE.Views.Top10FilterDialog.txtBottom": "Bottom", "SSE.Views.Top10FilterDialog.txtBy": "by", @@ -2926,5 +2932,33 @@ "SSE.Views.ValueFieldSettingsDialog.txtSum": "Sum", "SSE.Views.ValueFieldSettingsDialog.txtSummarize": "Summarize value field by", "SSE.Views.ValueFieldSettingsDialog.txtVar": "Var", - "SSE.Views.ValueFieldSettingsDialog.txtVarp": "Varp" + "SSE.Views.ValueFieldSettingsDialog.txtVarp": "Varp", + "SSE.Views.ViewManagerDlg.txtTitle": "Sheet View Manager", + "SSE.Views.ViewManagerDlg.textViews": "Sheet views", + "SSE.Views.ViewManagerDlg.closeButtonText": "Close", + "SSE.Views.ViewManagerDlg.textNew": "New", + "SSE.Views.ViewManagerDlg.textRename": "Rename", + "SSE.Views.ViewManagerDlg.textDuplicate": "Duplicate", + "SSE.Views.ViewManagerDlg.textDelete": "Delete", + "SSE.Views.ViewManagerDlg.textGoTo": "Go to view", + "SSE.Views.ViewManagerDlg.textEmpty": "No views have been created yet.", + "SSE.Views.ViewManagerDlg.guestText": "Guest", + "SSE.Views.ViewManagerDlg.tipIsLocked": "This element is being edited by another user.", + "SSE.Views.ViewManagerDlg.textRenameLabel": "Rename view", + "SSE.Views.ViewManagerDlg.textRenameError": "View name must not be empty.", + "SSE.Views.ViewManagerDlg.warnDeleteView": "You are trying to delete the currently enabled view '%1'.
    Close this view and delete it?", + "SSE.Views.ViewTab.capBtnSheetView": "Sheet View", + "SSE.Views.ViewTab.capBtnFreeze": "Freeze Panes", + "SSE.Views.ViewTab.textZoom": "Zoom", + "SSE.Views.ViewTab.tipSheetView": "Sheet view", + "SSE.Views.ViewTab.textDefault": "Default", + "SSE.Views.ViewTab.textManager": "View manager", + "SSE.Views.ViewTab.tipFreeze": "Freeze panes", + "SSE.Views.ViewTab.tipCreate": "Create sheet view", + "SSE.Views.ViewTab.tipClose": "Close sheet view", + "SSE.Views.ViewTab.textCreate": "New", + "SSE.Views.ViewTab.textClose": "Close", + "SSE.Views.ViewTab.textFormula": "Formula bar", + "SSE.Views.ViewTab.textHeadings": "Headings", + "SSE.Views.ViewTab.textGridlines": "Gridlines" } \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/resources/formula-lang/de.json b/apps/spreadsheeteditor/main/resources/formula-lang/de.json index 2d68627c1..a989613a4 100644 --- a/apps/spreadsheeteditor/main/resources/formula-lang/de.json +++ b/apps/spreadsheeteditor/main/resources/formula-lang/de.json @@ -288,7 +288,7 @@ "DISC": "DISAGIO", "DOLLARDE": "NOTIERUNGDEZ", "DOLLARFR": "NOTIERUNGBRU", - "DURATION": "DURATIONТ", + "DURATION": "DURATIONT", "EFFECT": "EFFEKTIV", "FV": "ZW", "FVSCHEDULE": "ZW2", diff --git a/apps/spreadsheeteditor/main/resources/formula-lang/en.json b/apps/spreadsheeteditor/main/resources/formula-lang/en.json index 750499087..7b3c2aedf 100644 --- a/apps/spreadsheeteditor/main/resources/formula-lang/en.json +++ b/apps/spreadsheeteditor/main/resources/formula-lang/en.json @@ -117,7 +117,7 @@ "SEARCH": "SEARCH", "SEARCHB": "SEARCHB", "SUBSTITUTE": "SUBSTITUTE", - "T": "Т", + "T": "T", "T.TEST": "T.TEST", "TEXT": "TEXT", "TEXTJOIN": "TEXTJOIN", diff --git a/apps/spreadsheeteditor/main/resources/formula-lang/fr.json b/apps/spreadsheeteditor/main/resources/formula-lang/fr.json index 27e4d86f0..e37002ce7 100644 --- a/apps/spreadsheeteditor/main/resources/formula-lang/fr.json +++ b/apps/spreadsheeteditor/main/resources/formula-lang/fr.json @@ -117,7 +117,7 @@ "SEARCH": "CHERCHE", "SEARCHB": "CHERCHERB", "SUBSTITUTE": "SUBSTITUE", - "T": "Т", + "T": "T", "T.TEST": "T.TEST", "TEXT": "TEXTE", "TEXTJOIN": "JOINDRE.TEXTE", diff --git a/apps/spreadsheeteditor/main/resources/formula-lang/it.json b/apps/spreadsheeteditor/main/resources/formula-lang/it.json index 49c97be18..d66106a1d 100644 --- a/apps/spreadsheeteditor/main/resources/formula-lang/it.json +++ b/apps/spreadsheeteditor/main/resources/formula-lang/it.json @@ -116,7 +116,7 @@ "SEARCH": "RICERCA", "SEARCHB": "SEARCHB", "SUBSTITUTE": "SOSTITUISCI", - "T": "Т", + "T": "T", "T.TEST": "TESTT", "TEXT": "TESTO", "TEXTJOIN": "TEXTJOIN", diff --git a/apps/spreadsheeteditor/main/resources/img/toolbar/1.25x/btn-sheet-view.png b/apps/spreadsheeteditor/main/resources/img/toolbar/1.25x/btn-sheet-view.png new file mode 100644 index 000000000..76dd2895a Binary files /dev/null and b/apps/spreadsheeteditor/main/resources/img/toolbar/1.25x/btn-sheet-view.png differ diff --git a/apps/spreadsheeteditor/main/resources/img/toolbar/1.5x/btn-sheet-view.png b/apps/spreadsheeteditor/main/resources/img/toolbar/1.5x/btn-sheet-view.png new file mode 100644 index 000000000..f9d9e25b3 Binary files /dev/null and b/apps/spreadsheeteditor/main/resources/img/toolbar/1.5x/btn-sheet-view.png differ diff --git a/apps/spreadsheeteditor/main/resources/img/toolbar/1.75x/btn-sheet-view.png b/apps/spreadsheeteditor/main/resources/img/toolbar/1.75x/btn-sheet-view.png new file mode 100644 index 000000000..f793aea61 Binary files /dev/null and b/apps/spreadsheeteditor/main/resources/img/toolbar/1.75x/btn-sheet-view.png differ diff --git a/apps/spreadsheeteditor/main/resources/img/toolbar/1x/btn-sheet-view.png b/apps/spreadsheeteditor/main/resources/img/toolbar/1x/btn-sheet-view.png new file mode 100644 index 000000000..142fdc3ad Binary files /dev/null and b/apps/spreadsheeteditor/main/resources/img/toolbar/1x/btn-sheet-view.png differ diff --git a/apps/spreadsheeteditor/main/resources/img/toolbar/2x/btn-sheet-view.png b/apps/spreadsheeteditor/main/resources/img/toolbar/2x/btn-sheet-view.png new file mode 100644 index 000000000..fdd10ee87 Binary files /dev/null and b/apps/spreadsheeteditor/main/resources/img/toolbar/2x/btn-sheet-view.png differ diff --git a/apps/spreadsheeteditor/main/resources/less/statusbar.less b/apps/spreadsheeteditor/main/resources/less/statusbar.less index 57d21312f..10116eef9 100644 --- a/apps/spreadsheeteditor/main/resources/less/statusbar.less +++ b/apps/spreadsheeteditor/main/resources/less/statusbar.less @@ -236,6 +236,20 @@ } } + &.icon-visible { + > span { + padding-left: 25px; + > .toolbar__icon { + width: 20px; + height: 20px; + position: absolute; + top: 0; + left: 0; + margin: 3px; + } + } + } + &.disabled { opacity: 0.5; @@ -271,6 +285,16 @@ padding-left: 10px; } } + &.icon-visible { + > span { + padding-left: 24px; + } + &.right { + > span { + padding-left: 25px; + } + } + } } &.separator-item { margin-left: 20px; diff --git a/apps/spreadsheeteditor/main/resources/less/toolbar.less b/apps/spreadsheeteditor/main/resources/less/toolbar.less index ebc025adc..c532ae550 100644 --- a/apps/spreadsheeteditor/main/resources/less/toolbar.less +++ b/apps/spreadsheeteditor/main/resources/less/toolbar.less @@ -161,3 +161,8 @@ width: 38px; height: 38px; } + +#slot-field-zoom { + float: left; + min-width: 46px; +} \ No newline at end of file diff --git a/apps/spreadsheeteditor/mobile/resources/l10n/functions/de.json b/apps/spreadsheeteditor/mobile/resources/l10n/functions/de.json index 015593e47..423935650 100644 --- a/apps/spreadsheeteditor/mobile/resources/l10n/functions/de.json +++ b/apps/spreadsheeteditor/mobile/resources/l10n/functions/de.json @@ -1 +1 @@ -{"DATE":"DATUM","DATEDIF":"DATEDIF","DATEVALUE":"DATWERT","DAY":"TAG","DAYS":"TAGE","DAYS360":"TAGE360","EDATE":"EDATUM","EOMONTH":"MONATSENDE","HOUR":"STUNDE","ISOWEEKNUM":"ISOKALENDERWOCHE","MINUTE":"MINUTE","MONTH":"MONAT","NETWORKDAYS":"NETTOARBEITSTAGE","NETWORKDAYS.INTL":"NETTOARBEITSTAGE.INTL","NOW":"JETZT","SECOND":"SEKUNDE","TIME":"ZEIT","TIMEVALUE":"ZEITWERT","TODAY":"HEUTE","WEEKDAY":"WOCHENTAG","WEEKNUM":"KALENDERWOCHE","WORKDAY":"ARBEITSTAG","WORKDAY.INTL":"ARBEITSTAG.INTL","YEAR":"JAHR","YEARFRAC":"BRTEILJAHRE","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BININDEZ","BIN2HEX":"BININHEX","BIN2OCT":"BININOKT","BITAND":"BITUND","BITLSHIFT":"BITLVERSCHIEB","BITOR":"BITODER","BITRSHIFT":"BITRVERSCHIEB","BITXOR":"BITXODER","COMPLEX":"KOMPLEXE","CONVERT":"UMWANDELN","DEC2BIN":"DEZINBIN","DEC2HEX":"DEZINHEX","DEC2OCT":"DEZINOKT","DELTA":"DELTA","ERF":"GAUSSFEHLER","ERF.PRECISE":"GAUSSFKOMPL.GENAU","ERFC":"GAUSSFKOMPL","ERFC.PRECISE":"GAUSSFKOMPL.GENAU","GESTEP":"GGANZZAHL","HEX2BIN":"HEXINBIN","HEX2DEC":"HEXINDEZ","HEX2OCT":"HEXINOKT","IMABS":"IMABS","IMAGINARY":"IMAGINÄRTEIL","IMARGUMENT":"IMARGUMENT","IMCONJUGATE":"IMKONJUGIERTE","IMCOS":"IMCOS","IMCOSH":"IMCOSH","IMCOT":"IMCOT","IMCSC":"IMCOSEC","IMCSCH":"IMCOSECHYP","IMDIV":"IMDIV","IMEXP":"IMEXP","IMLN":"IMLN","IMLOG10":"IMLOG10","IMLOG2":"IMLOG2","IMPOWER":"IMAPOTENZ","IMPRODUCT":"IMPRODUKT","IMREAL":"IMREALTEIL","IMSEC":"IMSEC","IMSECH":"IMSECHYP","IMSIN":"IMSIN","IMSINH":"IMSINHYP","IMSQRT":"IMWURZEL","IMSUB":"IMSUB","IMSUM":"IMSUMME","IMTAN":"IMTAN","OCT2BIN":"OKTINBIN","OCT2DEC":"OKTINDEZ","OCT2HEX":"OKTINHEX","DAVERAGE":"DBMITTELWERT","DCOUNT":"DBANZAHL","DCOUNTA":"DBANZAHL2","DGET":"DBAUSZUG","DMAX":"DBMAX","DMIN":"DBMIN","DPRODUCT":"DBPRODUKT","DSTDEV":"DBSTDABW","DSTDEVP":"DBSTDABWN","DSUM":"DBSUMME","DVAR":"DBVARIANZ","DVARP":"DBVARIANZEN","CHAR":"ZEICHEN","CLEAN":"SÄUBERN","CODE":"CODE","CONCATENATE":"VERKETTEN","CONCAT":"TEXTKETTE","DOLLAR":"DM","EXACT":"IDENTISCH","FIND":"FINDEN","FINDB":"FINDENB","FIXED":"FEST","LEFT":"LINKS","LEFTB":"LINKSB","LEN":"LÄNGE","LENB":"LENB","LOWER":"KLEIN","MID":"TEIL","MIDB":"TEILB","NUMBERVALUE":"ZAHLENWERT","PROPER":"GROSS2","REPLACE":"ERSETZEN","REPLACEB":"ERSETZENB","REPT":"WIEDERHOLEN","RIGHT":"RECHTS","RIGHTB":"RECHTSB","SEARCH":"SUCHEN","SEARCHB":"SUCHENB","SUBSTITUTE":"WECHSELN","T":"T","T.TEST":"T.TEST","TEXT":"TEXT","TEXTJOIN":"TEXTVERKETTEN","TRIM":"GLÄTTEN","TRIMMEAN":"GESTUTZTMITTEL","TTEST":"TTEST","UNICHAR":"UNIZEICHEN","UNICODE":"UNICODE","UPPER":"GROSS","VALUE":"WERT","AVEDEV":"MITTELABW","AVERAGE":"MITTELWERT","AVERAGEA":"MITTELWERTA","AVERAGEIF":"MITTELWERTWENN","AVERAGEIFS":"MITTELWERTWENNS","BETADIST":"BETAVERT","BETA.DIST":"BETA.VERT","BETA.INV":"BETAINV","BINOMDIST":"BINOMVERT","BINOM.DIST":"BINOM.VERT","BINOM.DIST.RANGE":"BINOM.VERT.BEREICH","BINOM.INV":"BINOM.INV","CHIDIST":"CHIVERT","CHIINV":"CHIINV","CHITEST":"CHITEST","CHISQ.DIST":"CHIQU.VERT","CHISQ.DIST.RT":"CHIQU.VERT.RE","CHISQ.INV":"CHIQU.INV","CHISQ.INV.RT":"CHIQU.INV.RE","CHISQ.TEST":"CHIQU.TEST","CONFIDENCE":"KONFIDENZ","CONFIDENCE.NORM":"KONFIDENZ.NORM","CONFIDENCE.T":"KONFIDENZ.T","CORREL":"KORREL","COUNT":"ANZAHL","COUNTA":"ANZAHL2","COUNTBLANK":"ANZAHLLEEREZELLEN","COUNTIF":"ZÄHLENWENN","COUNTIFS":"ZÄHLENWENNS","COVAR":"KOVAR","COVARIANCE.P":"KOVARIANZ.P","COVARIANCE.S":"KOVARIANZ.S","CRITBINOM":"KRITBINOM","DEVSQ":"SUMQUADABW","EXPON.DIST":"EXPON.VERT","EXPONDIST":"EXPONVERT","FDIST":"FVERT","FINV":"FINV","FTEST":"FTEST","F.DIST":"F.VERT","F.DIST.RT":"F.VERT.RE","F.INV":"F.INV","F.INV.RT":"F.INV.RE","F.TEST":"F.TEST","FISHER":"FISHER","FISHERINV":"FISHERINV","FORECAST":"SCHÄTZER","FORECAST.ETS":"PROGNOSE.ETS","FORECAST.ETS.CONFINT":"PROGNOSE.ETS.KONFINT","FORECAST.ETS.SEASONALITY":"PROGNOSE.ETS.SAISONALITÄT","FORECAST.ETS.STAT":"PROGNOSE.ETS.STAT","FORECAST.LINEAR":"PROGNOSE.LINEAR","FREQUENCY":"HÄUFIGKEIT","GAMMA":"GAMMA","GAMMADIST":"GAMMAVERT","GAMMA.DIST":"GAMMA.VERT","GAMMAINV":"GAMMAINV","GAMMA.INV":"GAMMA.INV","GAMMALN":"GAMMALN","GAMMALN.PRECISE":"GAMMALN.GENAU","GAUSS":"GAUSS","GEOMEAN":"GEOMITTEL","HARMEAN":"HARMITTEL","HYPGEOM.DIST":"HYPGEOM.VERT","HYPGEOMDIST":"HYPGEOMVERT","INTERCEPT":"ACHSENABSCHNITT","KURT":"KURT","LARGE":"KGRÖSSTE","LOGINV":"LOGINV","LOGNORM.DIST":"LOGNORM.VERT","LOGNORM.INV":"LOGNORM.INV","LOGNORMDIST":"LOGNORMVERT","MAX":"MAX","MAXA":"MAXA","MAXIFS":"MAXWENNS","MEDIAN":"MEDIAN","MIN":"MIN","MINA":"MINA","MINIFS":"MINWENNS","MODE":"MODALWERT","MODE.MULT":"MODUS.VIELF","MODE.SNGL":"MODUS.EINF","NEGBINOM.DIST":"NEGBINOM.VERT","NEGBINOMDIST":"NEGBINOMVERT","NORM.DIST":"NORM.VERT","NORM.INV":"NORM.INV","NORM.S.DIST":"NORM.S.VERT","NORM.S.INV":"NORM.S.INV","NORMDIST":"NORMVERT","NORMINV":"NORMINV","NORMSDIST":"STANDNORMVERT","NORMSINV":"STANDNORMINV","PEARSON":"PEARSON","PERCENTILE":"QUANTIL","PERCENTILE.EXC":"QUANTIL.EXKL","PERCENTILE.INC":"QUANTIL.INKL","PERCENTRANK":"QUANTILSRANG","PERCENTRANK.EXC":"QUANTILSRANG.EXKL","PERCENTRANK.INC":"QUANTILSRANG.INKL","PERMUT":"VARIATIONEN","PERMUTATIONA":"VARIATIONEN2","PHI":"PHI","POISSON":"POISSON","POISSON.DIST":"POISSON.VERT","PROB":"WAHRSCHBEREICH","QUARTILE":"QUARTILE","QUARTILE.INC":"QUARTILE.INKL","QUARTILE.EXC":"QUARTILE.EXKL","RANK.AVG":"RANG.MITTELW","RANK.EQ":"RANG.GLEICH","RANK":"RANG","RSQ":"BESTIMMTHEITSMASS","SKEW":"SCHIEFE","SKEW.P":"SCHIEFE.P","SLOPE":"STEIGUNG","SMALL":"KKLEINSTE","STANDARDIZE":"STANDARDISIERUNG","STDEV":"STABW","STDEV.P":"STABW.N","STDEV.S":"STABW.S","STDEVA":"STABWA","STDEVP":"STABWN","STDEVPA":"STABWNA","STEYX":"STFEHLERYX","TDIST":"TVERT","TINV":"TINV","T.DIST":"T.VERT","T.DIST.2T":"T.VERT.2S","T.DIST.RT":"T.VERT.RE","T.INV":"T.INV","T.INV.2T":"T.INV.2S","VAR":"VARIANZ","VAR.P":"VAR.P","VAR.S":"VAR.S","VARA":"VARIANZA","VARP":"VARIANZEN","VARPA":"VARIANZENA","WEIBULL":"WEIBULL","WEIBULL.DIST":"WEIBULL.VERT","Z.TEST":"G.TEST","ZTEST":"GTEST","ACCRINT":"AUFGELZINS","ACCRINTM":"AUFGELZINSF","AMORDEGRC":"AMORDEGRK","AMORLINC":"AMORLINEARK","COUPDAYBS":"ZINSTERMTAGVA","COUPDAYS":"ZINSTERMTAGE","COUPDAYSNC":"ZINSTERMTAGNZ","COUPNCD":"ZINSTERMNZ","COUPNUM":"ZINSTERMZAHL","COUPPCD":"ZINSTERMVZ","CUMIPMT":"KUMZINSZ","CUMPRINC":"KUMKAPITAL","DB":"GDA2","DDB":"GDA","DISC":"DISAGIO","DOLLARDE":"NOTIERUNGDEZ","DOLLARFR":"NOTIERUNGBRU","DURATION":"DURATIONТ","EFFECT":"EFFEKTIV","FV":"ZW","FVSCHEDULE":"ZW2","INTRATE":"ZINSSATZ","IPMT":"ZINSZ","IRR":"IKV","ISPMT":"ISPMT","MDURATION":"MDURATION","MIRR":"QIKV","NOMINAL":"NOMINAL","NPER":"ZZR","NPV":"NBW","ODDFPRICE":"UNREGER.KURS","ODDFYIELD":"UNREGER.REND","ODDLPRICE":"UNREGLE.KURS","ODDLYIELD":"UNREGLE.REND","PDURATION":"PDURATION","PMT":"RMZ","PPMT":"KAPZ","PRICE":"KURS","PRICEDISC":"KURSDISAGIO","PRICEMAT":"KURSFÄLLIG","PV":"BW","RATE":"ZINS","RECEIVED":"AUSZAHLUNG","RRI":"ZSATZINVEST","SLN":"LIA","SYD":"DIA","TBILLEQ":"TBILLÄQUIV","TBILLPRICE":"TBILLKURS","TBILLYIELD":"TBILLRENDITE","VDB":"VDB","XIRR":"XINTZINSFUSS","XNPV":"XKAPITALWERT","YIELD":"RENDITE","YIELDDISC":"RENDITEDIS","YIELDMAT":"RENDITEFÄLL","ABS":"ABS","ACOS":"ARCCOS","ACOSH":"ARCCOSHYP","ACOT":"ARCCOT","ACOTH":"ARCCOTHYP","AGGREGATE":"AGGREGAT","ARABIC":"ARABISCH","ASIN":"ARCSIN","ASINH":"ARCSINHYP","ATAN":"ARCTAN","ATAN2":"ARCTAN2","ATANH":"ARCTANHYP","BASE":"BASE","CEILING":"OBERGRENZE","CEILING.MATH":"OBERGRENZE.MATHEMATIK","CEILING.PRECISE":"OBERGRENZE.GENAU","COMBIN":"KOMBINATIONEN","COMBINA":"KOMBINATIONEN2","COS":"COS","COSH":"COSHYP","COT":"COT","COTH":"COTHYP","CSC":"COSEC","CSCH":"COSECHYP","DECIMAL":"DEZIMAL","DEGREES":"GRAD","ECMA.CEILING":"ECMA.OBERGRENZE","EVEN":"GERADE","EXP":"EXP","FACT":"FAKULTÄT","FACTDOUBLE":"ZWEIFAKULTÄT","FLOOR":"UNTERGRENZE","FLOOR.PRECISE":"UNTERGRENZE.GENAU","FLOOR.MATH":"UNTERGRENZE.MATHEMATIK","GCD":"GGT","INT":"GANZZAHL","ISO.CEILING":"ISO.OBERGRENZE","LCM":"KGV","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"MDET","MINVERSE":"MINV","MMULT":"MMULT","MOD":"REST","MROUND":"VRUNDEN","MULTINOMIAL":"POLYNOMIAL","ODD":"UNGERADE","PI":"PI","POWER":"POTENZ","PRODUCT":"PRODUKT","QUOTIENT":"QUOTIENT","RADIANS":"BOGENMASS","RAND":"ZUFALLSZAHL","RANDBETWEEN":"ZUFALLSBEREICH","ROMAN":"RÖMISCH","ROUND":"RUNDEN","ROUNDDOWN":"ABRUNDEN","ROUNDUP":"AUFRUNDEN","SEC":"SEC","SECH":"SECHYP","SERIESSUM":"POTENZREIHE","SIGN":"VORZEICHEN","SIN":"SIN","SINH":"SINHYP","SQRT":"WURZEL","SQRTPI":"WURZELPI","SUBTOTAL":"TEILERGEBNIS","SUM":"SUMME","SUMIF":"SUMMEWENN","SUMIFS":"SUMMEWENNS","SUMPRODUCT":"SUMMENPRODUKT","SUMSQ":"QUADRATESUMME","SUMX2MY2":"SUMMEX2MY2","SUMX2PY2":"SUMMEX2PY2","SUMXMY2":"SUMMEXMY2","TAN":"TAN","TANH":"TANHYP","TRUNC":"KÜRZEN","ADDRESS":"ADRESSE","CHOOSE":"WAHL","COLUMN":"SPALTE","COLUMNS":"SPALTEN","FORMULATEXT":"FORMELTEXT","HLOOKUP":"WVERWEIS","INDEX":"INDEX","INDIRECT":"INDIREKT","LOOKUP":"VERWEIS","MATCH":"VERGLEICH","OFFSET":"BEREICH.VERSCHIEBEN","ROW":"ZEILE","ROWS":"ZEILEN","TRANSPOSE":"MTRANS","VLOOKUP":"SVERWEIS","ERROR.TYPE":"FEHLER.TYP","ISBLANK":"ISTLEER","ISERR":"ISTFEHL","ISERROR":"ISTFEHLER","ISEVEN":"ISTGERADE","ISFORMULA":"ISTFORMEL","ISLOGICAL":"ISTLOG","ISNA":"ISTNV","ISNONTEXT":"ISTKTEXT","ISNUMBER":"ISTZAHL","ISODD":"ISTUNGERADE","ISREF":"ISTBEZUG","ISTEXT":"ISTTEXT","N":"N","NA":"NV","SHEET":"BLATT","SHEETS":"BLÄTTER","TYPE":"TYP","AND":"UND","FALSE":"FALSCH","IF":"WENN","IFS":"WENNS","IFERROR":"WENNFEHLER","IFNA":"WENNNV","NOT":"NICHT","OR":"ODER","SWITCH":"ERSTERWERT","TRUE":"WAHR","XOR":"XODER","LocalFormulaOperands":{"StructureTables":{"h":"Kopfzeilen","d":"Daten","a":"Alle","tr":"Diese Zeile","t":"Ergebnisse"},"CONST_TRUE_FALSE":{"t":"WAHR","f":"FALSCH"},"CONST_ERROR":{"nil":"#NULL!","div":"#DIV/0!","value":"#WERT!","ref":"#BEZUG!","name":"#NAME\\?","num":"#ZAHL!","na":"#NV","getdata":"#DATEN_ABRUFEN","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file +{"DATE":"DATUM","DATEDIF":"DATEDIF","DATEVALUE":"DATWERT","DAY":"TAG","DAYS":"TAGE","DAYS360":"TAGE360","EDATE":"EDATUM","EOMONTH":"MONATSENDE","HOUR":"STUNDE","ISOWEEKNUM":"ISOKALENDERWOCHE","MINUTE":"MINUTE","MONTH":"MONAT","NETWORKDAYS":"NETTOARBEITSTAGE","NETWORKDAYS.INTL":"NETTOARBEITSTAGE.INTL","NOW":"JETZT","SECOND":"SEKUNDE","TIME":"ZEIT","TIMEVALUE":"ZEITWERT","TODAY":"HEUTE","WEEKDAY":"WOCHENTAG","WEEKNUM":"KALENDERWOCHE","WORKDAY":"ARBEITSTAG","WORKDAY.INTL":"ARBEITSTAG.INTL","YEAR":"JAHR","YEARFRAC":"BRTEILJAHRE","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BININDEZ","BIN2HEX":"BININHEX","BIN2OCT":"BININOKT","BITAND":"BITUND","BITLSHIFT":"BITLVERSCHIEB","BITOR":"BITODER","BITRSHIFT":"BITRVERSCHIEB","BITXOR":"BITXODER","COMPLEX":"KOMPLEXE","CONVERT":"UMWANDELN","DEC2BIN":"DEZINBIN","DEC2HEX":"DEZINHEX","DEC2OCT":"DEZINOKT","DELTA":"DELTA","ERF":"GAUSSFEHLER","ERF.PRECISE":"GAUSSFKOMPL.GENAU","ERFC":"GAUSSFKOMPL","ERFC.PRECISE":"GAUSSFKOMPL.GENAU","GESTEP":"GGANZZAHL","HEX2BIN":"HEXINBIN","HEX2DEC":"HEXINDEZ","HEX2OCT":"HEXINOKT","IMABS":"IMABS","IMAGINARY":"IMAGINÄRTEIL","IMARGUMENT":"IMARGUMENT","IMCONJUGATE":"IMKONJUGIERTE","IMCOS":"IMCOS","IMCOSH":"IMCOSH","IMCOT":"IMCOT","IMCSC":"IMCOSEC","IMCSCH":"IMCOSECHYP","IMDIV":"IMDIV","IMEXP":"IMEXP","IMLN":"IMLN","IMLOG10":"IMLOG10","IMLOG2":"IMLOG2","IMPOWER":"IMAPOTENZ","IMPRODUCT":"IMPRODUKT","IMREAL":"IMREALTEIL","IMSEC":"IMSEC","IMSECH":"IMSECHYP","IMSIN":"IMSIN","IMSINH":"IMSINHYP","IMSQRT":"IMWURZEL","IMSUB":"IMSUB","IMSUM":"IMSUMME","IMTAN":"IMTAN","OCT2BIN":"OKTINBIN","OCT2DEC":"OKTINDEZ","OCT2HEX":"OKTINHEX","DAVERAGE":"DBMITTELWERT","DCOUNT":"DBANZAHL","DCOUNTA":"DBANZAHL2","DGET":"DBAUSZUG","DMAX":"DBMAX","DMIN":"DBMIN","DPRODUCT":"DBPRODUKT","DSTDEV":"DBSTDABW","DSTDEVP":"DBSTDABWN","DSUM":"DBSUMME","DVAR":"DBVARIANZ","DVARP":"DBVARIANZEN","CHAR":"ZEICHEN","CLEAN":"SÄUBERN","CODE":"CODE","CONCATENATE":"VERKETTEN","CONCAT":"TEXTKETTE","DOLLAR":"DM","EXACT":"IDENTISCH","FIND":"FINDEN","FINDB":"FINDENB","FIXED":"FEST","LEFT":"LINKS","LEFTB":"LINKSB","LEN":"LÄNGE","LENB":"LENB","LOWER":"KLEIN","MID":"TEIL","MIDB":"TEILB","NUMBERVALUE":"ZAHLENWERT","PROPER":"GROSS2","REPLACE":"ERSETZEN","REPLACEB":"ERSETZENB","REPT":"WIEDERHOLEN","RIGHT":"RECHTS","RIGHTB":"RECHTSB","SEARCH":"SUCHEN","SEARCHB":"SUCHENB","SUBSTITUTE":"WECHSELN","T":"T","T.TEST":"T.TEST","TEXT":"TEXT","TEXTJOIN":"TEXTVERKETTEN","TRIM":"GLÄTTEN","TRIMMEAN":"GESTUTZTMITTEL","TTEST":"TTEST","UNICHAR":"UNIZEICHEN","UNICODE":"UNICODE","UPPER":"GROSS","VALUE":"WERT","AVEDEV":"MITTELABW","AVERAGE":"MITTELWERT","AVERAGEA":"MITTELWERTA","AVERAGEIF":"MITTELWERTWENN","AVERAGEIFS":"MITTELWERTWENNS","BETADIST":"BETAVERT","BETA.DIST":"BETA.VERT","BETA.INV":"BETAINV","BINOMDIST":"BINOMVERT","BINOM.DIST":"BINOM.VERT","BINOM.DIST.RANGE":"BINOM.VERT.BEREICH","BINOM.INV":"BINOM.INV","CHIDIST":"CHIVERT","CHIINV":"CHIINV","CHITEST":"CHITEST","CHISQ.DIST":"CHIQU.VERT","CHISQ.DIST.RT":"CHIQU.VERT.RE","CHISQ.INV":"CHIQU.INV","CHISQ.INV.RT":"CHIQU.INV.RE","CHISQ.TEST":"CHIQU.TEST","CONFIDENCE":"KONFIDENZ","CONFIDENCE.NORM":"KONFIDENZ.NORM","CONFIDENCE.T":"KONFIDENZ.T","CORREL":"KORREL","COUNT":"ANZAHL","COUNTA":"ANZAHL2","COUNTBLANK":"ANZAHLLEEREZELLEN","COUNTIF":"ZÄHLENWENN","COUNTIFS":"ZÄHLENWENNS","COVAR":"KOVAR","COVARIANCE.P":"KOVARIANZ.P","COVARIANCE.S":"KOVARIANZ.S","CRITBINOM":"KRITBINOM","DEVSQ":"SUMQUADABW","EXPON.DIST":"EXPON.VERT","EXPONDIST":"EXPONVERT","FDIST":"FVERT","FINV":"FINV","FTEST":"FTEST","F.DIST":"F.VERT","F.DIST.RT":"F.VERT.RE","F.INV":"F.INV","F.INV.RT":"F.INV.RE","F.TEST":"F.TEST","FISHER":"FISHER","FISHERINV":"FISHERINV","FORECAST":"SCHÄTZER","FORECAST.ETS":"PROGNOSE.ETS","FORECAST.ETS.CONFINT":"PROGNOSE.ETS.KONFINT","FORECAST.ETS.SEASONALITY":"PROGNOSE.ETS.SAISONALITÄT","FORECAST.ETS.STAT":"PROGNOSE.ETS.STAT","FORECAST.LINEAR":"PROGNOSE.LINEAR","FREQUENCY":"HÄUFIGKEIT","GAMMA":"GAMMA","GAMMADIST":"GAMMAVERT","GAMMA.DIST":"GAMMA.VERT","GAMMAINV":"GAMMAINV","GAMMA.INV":"GAMMA.INV","GAMMALN":"GAMMALN","GAMMALN.PRECISE":"GAMMALN.GENAU","GAUSS":"GAUSS","GEOMEAN":"GEOMITTEL","HARMEAN":"HARMITTEL","HYPGEOM.DIST":"HYPGEOM.VERT","HYPGEOMDIST":"HYPGEOMVERT","INTERCEPT":"ACHSENABSCHNITT","KURT":"KURT","LARGE":"KGRÖSSTE","LOGINV":"LOGINV","LOGNORM.DIST":"LOGNORM.VERT","LOGNORM.INV":"LOGNORM.INV","LOGNORMDIST":"LOGNORMVERT","MAX":"MAX","MAXA":"MAXA","MAXIFS":"MAXWENNS","MEDIAN":"MEDIAN","MIN":"MIN","MINA":"MINA","MINIFS":"MINWENNS","MODE":"MODALWERT","MODE.MULT":"MODUS.VIELF","MODE.SNGL":"MODUS.EINF","NEGBINOM.DIST":"NEGBINOM.VERT","NEGBINOMDIST":"NEGBINOMVERT","NORM.DIST":"NORM.VERT","NORM.INV":"NORM.INV","NORM.S.DIST":"NORM.S.VERT","NORM.S.INV":"NORM.S.INV","NORMDIST":"NORMVERT","NORMINV":"NORMINV","NORMSDIST":"STANDNORMVERT","NORMSINV":"STANDNORMINV","PEARSON":"PEARSON","PERCENTILE":"QUANTIL","PERCENTILE.EXC":"QUANTIL.EXKL","PERCENTILE.INC":"QUANTIL.INKL","PERCENTRANK":"QUANTILSRANG","PERCENTRANK.EXC":"QUANTILSRANG.EXKL","PERCENTRANK.INC":"QUANTILSRANG.INKL","PERMUT":"VARIATIONEN","PERMUTATIONA":"VARIATIONEN2","PHI":"PHI","POISSON":"POISSON","POISSON.DIST":"POISSON.VERT","PROB":"WAHRSCHBEREICH","QUARTILE":"QUARTILE","QUARTILE.INC":"QUARTILE.INKL","QUARTILE.EXC":"QUARTILE.EXKL","RANK.AVG":"RANG.MITTELW","RANK.EQ":"RANG.GLEICH","RANK":"RANG","RSQ":"BESTIMMTHEITSMASS","SKEW":"SCHIEFE","SKEW.P":"SCHIEFE.P","SLOPE":"STEIGUNG","SMALL":"KKLEINSTE","STANDARDIZE":"STANDARDISIERUNG","STDEV":"STABW","STDEV.P":"STABW.N","STDEV.S":"STABW.S","STDEVA":"STABWA","STDEVP":"STABWN","STDEVPA":"STABWNA","STEYX":"STFEHLERYX","TDIST":"TVERT","TINV":"TINV","T.DIST":"T.VERT","T.DIST.2T":"T.VERT.2S","T.DIST.RT":"T.VERT.RE","T.INV":"T.INV","T.INV.2T":"T.INV.2S","VAR":"VARIANZ","VAR.P":"VAR.P","VAR.S":"VAR.S","VARA":"VARIANZA","VARP":"VARIANZEN","VARPA":"VARIANZENA","WEIBULL":"WEIBULL","WEIBULL.DIST":"WEIBULL.VERT","Z.TEST":"G.TEST","ZTEST":"GTEST","ACCRINT":"AUFGELZINS","ACCRINTM":"AUFGELZINSF","AMORDEGRC":"AMORDEGRK","AMORLINC":"AMORLINEARK","COUPDAYBS":"ZINSTERMTAGVA","COUPDAYS":"ZINSTERMTAGE","COUPDAYSNC":"ZINSTERMTAGNZ","COUPNCD":"ZINSTERMNZ","COUPNUM":"ZINSTERMZAHL","COUPPCD":"ZINSTERMVZ","CUMIPMT":"KUMZINSZ","CUMPRINC":"KUMKAPITAL","DB":"GDA2","DDB":"GDA","DISC":"DISAGIO","DOLLARDE":"NOTIERUNGDEZ","DOLLARFR":"NOTIERUNGBRU","DURATION":"DURATIONT","EFFECT":"EFFEKTIV","FV":"ZW","FVSCHEDULE":"ZW2","INTRATE":"ZINSSATZ","IPMT":"ZINSZ","IRR":"IKV","ISPMT":"ISPMT","MDURATION":"MDURATION","MIRR":"QIKV","NOMINAL":"NOMINAL","NPER":"ZZR","NPV":"NBW","ODDFPRICE":"UNREGER.KURS","ODDFYIELD":"UNREGER.REND","ODDLPRICE":"UNREGLE.KURS","ODDLYIELD":"UNREGLE.REND","PDURATION":"PDURATION","PMT":"RMZ","PPMT":"KAPZ","PRICE":"KURS","PRICEDISC":"KURSDISAGIO","PRICEMAT":"KURSFÄLLIG","PV":"BW","RATE":"ZINS","RECEIVED":"AUSZAHLUNG","RRI":"ZSATZINVEST","SLN":"LIA","SYD":"DIA","TBILLEQ":"TBILLÄQUIV","TBILLPRICE":"TBILLKURS","TBILLYIELD":"TBILLRENDITE","VDB":"VDB","XIRR":"XINTZINSFUSS","XNPV":"XKAPITALWERT","YIELD":"RENDITE","YIELDDISC":"RENDITEDIS","YIELDMAT":"RENDITEFÄLL","ABS":"ABS","ACOS":"ARCCOS","ACOSH":"ARCCOSHYP","ACOT":"ARCCOT","ACOTH":"ARCCOTHYP","AGGREGATE":"AGGREGAT","ARABIC":"ARABISCH","ASIN":"ARCSIN","ASINH":"ARCSINHYP","ATAN":"ARCTAN","ATAN2":"ARCTAN2","ATANH":"ARCTANHYP","BASE":"BASE","CEILING":"OBERGRENZE","CEILING.MATH":"OBERGRENZE.MATHEMATIK","CEILING.PRECISE":"OBERGRENZE.GENAU","COMBIN":"KOMBINATIONEN","COMBINA":"KOMBINATIONEN2","COS":"COS","COSH":"COSHYP","COT":"COT","COTH":"COTHYP","CSC":"COSEC","CSCH":"COSECHYP","DECIMAL":"DEZIMAL","DEGREES":"GRAD","ECMA.CEILING":"ECMA.OBERGRENZE","EVEN":"GERADE","EXP":"EXP","FACT":"FAKULTÄT","FACTDOUBLE":"ZWEIFAKULTÄT","FLOOR":"UNTERGRENZE","FLOOR.PRECISE":"UNTERGRENZE.GENAU","FLOOR.MATH":"UNTERGRENZE.MATHEMATIK","GCD":"GGT","INT":"GANZZAHL","ISO.CEILING":"ISO.OBERGRENZE","LCM":"KGV","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"MDET","MINVERSE":"MINV","MMULT":"MMULT","MOD":"REST","MROUND":"VRUNDEN","MULTINOMIAL":"POLYNOMIAL","ODD":"UNGERADE","PI":"PI","POWER":"POTENZ","PRODUCT":"PRODUKT","QUOTIENT":"QUOTIENT","RADIANS":"BOGENMASS","RAND":"ZUFALLSZAHL","RANDBETWEEN":"ZUFALLSBEREICH","ROMAN":"RÖMISCH","ROUND":"RUNDEN","ROUNDDOWN":"ABRUNDEN","ROUNDUP":"AUFRUNDEN","SEC":"SEC","SECH":"SECHYP","SERIESSUM":"POTENZREIHE","SIGN":"VORZEICHEN","SIN":"SIN","SINH":"SINHYP","SQRT":"WURZEL","SQRTPI":"WURZELPI","SUBTOTAL":"TEILERGEBNIS","SUM":"SUMME","SUMIF":"SUMMEWENN","SUMIFS":"SUMMEWENNS","SUMPRODUCT":"SUMMENPRODUKT","SUMSQ":"QUADRATESUMME","SUMX2MY2":"SUMMEX2MY2","SUMX2PY2":"SUMMEX2PY2","SUMXMY2":"SUMMEXMY2","TAN":"TAN","TANH":"TANHYP","TRUNC":"KÜRZEN","ADDRESS":"ADRESSE","CHOOSE":"WAHL","COLUMN":"SPALTE","COLUMNS":"SPALTEN","FORMULATEXT":"FORMELTEXT","HLOOKUP":"WVERWEIS","INDEX":"INDEX","INDIRECT":"INDIREKT","LOOKUP":"VERWEIS","MATCH":"VERGLEICH","OFFSET":"BEREICH.VERSCHIEBEN","ROW":"ZEILE","ROWS":"ZEILEN","TRANSPOSE":"MTRANS","VLOOKUP":"SVERWEIS","ERROR.TYPE":"FEHLER.TYP","ISBLANK":"ISTLEER","ISERR":"ISTFEHL","ISERROR":"ISTFEHLER","ISEVEN":"ISTGERADE","ISFORMULA":"ISTFORMEL","ISLOGICAL":"ISTLOG","ISNA":"ISTNV","ISNONTEXT":"ISTKTEXT","ISNUMBER":"ISTZAHL","ISODD":"ISTUNGERADE","ISREF":"ISTBEZUG","ISTEXT":"ISTTEXT","N":"N","NA":"NV","SHEET":"BLATT","SHEETS":"BLÄTTER","TYPE":"TYP","AND":"UND","FALSE":"FALSCH","IF":"WENN","IFS":"WENNS","IFERROR":"WENNFEHLER","IFNA":"WENNNV","NOT":"NICHT","OR":"ODER","SWITCH":"ERSTERWERT","TRUE":"WAHR","XOR":"XODER","LocalFormulaOperands":{"StructureTables":{"h":"Kopfzeilen","d":"Daten","a":"Alle","tr":"Diese Zeile","t":"Ergebnisse"},"CONST_TRUE_FALSE":{"t":"WAHR","f":"FALSCH"},"CONST_ERROR":{"nil":"#NULL!","div":"#DIV/0!","value":"#WERT!","ref":"#BEZUG!","name":"#NAME\\?","num":"#ZAHL!","na":"#NV","getdata":"#DATEN_ABRUFEN","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file diff --git a/apps/spreadsheeteditor/mobile/resources/l10n/functions/en.json b/apps/spreadsheeteditor/mobile/resources/l10n/functions/en.json index a5ad5504f..889c78d54 100644 --- a/apps/spreadsheeteditor/mobile/resources/l10n/functions/en.json +++ b/apps/spreadsheeteditor/mobile/resources/l10n/functions/en.json @@ -1 +1 @@ -{"DATE":"DATE","DATEDIF":"DATEDIF","DATEVALUE":"DATEVALUE","DAY":"DAY","DAYS":"DAYS","DAYS360":"DAYS360","EDATE":"EDATE","EOMONTH":"EOMONTH","HOUR":"HOUR","ISOWEEKNUM":"ISOWEEKNUM","MINUTE":"MINUTE","MONTH":"MONTH","NETWORKDAYS":"NETWORKDAYS","NETWORKDAYS.INTL":"NETWORKDAYS.INTL","NOW":"NOW","SECOND":"SECOND","TIME":"TIME","TIMEVALUE":"TIMEVALUE","TODAY":"TODAY","WEEKDAY":"WEEKDAY","WEEKNUM":"WEEKNUM","WORKDAY":"WORKDAY","WORKDAY.INTL":"WORKDAY.INTL","YEAR":"YEAR","YEARFRAC":"YEARFRAC","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BIN2DEC","BIN2HEX":"BIN2HEX","BIN2OCT":"BIN2OCT","BITAND":"BITAND","BITLSHIFT":"BITLSHIFT","BITOR":"BITOR","BITRSHIFT":"BITRSHIFT","BITXOR":"BITXOR","COMPLEX":"COMPLEX","CONVERT":"CONVERT","DEC2BIN":"DEC2BIN","DEC2HEX":"DEC2HEX","DEC2OCT":"DEC2OCT","DELTA":"DELTA","ERF":"ERF","ERF.PRECISE":"ERFC.PRECISE","ERFC":"ERFC","ERFC.PRECISE":"ERFC.PRECISE","GESTEP":"GESTEP","HEX2BIN":"HEX2BIN","HEX2DEC":"HEX2DEC","HEX2OCT":"HEX2OCT","IMABS":"IMABS","IMAGINARY":"IMAGINARY","IMARGUMENT":"IMARGUMENT","IMCONJUGATE":"IMCONJUGATE","IMCOS":"IMCOS","IMCOSH":"IMCOSH","IMCOT":"IMCOT","IMCSC":"IMCSC","IMCSCH":"IMCSCH","IMDIV":"IMDIV","IMEXP":"IMEXP","IMLN":"IMLN","IMLOG10":"IMLOG10","IMLOG2":"IMLOG2","IMPOWER":"IMPOWER","IMPRODUCT":"IMPRODUCT","IMREAL":"IMREAL","IMSEC":"IMSEC","IMSECH":"IMSECH","IMSIN":"IMSIN","IMSINH":"IMSINH","IMSQRT":"IMSQRT","IMSUB":"IMSUB","IMSUM":"IMSUM","IMTAN":"IMTAN","OCT2BIN":"OCT2BIN","OCT2DEC":"OCT2DEC","OCT2HEX":"OCT2HEX","DAVERAGE":"DAVERAGE","DCOUNT":"DCOUNT","DCOUNTA":"DCOUNTA","DGET":"DGET","DMAX":"DMAX","DMIN":"DMIN","DPRODUCT":"DPRODUCT","DSTDEV":"DSTDEV","DSTDEVP":"DSTDEVP","DSUM":"DSUM","DVAR":"DVAR","DVARP":"DVARP","CHAR":"CHAR","CLEAN":"CLEAN","CODE":"CODE","CONCATENATE":"CONCATENATE","CONCAT":"CONCAT","DOLLAR":"DOLLAR","EXACT":"EXACT","FIND":"FIND","FINDB":"FINDB","FIXED":"FIXED","LEFT":"LEFT","LEFTB":"LEFTB","LEN":"LEN","LENB":"LENB","LOWER":"LOWER","MID":"MID","MIDB":"MIDB","NUMBERVALUE":"NUMBERVALUE","PROPER":"PROPER","REPLACE":"REPLACE","REPLACEB":"REPLACEB","REPT":"REPT","RIGHT":"RIGHT","RIGHTB":"RIGHTB","SEARCH":"SEARCH","SEARCHB":"SEARCHB","SUBSTITUTE":"SUBSTITUTE","T":"Т","T.TEST":"T.TEST","TEXT":"TEXT","TEXTJOIN":"TEXTJOIN","TRIM":"TRIM","TRIMMEAN":"TRIMMEAN","TTEST":"TTEST","UNICHAR":"UNICHAR","UNICODE":"UNICODE","UPPER":"UPPER","VALUE":"VALUE","AVEDEV":"AVEDEV","AVERAGE":"AVERAGE","AVERAGEA":"AVERAGEA","AVERAGEIF":"AVERAGEIF","AVERAGEIFS":"AVERAGEIFS","BETADIST":"BETADIST","BETA.DIST":"BETA.DIST","BETA.INV":"BETAINV","BINOMDIST":"BINOMDIST","BINOM.DIST":"BINOM.DIST","BINOM.DIST.RANGE":"BINOM.DIST.RANGE","BINOM.INV":"BINOM.INV","CHIDIST":"CHIDIST","CHIINV":"CHIINV","CHITEST":"CHITEST","CHISQ.DIST":"CHISQ.DIST","CHISQ.DIST.RT":"CHISQ.DIST.RT","CHISQ.INV":"CHISQ.INV","CHISQ.INV.RT":"CHISQ.INV.RT","CHISQ.TEST":"CHISQ.TEST","CONFIDENCE":"CONFIDENCE","CONFIDENCE.NORM":"CONFIDENCE.NORM","CONFIDENCE.T":"CONFIDENCE.T","CORREL":"CORREL","COUNT":"COUNT","COUNTA":"COUNTA","COUNTBLANK":"COUNTBLANK","COUNTIF":"COUNTIF","COUNTIFS":"COUNTIFS","COVAR":"COVAR","COVARIANCE.P":"COVARIANCE.P","COVARIANCE.S":"COVARIANCE.S","CRITBINOM":"CRITBINOM","DEVSQ":"DEVSQ","EXPON.DIST":"EXPON.DIST","EXPONDIST":"EXPONDIST","FDIST":"FDIST","FINV":"FINV","FTEST":"FTEST","F.DIST":"F.DIST","F.DIST.RT":"FDIST.RT","F.INV":"F.INV","F.INV.RT":"F.INV.RT","F.TEST":"F.TEST","FISHER":"FISHER","FISHERINV":"FISHERINV","FORECAST":"FORECAST","FORECAST.ETS":"FORECAST.ETS","FORECAST.ETS.CONFINT":"FORECAST.ETS.CONFINT","FORECAST.ETS.SEASONALITY":"FORECAST.ETS.SEASONALITY","FORECAST.ETS.STAT":"FORECAST.ETS.STAT","FORECAST.LINEAR":"FORECAST.LINEAR","FREQUENCY":"FREQUENCY","GAMMA":"GAMMA","GAMMADIST":"GAMMADIST","GAMMA.DIST":"GAMMA.DIST","GAMMAINV":"GAMMAINV","GAMMA.INV":"GAMMA.INV","GAMMALN":"GAMMALN","GAMMALN.PRECISE":"GAMMALN.PRECISE","GAUSS":"GAUSS","GEOMEAN":"GEOMEAN","HARMEAN":"HARMEAN","HYPGEOM.DIST":"HYPGEOM.DIST","HYPGEOMDIST":"HYPGEOMDIST","INTERCEPT":"INTERCEPT","KURT":"KURT","LARGE":"LARGE","LOGINV":"LOGINV","LOGNORM.DIST":"LOGNORM.DIST","LOGNORM.INV":"LOGNORM.INV","LOGNORMDIST":"LOGNORMDIST","MAX":"MAX","MAXA":"MAXA","MAXIFS":"MAXIFS","MEDIAN":"MEDIAN","MIN":"MIN","MINA":"MINA","MINIFS":"MINIFS","MODE":"MODE","MODE.MULT":"MODE.MULT","MODE.SNGL":"MODE.SNGL","NEGBINOM.DIST":"NEGBINOM.DIST","NEGBINOMDIST":"NEGBINOMDIST","NORM.DIST":"NORM.DIST","NORM.INV":"NORM.INV","NORM.S.DIST":"NORM.S.DIST","NORM.S.INV":"NORM.S.INV","NORMDIST":"NORMDIST","NORMINV":"NORMINV","NORMSDIST":"NORMSDIST","NORMSINV":"NORMSINV","PEARSON":"PEARSON","PERCENTILE":"PERCENTILE","PERCENTILE.EXC":"PERCENTILE.EXC","PERCENTILE.INC":"PERCENTILE.INC","PERCENTRANK":"PERCENTRANK","PERCENTRANK.EXC":"PERCENTRANK.EXC","PERCENTRANK.INC":"PERCENTRANK.INC","PERMUT":"PERMUT","PERMUTATIONA":"PERMUTATIONA","PHI":"PHI","POISSON":"POISSON","POISSON.DIST":"POISSON.DIST","PROB":"PROB","QUARTILE":"QUARTILE","QUARTILE.INC":"QUARTILE.INC","QUARTILE.EXC":"QUARTILE.EXC","RANK.AVG":"RANK.AVG","RANK.EQ":"RANK.EQ","RANK":"RANK","RSQ":"RSQ","SKEW":"SKEW","SKEW.P":"SKEW.P","SLOPE":"SLOPE","SMALL":"SMALL","STANDARDIZE":"STANDARDIZE","STDEV":"STDEV","STDEV.P":"STDEV.P","STDEV.S":"STDEV.S","STDEVA":"STDEVA","STDEVP":"STDEVP","STDEVPA":"STDEVPA","STEYX":"STEYX","TDIST":"TDIST","TINV":"TINV","T.DIST":"T.DIST","T.DIST.2T":"T.DIST.2T","T.DIST.RT":"T.DIST.RT","T.INV":"T.INV","T.INV.2T":"T.INV.2T","VAR":"VAR","VAR.P":"VAR.P","VAR.S":"VAR.S","VARA":"VARA","VARP":"VARP","VARPA":"VARPA","WEIBULL":"WEIBULL","WEIBULL.DIST":"WEIBULL.DIST","Z.TEST":"Z.TEST","ZTEST":"ZTEST","ACCRINT":"ACCRINT","ACCRINTM":"ACCRINTM","AMORDEGRC":"AMORDEGRC","AMORLINC":"AMORLINC","COUPDAYBS":"COUPDAYBS","COUPDAYS":"COUPDAYS","COUPDAYSNC":"COUPDAYSNC","COUPNCD":"COUPNCD","COUPNUM":"COUPNUM","COUPPCD":"COUPPCD","CUMIPMT":"CUMIPMT","CUMPRINC":"CUMPRINC","DB":"DB","DDB":"DDB","DISC":"DISC","DOLLARDE":"DOLLARDE","DOLLARFR":"DOLLARFR","DURATION":"DURATION","EFFECT":"EFFECT","FV":"FV","FVSCHEDULE":"FVSCHEDULE","INTRATE":"INTRATE","IPMT":"IPMT","IRR":"IRR","ISPMT":"ISPMT","MDURATION":"MDURATION","MIRR":"MIRR","NOMINAL":"NOMINAL","NPER":"NPER","NPV":"NPV","ODDFPRICE":"ODDFPRICE","ODDFYIELD":"ODDFYIELD","ODDLPRICE":"ODDLPRICE","ODDLYIELD":"ODDLYIELD","PDURATION":"PDURATION","PMT":"PMT","PPMT":"PPMT","PRICE":"PRICE","PRICEDISC":"PRICEDISC","PRICEMAT":"PRICEMAT","PV":"PV","RATE":"RATE","RECEIVED":"RECEIVED","RRI":"RRI","SLN":"SLN","SYD":"SYD","TBILLEQ":"TBILLEQ","TBILLPRICE":"TBILLPRICE","TBILLYIELD":"TBILLYIELD","VDB":"VDB","XIRR":"XIRR","XNPV":"XNPV","YIELD":"YIELD","YIELDDISC":"YIELDDISC","YIELDMAT":"YIELDMAT","ABS":"ABS","ACOS":"ACOS","ACOSH":"ACOSH","ACOT":"ACOT","ACOTH":"ACOTH","AGGREGATE":"AGGREGATE","ARABIC":"ARABIC","ASIN":"ASIN","ASINH":"ASINH","ATAN":"ATAN","ATAN2":"ATAN2","ATANH":"ATANH","BASE":"BASE","CEILING":"CEILING","CEILING.MATH":"CEILING.MATH","CEILING.PRECISE":"CEILING.PRESIZE","COMBIN":"COMBIN","COMBINA":"COMBINA","COS":"COS","COSH":"COSH","COT":"COT","COTH":"COTH","CSC":"CSC","CSCH":"CSCH","DECIMAL":"DECIMAL","DEGREES":"DEGREES","ECMA.CEILING":"ECMA.CEILING","EVEN":"EVEN","EXP":"EXP","FACT":"FACT","FACTDOUBLE":"FACTDOUBLE","FLOOR":"FLOOR","FLOOR.PRECISE":"FLOOR.PRECISE","FLOOR.MATH":"FLOOR.MATH","GCD":"GCD","INT":"INT","ISO.CEILING":"ISO.CEILING","LCM":"LCM","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"MDETERM","MINVERSE":"MINVERSE","MMULT":"MMULT","MOD":"MOD","MROUND":"MROUND","MULTINOMIAL":"MULTINOMIAL","ODD":"ODD","PI":"PI","POWER":"POWER","PRODUCT":"PRODUCT","QUOTIENT":"QUOTIENT","RADIANS":"RADIANS","RAND":"RAND","RANDBETWEEN":"RANDBETWEEN","ROMAN":"ROMAN","ROUND":"ROUND","ROUNDDOWN":"ROUNDDOWN","ROUNDUP":"ROUNDUP","SEC":"SEC","SECH":"SECH","SERIESSUM":"SERIESSUM","SIGN":"SIGN","SIN":"SIN","SINH":"SINH","SQRT":"SQRT","SQRTPI":"SQRTPI","SUBTOTAL":"SUBTOTAL","SUM":"SUM","SUMIF":"SUMIF","SUMIFS":"SUMIFS","SUMPRODUCT":"SUMPRODUCT","SUMSQ":"SUMSQ","SUMX2MY2":"SUMX2MY2","SUMX2PY2":"SUMX2PY2","SUMXMY2":"SUMXMY2","TAN":"TAN","TANH":"TANH","TRUNC":"TRUNC","ADDRESS":"ADDRESS","CHOOSE":"CHOOSE","COLUMN":"COLUMN","COLUMNS":"COLUMNS","FORMULATEXT":"FORMULATEXT","HLOOKUP":"HLOOKUP","INDEX":"INDEX","INDIRECT":"INDIRECT","LOOKUP":"LOOKUP","MATCH":"MATCH","OFFSET":"OFFSET","ROW":"ROW","ROWS":"ROWS","TRANSPOSE":"TRANSPOSE","VLOOKUP":"VLOOKUP","ERROR.TYPE":"ERROR.TYPE","ISBLANK":"ISBLANK","ISERR":"ISERR","ISERROR":"ISERROR","ISEVEN":"ISEVEN","ISFORMULA":"ISFORMULA","ISLOGICAL":"ISLOGICAL","ISNA":"ISNA","ISNONTEXT":"ISNONTEXT","ISNUMBER":"ISNUMBER","ISODD":"ISODD","ISREF":"ISREF","ISTEXT":"ISTEXT","N":"N","NA":"NA","SHEET":"SHEET","SHEETS":"SHEETS","TYPE":"TYPE","AND":"AND","FALSE":"FALSE","IF":"IF","IFS":"IFS","IFERROR":"IFERROR","IFNA":"IFNA","NOT":"NOT","OR":"OR","SWITCH":"SWITCH","TRUE":"TRUE","XOR":"XOR","LocalFormulaOperands":{"StructureTables":{"h":"Headers","d":"Data","a":"All","tr":"This row","t":"Totals"},"CONST_TRUE_FALSE":{"t":"TRUE","f":"FALSE"},"CONST_ERROR":{"nil":"#NULL!","div":"#DIV/0!","value":"#VALUE!","ref":"#REF!","name":"#NAME\\?","num":"#NUM!","na":"#N/A","getdata":"#GETTING_DATA","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file +{"DATE":"DATE","DATEDIF":"DATEDIF","DATEVALUE":"DATEVALUE","DAY":"DAY","DAYS":"DAYS","DAYS360":"DAYS360","EDATE":"EDATE","EOMONTH":"EOMONTH","HOUR":"HOUR","ISOWEEKNUM":"ISOWEEKNUM","MINUTE":"MINUTE","MONTH":"MONTH","NETWORKDAYS":"NETWORKDAYS","NETWORKDAYS.INTL":"NETWORKDAYS.INTL","NOW":"NOW","SECOND":"SECOND","TIME":"TIME","TIMEVALUE":"TIMEVALUE","TODAY":"TODAY","WEEKDAY":"WEEKDAY","WEEKNUM":"WEEKNUM","WORKDAY":"WORKDAY","WORKDAY.INTL":"WORKDAY.INTL","YEAR":"YEAR","YEARFRAC":"YEARFRAC","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BIN2DEC","BIN2HEX":"BIN2HEX","BIN2OCT":"BIN2OCT","BITAND":"BITAND","BITLSHIFT":"BITLSHIFT","BITOR":"BITOR","BITRSHIFT":"BITRSHIFT","BITXOR":"BITXOR","COMPLEX":"COMPLEX","CONVERT":"CONVERT","DEC2BIN":"DEC2BIN","DEC2HEX":"DEC2HEX","DEC2OCT":"DEC2OCT","DELTA":"DELTA","ERF":"ERF","ERF.PRECISE":"ERFC.PRECISE","ERFC":"ERFC","ERFC.PRECISE":"ERFC.PRECISE","GESTEP":"GESTEP","HEX2BIN":"HEX2BIN","HEX2DEC":"HEX2DEC","HEX2OCT":"HEX2OCT","IMABS":"IMABS","IMAGINARY":"IMAGINARY","IMARGUMENT":"IMARGUMENT","IMCONJUGATE":"IMCONJUGATE","IMCOS":"IMCOS","IMCOSH":"IMCOSH","IMCOT":"IMCOT","IMCSC":"IMCSC","IMCSCH":"IMCSCH","IMDIV":"IMDIV","IMEXP":"IMEXP","IMLN":"IMLN","IMLOG10":"IMLOG10","IMLOG2":"IMLOG2","IMPOWER":"IMPOWER","IMPRODUCT":"IMPRODUCT","IMREAL":"IMREAL","IMSEC":"IMSEC","IMSECH":"IMSECH","IMSIN":"IMSIN","IMSINH":"IMSINH","IMSQRT":"IMSQRT","IMSUB":"IMSUB","IMSUM":"IMSUM","IMTAN":"IMTAN","OCT2BIN":"OCT2BIN","OCT2DEC":"OCT2DEC","OCT2HEX":"OCT2HEX","DAVERAGE":"DAVERAGE","DCOUNT":"DCOUNT","DCOUNTA":"DCOUNTA","DGET":"DGET","DMAX":"DMAX","DMIN":"DMIN","DPRODUCT":"DPRODUCT","DSTDEV":"DSTDEV","DSTDEVP":"DSTDEVP","DSUM":"DSUM","DVAR":"DVAR","DVARP":"DVARP","CHAR":"CHAR","CLEAN":"CLEAN","CODE":"CODE","CONCATENATE":"CONCATENATE","CONCAT":"CONCAT","DOLLAR":"DOLLAR","EXACT":"EXACT","FIND":"FIND","FINDB":"FINDB","FIXED":"FIXED","LEFT":"LEFT","LEFTB":"LEFTB","LEN":"LEN","LENB":"LENB","LOWER":"LOWER","MID":"MID","MIDB":"MIDB","NUMBERVALUE":"NUMBERVALUE","PROPER":"PROPER","REPLACE":"REPLACE","REPLACEB":"REPLACEB","REPT":"REPT","RIGHT":"RIGHT","RIGHTB":"RIGHTB","SEARCH":"SEARCH","SEARCHB":"SEARCHB","SUBSTITUTE":"SUBSTITUTE","T":"T","T.TEST":"T.TEST","TEXT":"TEXT","TEXTJOIN":"TEXTJOIN","TRIM":"TRIM","TRIMMEAN":"TRIMMEAN","TTEST":"TTEST","UNICHAR":"UNICHAR","UNICODE":"UNICODE","UPPER":"UPPER","VALUE":"VALUE","AVEDEV":"AVEDEV","AVERAGE":"AVERAGE","AVERAGEA":"AVERAGEA","AVERAGEIF":"AVERAGEIF","AVERAGEIFS":"AVERAGEIFS","BETADIST":"BETADIST","BETA.DIST":"BETA.DIST","BETA.INV":"BETAINV","BINOMDIST":"BINOMDIST","BINOM.DIST":"BINOM.DIST","BINOM.DIST.RANGE":"BINOM.DIST.RANGE","BINOM.INV":"BINOM.INV","CHIDIST":"CHIDIST","CHIINV":"CHIINV","CHITEST":"CHITEST","CHISQ.DIST":"CHISQ.DIST","CHISQ.DIST.RT":"CHISQ.DIST.RT","CHISQ.INV":"CHISQ.INV","CHISQ.INV.RT":"CHISQ.INV.RT","CHISQ.TEST":"CHISQ.TEST","CONFIDENCE":"CONFIDENCE","CONFIDENCE.NORM":"CONFIDENCE.NORM","CONFIDENCE.T":"CONFIDENCE.T","CORREL":"CORREL","COUNT":"COUNT","COUNTA":"COUNTA","COUNTBLANK":"COUNTBLANK","COUNTIF":"COUNTIF","COUNTIFS":"COUNTIFS","COVAR":"COVAR","COVARIANCE.P":"COVARIANCE.P","COVARIANCE.S":"COVARIANCE.S","CRITBINOM":"CRITBINOM","DEVSQ":"DEVSQ","EXPON.DIST":"EXPON.DIST","EXPONDIST":"EXPONDIST","FDIST":"FDIST","FINV":"FINV","FTEST":"FTEST","F.DIST":"F.DIST","F.DIST.RT":"FDIST.RT","F.INV":"F.INV","F.INV.RT":"F.INV.RT","F.TEST":"F.TEST","FISHER":"FISHER","FISHERINV":"FISHERINV","FORECAST":"FORECAST","FORECAST.ETS":"FORECAST.ETS","FORECAST.ETS.CONFINT":"FORECAST.ETS.CONFINT","FORECAST.ETS.SEASONALITY":"FORECAST.ETS.SEASONALITY","FORECAST.ETS.STAT":"FORECAST.ETS.STAT","FORECAST.LINEAR":"FORECAST.LINEAR","FREQUENCY":"FREQUENCY","GAMMA":"GAMMA","GAMMADIST":"GAMMADIST","GAMMA.DIST":"GAMMA.DIST","GAMMAINV":"GAMMAINV","GAMMA.INV":"GAMMA.INV","GAMMALN":"GAMMALN","GAMMALN.PRECISE":"GAMMALN.PRECISE","GAUSS":"GAUSS","GEOMEAN":"GEOMEAN","HARMEAN":"HARMEAN","HYPGEOM.DIST":"HYPGEOM.DIST","HYPGEOMDIST":"HYPGEOMDIST","INTERCEPT":"INTERCEPT","KURT":"KURT","LARGE":"LARGE","LOGINV":"LOGINV","LOGNORM.DIST":"LOGNORM.DIST","LOGNORM.INV":"LOGNORM.INV","LOGNORMDIST":"LOGNORMDIST","MAX":"MAX","MAXA":"MAXA","MAXIFS":"MAXIFS","MEDIAN":"MEDIAN","MIN":"MIN","MINA":"MINA","MINIFS":"MINIFS","MODE":"MODE","MODE.MULT":"MODE.MULT","MODE.SNGL":"MODE.SNGL","NEGBINOM.DIST":"NEGBINOM.DIST","NEGBINOMDIST":"NEGBINOMDIST","NORM.DIST":"NORM.DIST","NORM.INV":"NORM.INV","NORM.S.DIST":"NORM.S.DIST","NORM.S.INV":"NORM.S.INV","NORMDIST":"NORMDIST","NORMINV":"NORMINV","NORMSDIST":"NORMSDIST","NORMSINV":"NORMSINV","PEARSON":"PEARSON","PERCENTILE":"PERCENTILE","PERCENTILE.EXC":"PERCENTILE.EXC","PERCENTILE.INC":"PERCENTILE.INC","PERCENTRANK":"PERCENTRANK","PERCENTRANK.EXC":"PERCENTRANK.EXC","PERCENTRANK.INC":"PERCENTRANK.INC","PERMUT":"PERMUT","PERMUTATIONA":"PERMUTATIONA","PHI":"PHI","POISSON":"POISSON","POISSON.DIST":"POISSON.DIST","PROB":"PROB","QUARTILE":"QUARTILE","QUARTILE.INC":"QUARTILE.INC","QUARTILE.EXC":"QUARTILE.EXC","RANK.AVG":"RANK.AVG","RANK.EQ":"RANK.EQ","RANK":"RANK","RSQ":"RSQ","SKEW":"SKEW","SKEW.P":"SKEW.P","SLOPE":"SLOPE","SMALL":"SMALL","STANDARDIZE":"STANDARDIZE","STDEV":"STDEV","STDEV.P":"STDEV.P","STDEV.S":"STDEV.S","STDEVA":"STDEVA","STDEVP":"STDEVP","STDEVPA":"STDEVPA","STEYX":"STEYX","TDIST":"TDIST","TINV":"TINV","T.DIST":"T.DIST","T.DIST.2T":"T.DIST.2T","T.DIST.RT":"T.DIST.RT","T.INV":"T.INV","T.INV.2T":"T.INV.2T","VAR":"VAR","VAR.P":"VAR.P","VAR.S":"VAR.S","VARA":"VARA","VARP":"VARP","VARPA":"VARPA","WEIBULL":"WEIBULL","WEIBULL.DIST":"WEIBULL.DIST","Z.TEST":"Z.TEST","ZTEST":"ZTEST","ACCRINT":"ACCRINT","ACCRINTM":"ACCRINTM","AMORDEGRC":"AMORDEGRC","AMORLINC":"AMORLINC","COUPDAYBS":"COUPDAYBS","COUPDAYS":"COUPDAYS","COUPDAYSNC":"COUPDAYSNC","COUPNCD":"COUPNCD","COUPNUM":"COUPNUM","COUPPCD":"COUPPCD","CUMIPMT":"CUMIPMT","CUMPRINC":"CUMPRINC","DB":"DB","DDB":"DDB","DISC":"DISC","DOLLARDE":"DOLLARDE","DOLLARFR":"DOLLARFR","DURATION":"DURATION","EFFECT":"EFFECT","FV":"FV","FVSCHEDULE":"FVSCHEDULE","INTRATE":"INTRATE","IPMT":"IPMT","IRR":"IRR","ISPMT":"ISPMT","MDURATION":"MDURATION","MIRR":"MIRR","NOMINAL":"NOMINAL","NPER":"NPER","NPV":"NPV","ODDFPRICE":"ODDFPRICE","ODDFYIELD":"ODDFYIELD","ODDLPRICE":"ODDLPRICE","ODDLYIELD":"ODDLYIELD","PDURATION":"PDURATION","PMT":"PMT","PPMT":"PPMT","PRICE":"PRICE","PRICEDISC":"PRICEDISC","PRICEMAT":"PRICEMAT","PV":"PV","RATE":"RATE","RECEIVED":"RECEIVED","RRI":"RRI","SLN":"SLN","SYD":"SYD","TBILLEQ":"TBILLEQ","TBILLPRICE":"TBILLPRICE","TBILLYIELD":"TBILLYIELD","VDB":"VDB","XIRR":"XIRR","XNPV":"XNPV","YIELD":"YIELD","YIELDDISC":"YIELDDISC","YIELDMAT":"YIELDMAT","ABS":"ABS","ACOS":"ACOS","ACOSH":"ACOSH","ACOT":"ACOT","ACOTH":"ACOTH","AGGREGATE":"AGGREGATE","ARABIC":"ARABIC","ASIN":"ASIN","ASINH":"ASINH","ATAN":"ATAN","ATAN2":"ATAN2","ATANH":"ATANH","BASE":"BASE","CEILING":"CEILING","CEILING.MATH":"CEILING.MATH","CEILING.PRECISE":"CEILING.PRESIZE","COMBIN":"COMBIN","COMBINA":"COMBINA","COS":"COS","COSH":"COSH","COT":"COT","COTH":"COTH","CSC":"CSC","CSCH":"CSCH","DECIMAL":"DECIMAL","DEGREES":"DEGREES","ECMA.CEILING":"ECMA.CEILING","EVEN":"EVEN","EXP":"EXP","FACT":"FACT","FACTDOUBLE":"FACTDOUBLE","FLOOR":"FLOOR","FLOOR.PRECISE":"FLOOR.PRECISE","FLOOR.MATH":"FLOOR.MATH","GCD":"GCD","INT":"INT","ISO.CEILING":"ISO.CEILING","LCM":"LCM","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"MDETERM","MINVERSE":"MINVERSE","MMULT":"MMULT","MOD":"MOD","MROUND":"MROUND","MULTINOMIAL":"MULTINOMIAL","ODD":"ODD","PI":"PI","POWER":"POWER","PRODUCT":"PRODUCT","QUOTIENT":"QUOTIENT","RADIANS":"RADIANS","RAND":"RAND","RANDBETWEEN":"RANDBETWEEN","ROMAN":"ROMAN","ROUND":"ROUND","ROUNDDOWN":"ROUNDDOWN","ROUNDUP":"ROUNDUP","SEC":"SEC","SECH":"SECH","SERIESSUM":"SERIESSUM","SIGN":"SIGN","SIN":"SIN","SINH":"SINH","SQRT":"SQRT","SQRTPI":"SQRTPI","SUBTOTAL":"SUBTOTAL","SUM":"SUM","SUMIF":"SUMIF","SUMIFS":"SUMIFS","SUMPRODUCT":"SUMPRODUCT","SUMSQ":"SUMSQ","SUMX2MY2":"SUMX2MY2","SUMX2PY2":"SUMX2PY2","SUMXMY2":"SUMXMY2","TAN":"TAN","TANH":"TANH","TRUNC":"TRUNC","ADDRESS":"ADDRESS","CHOOSE":"CHOOSE","COLUMN":"COLUMN","COLUMNS":"COLUMNS","FORMULATEXT":"FORMULATEXT","HLOOKUP":"HLOOKUP","INDEX":"INDEX","INDIRECT":"INDIRECT","LOOKUP":"LOOKUP","MATCH":"MATCH","OFFSET":"OFFSET","ROW":"ROW","ROWS":"ROWS","TRANSPOSE":"TRANSPOSE","VLOOKUP":"VLOOKUP","ERROR.TYPE":"ERROR.TYPE","ISBLANK":"ISBLANK","ISERR":"ISERR","ISERROR":"ISERROR","ISEVEN":"ISEVEN","ISFORMULA":"ISFORMULA","ISLOGICAL":"ISLOGICAL","ISNA":"ISNA","ISNONTEXT":"ISNONTEXT","ISNUMBER":"ISNUMBER","ISODD":"ISODD","ISREF":"ISREF","ISTEXT":"ISTEXT","N":"N","NA":"NA","SHEET":"SHEET","SHEETS":"SHEETS","TYPE":"TYPE","AND":"AND","FALSE":"FALSE","IF":"IF","IFS":"IFS","IFERROR":"IFERROR","IFNA":"IFNA","NOT":"NOT","OR":"OR","SWITCH":"SWITCH","TRUE":"TRUE","XOR":"XOR","LocalFormulaOperands":{"StructureTables":{"h":"Headers","d":"Data","a":"All","tr":"This row","t":"Totals"},"CONST_TRUE_FALSE":{"t":"TRUE","f":"FALSE"},"CONST_ERROR":{"nil":"#NULL!","div":"#DIV/0!","value":"#VALUE!","ref":"#REF!","name":"#NAME\\?","num":"#NUM!","na":"#N/A","getdata":"#GETTING_DATA","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file diff --git a/apps/spreadsheeteditor/mobile/resources/l10n/functions/fr.json b/apps/spreadsheeteditor/mobile/resources/l10n/functions/fr.json index a858d5ef0..cc07b6883 100644 --- a/apps/spreadsheeteditor/mobile/resources/l10n/functions/fr.json +++ b/apps/spreadsheeteditor/mobile/resources/l10n/functions/fr.json @@ -1 +1 @@ -{"DATE":"DATE","DATEDIF":"DATEDIF","DATEVALUE":"DATEVAL","DAY":"JOUR","DAYS":"JOURS","DAYS360":"JOURS360","EDATE":"MOIS.DECALER","EOMONTH":"FIN.MOIS","HOUR":"HEURE","ISOWEEKNUM":"NO.SEMAINE.ISO","MINUTE":"MINUTE","MONTH":"MOIS","NETWORKDAYS":"NB.JOURS.OUVRES","NETWORKDAYS.INTL":"NB.JOURS.OUVRES.INTL","NOW":"MAINTENANT","SECOND":"SECONDE","TIME":"TEMPS","TIMEVALUE":"TEMPSVAL","TODAY":"AUJOURDHUI","WEEKDAY":"JOURSEM","WEEKNUM":"NO.SEMAINE","WORKDAY":"SERIE.JOUR.OUVRE","WORKDAY.INTL":"SERIE.JOUR.OUVRE.INTL","YEAR":"ANNEE","YEARFRAC":"FRACTION.ANNEE","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BINDEC","BIN2HEX":"BINHEX","BIN2OCT":"BINOCT","BITAND":"BITET","BITLSHIFT":"BITDECALG","BITOR":"BITOU","BITRSHIFT":"BITDECALD","BITXOR":"BITOUEXCLUSIF","COMPLEX":"COMPLEXE","CONVERT":"CONVERT","DEC2BIN":"DECBIN","DEC2HEX":"DECHEX","DEC2OCT":"DECOCT","DELTA":"DELTA","ERF":"ERF","ERF.PRECISE":"ERFC.PRECIS","ERFC":"ERFC","ERFC.PRECISE":"ERFC.PRECIS","GESTEP":"SUP.SEUIL","HEX2BIN":"HEXBIN","HEX2DEC":"HEXDEC","HEX2OCT":"HEXOCT","IMABS":"COMPLEXE.MODULE","IMAGINARY":"COMPLEXE.IMAGINAIRE","IMARGUMENT":"COMPLEXE.ARGUMENT","IMCONJUGATE":"COMPLEXE.CONJUGUE","IMCOS":"COMPLEXE.COS","IMCOSH":"COMPLEXE.COSH","IMCOT":"COMPLEXE.COT","IMCSC":"COMPLEXE.CSC","IMCSCH":"COMPLEXE.CSCH","IMDIV":"COMPLEXE.DIV","IMEXP":"COMPLEXE.EXP","IMLN":"COMPLEXE.LN","IMLOG10":"COMPLEXE.LOG10","IMLOG2":"COMPLEXE.LOG2","IMPOWER":"COMPLEXE.PUISSANCE","IMPRODUCT":"COMPLEXE.PRODUIT","IMREAL":"COMPLEXE.REEL","IMSEC":"COMPLEXE.SEC","IMSECH":"COMPLEXE.SECH","IMSIN":"COMPLEXE.SIN","IMSINH":"COMPLEXE.SINH","IMSQRT":"COMPLEXE.RACINE","IMSUB":"COMPLEXE.DIFFERENCE","IMSUM":"COMPLEXE.SOMME","IMTAN":"COMPLEXE.TAN","OCT2BIN":"OCTBIN","OCT2DEC":"OCTDEC","OCT2HEX":"OCTHEX","DAVERAGE":"BDMOYENNE","DCOUNT":"BCOMPTE","DCOUNTA":"BDNBVAL","DGET":"BDLIRE","DMAX":"BDMAX","DMIN":"BDMIN","DPRODUCT":"BDPRODUIT","DSTDEV":"BDECARTYPE","DSTDEVP":"BDECARTYPEP","DSUM":"BDSOMME","DVAR":"BDVAR","DVARP":"BDVARP","CHAR":"CAR","CLEAN":"EPURAGE","CODE":"CODE","CONCATENATE":"CONCATENER","CONCAT":"CONCAT","DOLLAR":"DEVISE","EXACT":"EXACT","FIND":"TROUVE","FINDB":"TROUVERB","FIXED":"CTXT","LEFT":"GAUCHE","LEFTB":"GAUCHEB","LEN":"NBCAR","LENB":"LENB","LOWER":"MINUSCULE","MID":"STXT","MIDB":"MIDB","NUMBERVALUE":"VALEURNOMBRE","PROPER":"NOMPROPRE","REPLACE":"REMPLACER","REPLACEB":"REMPLACERB","REPT":"REPT","RIGHT":"DROITE","RIGHTB":"DROITEB","SEARCH":"CHERCHE","SEARCHB":"CHERCHERB","SUBSTITUTE":"SUBSTITUE","T":"Т","T.TEST":"T.TEST","TEXT":"TEXTE","TEXTJOIN":"JOINDRE.TEXTE","TRIM":"SUPPRESPACE","TRIMMEAN":"MOYENNE.REDUITE","TTEST":"TEST.STUDENT","UNICHAR":"UNICAR","UNICODE":"UNICODE","UPPER":"MAJUSCULE","VALUE":"VALEUR","AVEDEV":"ECART.MOYEN","AVERAGE":"MOYENNE","AVERAGEA":"AVERAGEA","AVERAGEIF":"MOYENNE.SI","AVERAGEIFS":"MOYENNE.SI.ENS","BETADIST":"LOI.BETA","BETA.DIST":"LOI.BETA.N","BETA.INV":"BETA.INVERSE","BINOMDIST":"LOI.BINOMIALE","BINOM.DIST":"LOI.BINOMIALE.N","BINOM.DIST.RANGE":"LOI.BINOMIALE.SERIE","BINOM.INV":"LOI.BINOMIALE.INVERSE","CHIDIST":"LOI.KHIDEUX","CHIINV":"KHIDEUX.INVERSE","CHITEST":"TEST.KHIDEUX","CHISQ.DIST":"LOI.KHIDEUX.N","CHISQ.DIST.RT":"LOI.KHIDEUX.DROITE","CHISQ.INV":"LOI.KHIDEUX.INVERSE","CHISQ.INV.RT":"LOI.KHIDEUX.INVERSE.DROITE","CHISQ.TEST":"CHISQ.TEST","CONFIDENCE":"INTERVALLE.CONFIANCE","CONFIDENCE.NORM":"INTERVALLE.CONFIANCE.NORMAL","CONFIDENCE.T":"INTERVALLE.CONFIANCE.STUDENT","CORREL":"COEFFICIENT.CORRELATION","COUNT":"NB","COUNTA":"NBVAL","COUNTBLANK":"NB.VIDE","COUNTIF":"NB.SI","COUNTIFS":"NB.SI.ENS","COVAR":"COVARIANCE","COVARIANCE.P":"COVARIANCE.PEARSON","COVARIANCE.S":"COVARIANCE.STANDARD","CRITBINOM":"CRITERE.LOI.BINOMIALE","DEVSQ":"SOMME.CARRES.ECARTS","EXPON.DIST":"LOI.EXPONENTIELLE.N","EXPONDIST":"LOI.EXPONENTIELLE","FDIST":"LOI.F","FINV":"INVERSE.LOI.F","FTEST":"TEST.F","F.DIST":"LOI.F.N","F.DIST.RT":"LOI.F.DROITE","F.INV":"INVERSE.LOI.F.N","F.INV.RT":"INVERSE.LOI.F.DROITE","F.TEST":"F.TEST","FISHER":"FISHER","FISHERINV":"FISHER.INVERSE","FORECAST":"PREVISION","FORECAST.ETS":"PREVISION.ETS","FORECAST.ETS.CONFINT":"PREVISION.ETS.CONFINT","FORECAST.ETS.SEASONALITY":"PREVISION.ETS.CARACTERESAISONNIER","FORECAST.ETS.STAT":"PREVISION.ETS.STAT","FORECAST.LINEAR":"PREVISION.LINEAIRE","FREQUENCY":"FREQUENCE","GAMMA":"GAMMA","GAMMADIST":"LOI.GAMMA","GAMMA.DIST":"LOI.GAMMA.N","GAMMAINV":"LOI.GAMMA.INVERSE","GAMMA.INV":"LOI.GAMMA.INVERSE.N","GAMMALN":"LNGAMMA","GAMMALN.PRECISE":"LNGAMMA.PRECIS","GAUSS":"GAUSS","GEOMEAN":"MOYENNE.GEOMETRIQUE","HARMEAN":"MOYENNE.HARMONIQUE","HYPGEOM.DIST":"LOI.HYPERGEOMETRIQUE.N","HYPGEOMDIST":"LOI.HYPERGEOMETRIQUE","INTERCEPT":"ORDONNEE.ORIGINE","KURT":"KURTOSIS","LARGE":"GRANDE.VALEUR","LOGINV":"LOI.LOGNORMALE.INVERSE","LOGNORM.DIST":"LOI.LOGNORMALE.N","LOGNORM.INV":"LOI.LOGNORMALE.INVERSE.N","LOGNORMDIST":"LOI.LOGNORMALE","MAX":"MAX","MAXA":"MAXA","MAXIFS":"MAX.SI.ENS","MEDIAN":"MEDIANE","MIN":"MIN","MINA":"MINA","MINIFS":"MIN.SI.ENS","MODE":"MODE","MODE.MULT":"MODE.MULTIPLE","MODE.SNGL":"MODE.SIMPLE","NEGBINOM.DIST":"LOI.BINOMIALE.NEG.N","NEGBINOMDIST":"LOI.BINOMIALE.NEG","NORM.DIST":"LOI.NORMALE.N","NORM.INV":"LOI.NORMALE.INVERSE.N","NORM.S.DIST":"LOI.NORMALE.STANDARD.N","NORM.S.INV":"LOI.NORMALE.STANDARD.INVERSE.N","NORMDIST":"LOI.NORMALE","NORMINV":"LOI.NORMALE.INVERSE","NORMSDIST":"LOI.NORMALE.STANDARD","NORMSINV":"LOI.NORMALE.STANDARD.INVERSE","PEARSON":"PEARSON","PERCENTILE":"CENTILE","PERCENTILE.EXC":"CENTILE.EXCLURE","PERCENTILE.INC":"CENTILE.INCLURE","PERCENTRANK":"RANG.POURCENTAGE","PERCENTRANK.EXC":"RANG.POURCENTAGE.EXCLURE","PERCENTRANK.INC":"RANG.POURCENTAGE.INCLURE","PERMUT":"PERMUTATION","PERMUTATIONA":"PERMUTATIONA","PHI":"PHI","POISSON":"LOI.POISSON","POISSON.DIST":"LOI.POISSON.N","PROB":"PROBABILITE","QUARTILE":"QUARTILE","QUARTILE.INC":"QUARTILE.INCLURE","QUARTILE.EXC":"QUARTILE.EXCLURE","RANK.AVG":"MOYENNE.RANG","RANK.EQ":"EQUATION.RANG","RANK":"RANG","RSQ":"COEFFICIENT.DETERMINATION","SKEW":"COEFFICIENT.ASYMETRIE","SKEW.P":"COEFFICIENT.ASYMETRIE.P","SLOPE":"PENTE","SMALL":"PETITE.VALEUR","STANDARDIZE":"CENTREE.REDUITE","STDEV":"ECARTYPE","STDEV.P":"ECARTYPE.PEARSON","STDEV.S":"ECARTYPE.STANDARD","STDEVA":"STDEVA","STDEVP":"ECARTYPEP","STDEVPA":"STDEVPA","STEYX":"ERREUR.TYPE.XY","TDIST":"LOI.STUDENT","TINV":"LOI.STUDENT.INVERSE","T.DIST":"LOI.STUDENT.N","T.DIST.2T":"LOI.STUDENT.BILATERALE","T.DIST.RT":"LOI.STUDENT.DROITE","T.INV":"LOI.STUDENT.INVERSE.N","T.INV.2T":"LOI.STUDENT.INVERSE.BILATERALE","VAR":"VAR","VAR.P":"VAR.P.N","VAR.S":"VAR.S","VARA":"VARA","VARP":"VAR.P","VARPA":"VARPA","WEIBULL":"LOI.WEIBULL","WEIBULL.DIST":"LOI.WEIBULL.N","Z.TEST":"Z.TEST","ZTEST":"TEST.Z","ACCRINT":"INTERET.ACC","ACCRINTM":"INTERET.ACC.MAT","AMORDEGRC":"AMORDEGRC","AMORLINC":"AMORLINC","COUPDAYBS":"NB.JOURS.COUPON.PREC","COUPDAYS":"NB.JOURS.COUPONS","COUPDAYSNC":"NB.JOURS.COUPON.SUIV","COUPNCD":"DATE.COUPON.SUIV","COUPNUM":"NB.COUPONS","COUPPCD":"DATE.COUPON.PREC","CUMIPMT":"CUMUL.INTER","CUMPRINC":"CUMUL.PRINCPER","DB":"DB","DDB":"DDB","DISC":"TAUX.ESCOMPTE","DOLLARDE":"PRIX.DEC","DOLLARFR":"PRIX.FRAC","DURATION":"DUREE","EFFECT":"TAUX.EFFECTIF","FV":"VC","FVSCHEDULE":"VC.PAIEMENTS","INTRATE":"TAUX.INTERET","IPMT":"INTPER","IRR":"TRI","ISPMT":"ISPMT","MDURATION":"DUREE.MODIFIEE","MIRR":"TRIM","NOMINAL":"TAUX.NOMINAL","NPER":"NPM","NPV":"VAN","ODDFPRICE":"PRIX.PCOUPON.IRREG","ODDFYIELD":"REND.PCOUPON.IRREG","ODDLPRICE":"PRIX.DCOUPON.IRREG","ODDLYIELD":"REND.DCOUPON.IRREG","PDURATION":"PDUREE","PMT":"VPM","PPMT":"PRINCPER","PRICE":"PRIX.TITRE","PRICEDISC":"VALEUR.ENCAISSEMENT","PRICEMAT":"PRIX.TITRE.ECHEANCE","PV":"VA","RATE":"TAUX","RECEIVED":"VALEUR.NOMINALE","RRI":"TAUX.INT.EQUIV","SLN":"AMORLIN","SYD":"AMORANN","TBILLEQ":"TAUX.ESCOMPTE.R","TBILLPRICE":"PRIX.BON.TRESOR","TBILLYIELD":"RENDEMENT.BON.TRESOR","VDB":"VDB","XIRR":"TRI.PAIEMENTS","XNPV":"VAN.PAIEMENTS","YIELD":"RENDEMENT.TITRE","YIELDDISC":"RENDEMENT.SIMPLE","YIELDMAT":"RENDEMENT.TITRE.ECHEANCE","ABS":"ABS","ACOS":"ACOS","ACOSH":"ACOSH","ACOT":"ACOT","ACOTH":"ACOTH","AGGREGATE":"AGREGAT","ARABIC":"CHIFFRE.ARABE","ASIN":"ASIN","ASINH":"ASINH","ATAN":"ATAN","ATAN2":"ATAN2","ATANH":"ATANH","BASE":"BASE","CEILING":"PLAFOND","CEILING.MATH":"PLAFOND.MATH","CEILING.PRECISE":"PLAFOND.PRECIS","COMBIN":"COMBIN","COMBINA":"COMBINA","COS":"COS","COSH":"COSH","COT":"COT","COTH":"COTH","CSC":"CSC","CSCH":"CSCH","DECIMAL":"DECIMAL","DEGREES":"DEGRES","ECMA.CEILING":"ECMA.PLAFOND","EVEN":"PAIR","EXP":"EXP","FACT":"FACT","FACTDOUBLE":"FACTDOUBLE","FLOOR":"PLANCHER","FLOOR.PRECISE":"PLANCHER.PRECIS","FLOOR.MATH":"PLANCHER.MATH","GCD":"PGCD","INT":"ENT","ISO.CEILING":"ISO.PLAFOND","LCM":"PPCM","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"DETERMAT","MINVERSE":"INVERSEMAT","MMULT":"PRODUITMAT","MOD":"MOD","MROUND":"ARRONDI.AU.MULTIPLE","MULTINOMIAL":"MULTINOMIALE","ODD":"IMPAIR","PI":"PI","POWER":"PUISSANCE","PRODUCT":"PRODUIT","QUOTIENT":"QUOTIENT","RADIANS":"RADIANS","RAND":"ALEA","RANDBETWEEN":"ALEA.ENTRE.BORNES","ROMAN":"ROMAIN","ROUND":"ARRONDI","ROUNDDOWN":"ARRONDI.INF","ROUNDUP":"ARRONDI.SUP","SEC":"SEC","SECH":"SECH","SERIESSUM":"SOMME.SERIES","SIGN":"SIGNE","SIN":"SIN","SINH":"SINH","SQRT":"RACINE","SQRTPI":"RACINE.PI","SUBTOTAL":"SOUS.TOTAL","SUM":"SOMME","SUMIF":"SOMME.SI","SUMIFS":"SOMME.SI.ENS","SUMPRODUCT":"SOMMEPROD","SUMSQ":"SOMME.CARRES","SUMX2MY2":"SOMME.X2MY2","SUMX2PY2":"SOMME.X2PY2","SUMXMY2":"SOMME.XMY2","TAN":"TAN","TANH":"TANH","TRUNC":"TRONQUE","ADDRESS":"ADRESSE","CHOOSE":"CHOISIR","COLUMN":"COLONNE","COLUMNS":"COLONNES","FORMULATEXT":"FORMULETEXTE","HLOOKUP":"RECHERCHEH","INDEX":"INDEX","INDIRECT":"INDIRECT","LOOKUP":"RECHERCHE","MATCH":"EQUIV","OFFSET":"DECALER","ROW":"LIGNE","ROWS":"LIGNES","TRANSPOSE":"TRANSPOSE","VLOOKUP":"RECHERCHEV","ERROR.TYPE":"TYPE.ERREUR","ISBLANK":"ESTVIDE","ISERR":"ESTERR","ISERROR":"ESTERREUR","ISEVEN":"EST.PAIR","ISFORMULA":"ESTFORMULE","ISLOGICAL":"ESTLOGIQUE","ISNA":"ESTNA","ISNONTEXT":"ESTNONTEXTE","ISNUMBER":"ESTNUM","ISODD":"EST.IMPAIR","ISREF":"ESTREF","ISTEXT":"ESTTEXTE","N":"N","NA":"NA","SHEET":"FEUILLE","SHEETS":"FEUILLES","TYPE":"TYPE","AND":"ET","FALSE":"FAUX","IF":"SI","IFS":"SI.CONDITIONS","IFERROR":"SIERREUR","IFNA":"SI.NON.DISP","NOT":"PAS","OR":"OU","SWITCH":"SI.MULTIPLE","TRUE":"VRAI","XOR":"OUX","LocalFormulaOperands":{"StructureTables":{"h":"En-têtes","d":"Données","a":"Tous","tr":"Cette ligne","t":"Totaux"},"CONST_TRUE_FALSE":{"t":"VRAI","f":"FAUX"},"CONST_ERROR":{"nil":"#NUL!","div":"#DIV/0!","value":"#VALEUR!","ref":"#REF!","name":"#NOM\\?","num":"#NOMBRE!","na":"#N/A","getdata":"#CHARGEMENT_DONNEES","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file +{"DATE":"DATE","DATEDIF":"DATEDIF","DATEVALUE":"DATEVAL","DAY":"JOUR","DAYS":"JOURS","DAYS360":"JOURS360","EDATE":"MOIS.DECALER","EOMONTH":"FIN.MOIS","HOUR":"HEURE","ISOWEEKNUM":"NO.SEMAINE.ISO","MINUTE":"MINUTE","MONTH":"MOIS","NETWORKDAYS":"NB.JOURS.OUVRES","NETWORKDAYS.INTL":"NB.JOURS.OUVRES.INTL","NOW":"MAINTENANT","SECOND":"SECONDE","TIME":"TEMPS","TIMEVALUE":"TEMPSVAL","TODAY":"AUJOURDHUI","WEEKDAY":"JOURSEM","WEEKNUM":"NO.SEMAINE","WORKDAY":"SERIE.JOUR.OUVRE","WORKDAY.INTL":"SERIE.JOUR.OUVRE.INTL","YEAR":"ANNEE","YEARFRAC":"FRACTION.ANNEE","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BINDEC","BIN2HEX":"BINHEX","BIN2OCT":"BINOCT","BITAND":"BITET","BITLSHIFT":"BITDECALG","BITOR":"BITOU","BITRSHIFT":"BITDECALD","BITXOR":"BITOUEXCLUSIF","COMPLEX":"COMPLEXE","CONVERT":"CONVERT","DEC2BIN":"DECBIN","DEC2HEX":"DECHEX","DEC2OCT":"DECOCT","DELTA":"DELTA","ERF":"ERF","ERF.PRECISE":"ERFC.PRECIS","ERFC":"ERFC","ERFC.PRECISE":"ERFC.PRECIS","GESTEP":"SUP.SEUIL","HEX2BIN":"HEXBIN","HEX2DEC":"HEXDEC","HEX2OCT":"HEXOCT","IMABS":"COMPLEXE.MODULE","IMAGINARY":"COMPLEXE.IMAGINAIRE","IMARGUMENT":"COMPLEXE.ARGUMENT","IMCONJUGATE":"COMPLEXE.CONJUGUE","IMCOS":"COMPLEXE.COS","IMCOSH":"COMPLEXE.COSH","IMCOT":"COMPLEXE.COT","IMCSC":"COMPLEXE.CSC","IMCSCH":"COMPLEXE.CSCH","IMDIV":"COMPLEXE.DIV","IMEXP":"COMPLEXE.EXP","IMLN":"COMPLEXE.LN","IMLOG10":"COMPLEXE.LOG10","IMLOG2":"COMPLEXE.LOG2","IMPOWER":"COMPLEXE.PUISSANCE","IMPRODUCT":"COMPLEXE.PRODUIT","IMREAL":"COMPLEXE.REEL","IMSEC":"COMPLEXE.SEC","IMSECH":"COMPLEXE.SECH","IMSIN":"COMPLEXE.SIN","IMSINH":"COMPLEXE.SINH","IMSQRT":"COMPLEXE.RACINE","IMSUB":"COMPLEXE.DIFFERENCE","IMSUM":"COMPLEXE.SOMME","IMTAN":"COMPLEXE.TAN","OCT2BIN":"OCTBIN","OCT2DEC":"OCTDEC","OCT2HEX":"OCTHEX","DAVERAGE":"BDMOYENNE","DCOUNT":"BCOMPTE","DCOUNTA":"BDNBVAL","DGET":"BDLIRE","DMAX":"BDMAX","DMIN":"BDMIN","DPRODUCT":"BDPRODUIT","DSTDEV":"BDECARTYPE","DSTDEVP":"BDECARTYPEP","DSUM":"BDSOMME","DVAR":"BDVAR","DVARP":"BDVARP","CHAR":"CAR","CLEAN":"EPURAGE","CODE":"CODE","CONCATENATE":"CONCATENER","CONCAT":"CONCAT","DOLLAR":"DEVISE","EXACT":"EXACT","FIND":"TROUVE","FINDB":"TROUVERB","FIXED":"CTXT","LEFT":"GAUCHE","LEFTB":"GAUCHEB","LEN":"NBCAR","LENB":"LENB","LOWER":"MINUSCULE","MID":"STXT","MIDB":"MIDB","NUMBERVALUE":"VALEURNOMBRE","PROPER":"NOMPROPRE","REPLACE":"REMPLACER","REPLACEB":"REMPLACERB","REPT":"REPT","RIGHT":"DROITE","RIGHTB":"DROITEB","SEARCH":"CHERCHE","SEARCHB":"CHERCHERB","SUBSTITUTE":"SUBSTITUE","T":"T","T.TEST":"T.TEST","TEXT":"TEXTE","TEXTJOIN":"JOINDRE.TEXTE","TRIM":"SUPPRESPACE","TRIMMEAN":"MOYENNE.REDUITE","TTEST":"TEST.STUDENT","UNICHAR":"UNICAR","UNICODE":"UNICODE","UPPER":"MAJUSCULE","VALUE":"VALEUR","AVEDEV":"ECART.MOYEN","AVERAGE":"MOYENNE","AVERAGEA":"AVERAGEA","AVERAGEIF":"MOYENNE.SI","AVERAGEIFS":"MOYENNE.SI.ENS","BETADIST":"LOI.BETA","BETA.DIST":"LOI.BETA.N","BETA.INV":"BETA.INVERSE","BINOMDIST":"LOI.BINOMIALE","BINOM.DIST":"LOI.BINOMIALE.N","BINOM.DIST.RANGE":"LOI.BINOMIALE.SERIE","BINOM.INV":"LOI.BINOMIALE.INVERSE","CHIDIST":"LOI.KHIDEUX","CHIINV":"KHIDEUX.INVERSE","CHITEST":"TEST.KHIDEUX","CHISQ.DIST":"LOI.KHIDEUX.N","CHISQ.DIST.RT":"LOI.KHIDEUX.DROITE","CHISQ.INV":"LOI.KHIDEUX.INVERSE","CHISQ.INV.RT":"LOI.KHIDEUX.INVERSE.DROITE","CHISQ.TEST":"CHISQ.TEST","CONFIDENCE":"INTERVALLE.CONFIANCE","CONFIDENCE.NORM":"INTERVALLE.CONFIANCE.NORMAL","CONFIDENCE.T":"INTERVALLE.CONFIANCE.STUDENT","CORREL":"COEFFICIENT.CORRELATION","COUNT":"NB","COUNTA":"NBVAL","COUNTBLANK":"NB.VIDE","COUNTIF":"NB.SI","COUNTIFS":"NB.SI.ENS","COVAR":"COVARIANCE","COVARIANCE.P":"COVARIANCE.PEARSON","COVARIANCE.S":"COVARIANCE.STANDARD","CRITBINOM":"CRITERE.LOI.BINOMIALE","DEVSQ":"SOMME.CARRES.ECARTS","EXPON.DIST":"LOI.EXPONENTIELLE.N","EXPONDIST":"LOI.EXPONENTIELLE","FDIST":"LOI.F","FINV":"INVERSE.LOI.F","FTEST":"TEST.F","F.DIST":"LOI.F.N","F.DIST.RT":"LOI.F.DROITE","F.INV":"INVERSE.LOI.F.N","F.INV.RT":"INVERSE.LOI.F.DROITE","F.TEST":"F.TEST","FISHER":"FISHER","FISHERINV":"FISHER.INVERSE","FORECAST":"PREVISION","FORECAST.ETS":"PREVISION.ETS","FORECAST.ETS.CONFINT":"PREVISION.ETS.CONFINT","FORECAST.ETS.SEASONALITY":"PREVISION.ETS.CARACTERESAISONNIER","FORECAST.ETS.STAT":"PREVISION.ETS.STAT","FORECAST.LINEAR":"PREVISION.LINEAIRE","FREQUENCY":"FREQUENCE","GAMMA":"GAMMA","GAMMADIST":"LOI.GAMMA","GAMMA.DIST":"LOI.GAMMA.N","GAMMAINV":"LOI.GAMMA.INVERSE","GAMMA.INV":"LOI.GAMMA.INVERSE.N","GAMMALN":"LNGAMMA","GAMMALN.PRECISE":"LNGAMMA.PRECIS","GAUSS":"GAUSS","GEOMEAN":"MOYENNE.GEOMETRIQUE","HARMEAN":"MOYENNE.HARMONIQUE","HYPGEOM.DIST":"LOI.HYPERGEOMETRIQUE.N","HYPGEOMDIST":"LOI.HYPERGEOMETRIQUE","INTERCEPT":"ORDONNEE.ORIGINE","KURT":"KURTOSIS","LARGE":"GRANDE.VALEUR","LOGINV":"LOI.LOGNORMALE.INVERSE","LOGNORM.DIST":"LOI.LOGNORMALE.N","LOGNORM.INV":"LOI.LOGNORMALE.INVERSE.N","LOGNORMDIST":"LOI.LOGNORMALE","MAX":"MAX","MAXA":"MAXA","MAXIFS":"MAX.SI.ENS","MEDIAN":"MEDIANE","MIN":"MIN","MINA":"MINA","MINIFS":"MIN.SI.ENS","MODE":"MODE","MODE.MULT":"MODE.MULTIPLE","MODE.SNGL":"MODE.SIMPLE","NEGBINOM.DIST":"LOI.BINOMIALE.NEG.N","NEGBINOMDIST":"LOI.BINOMIALE.NEG","NORM.DIST":"LOI.NORMALE.N","NORM.INV":"LOI.NORMALE.INVERSE.N","NORM.S.DIST":"LOI.NORMALE.STANDARD.N","NORM.S.INV":"LOI.NORMALE.STANDARD.INVERSE.N","NORMDIST":"LOI.NORMALE","NORMINV":"LOI.NORMALE.INVERSE","NORMSDIST":"LOI.NORMALE.STANDARD","NORMSINV":"LOI.NORMALE.STANDARD.INVERSE","PEARSON":"PEARSON","PERCENTILE":"CENTILE","PERCENTILE.EXC":"CENTILE.EXCLURE","PERCENTILE.INC":"CENTILE.INCLURE","PERCENTRANK":"RANG.POURCENTAGE","PERCENTRANK.EXC":"RANG.POURCENTAGE.EXCLURE","PERCENTRANK.INC":"RANG.POURCENTAGE.INCLURE","PERMUT":"PERMUTATION","PERMUTATIONA":"PERMUTATIONA","PHI":"PHI","POISSON":"LOI.POISSON","POISSON.DIST":"LOI.POISSON.N","PROB":"PROBABILITE","QUARTILE":"QUARTILE","QUARTILE.INC":"QUARTILE.INCLURE","QUARTILE.EXC":"QUARTILE.EXCLURE","RANK.AVG":"MOYENNE.RANG","RANK.EQ":"EQUATION.RANG","RANK":"RANG","RSQ":"COEFFICIENT.DETERMINATION","SKEW":"COEFFICIENT.ASYMETRIE","SKEW.P":"COEFFICIENT.ASYMETRIE.P","SLOPE":"PENTE","SMALL":"PETITE.VALEUR","STANDARDIZE":"CENTREE.REDUITE","STDEV":"ECARTYPE","STDEV.P":"ECARTYPE.PEARSON","STDEV.S":"ECARTYPE.STANDARD","STDEVA":"STDEVA","STDEVP":"ECARTYPEP","STDEVPA":"STDEVPA","STEYX":"ERREUR.TYPE.XY","TDIST":"LOI.STUDENT","TINV":"LOI.STUDENT.INVERSE","T.DIST":"LOI.STUDENT.N","T.DIST.2T":"LOI.STUDENT.BILATERALE","T.DIST.RT":"LOI.STUDENT.DROITE","T.INV":"LOI.STUDENT.INVERSE.N","T.INV.2T":"LOI.STUDENT.INVERSE.BILATERALE","VAR":"VAR","VAR.P":"VAR.P.N","VAR.S":"VAR.S","VARA":"VARA","VARP":"VAR.P","VARPA":"VARPA","WEIBULL":"LOI.WEIBULL","WEIBULL.DIST":"LOI.WEIBULL.N","Z.TEST":"Z.TEST","ZTEST":"TEST.Z","ACCRINT":"INTERET.ACC","ACCRINTM":"INTERET.ACC.MAT","AMORDEGRC":"AMORDEGRC","AMORLINC":"AMORLINC","COUPDAYBS":"NB.JOURS.COUPON.PREC","COUPDAYS":"NB.JOURS.COUPONS","COUPDAYSNC":"NB.JOURS.COUPON.SUIV","COUPNCD":"DATE.COUPON.SUIV","COUPNUM":"NB.COUPONS","COUPPCD":"DATE.COUPON.PREC","CUMIPMT":"CUMUL.INTER","CUMPRINC":"CUMUL.PRINCPER","DB":"DB","DDB":"DDB","DISC":"TAUX.ESCOMPTE","DOLLARDE":"PRIX.DEC","DOLLARFR":"PRIX.FRAC","DURATION":"DUREE","EFFECT":"TAUX.EFFECTIF","FV":"VC","FVSCHEDULE":"VC.PAIEMENTS","INTRATE":"TAUX.INTERET","IPMT":"INTPER","IRR":"TRI","ISPMT":"ISPMT","MDURATION":"DUREE.MODIFIEE","MIRR":"TRIM","NOMINAL":"TAUX.NOMINAL","NPER":"NPM","NPV":"VAN","ODDFPRICE":"PRIX.PCOUPON.IRREG","ODDFYIELD":"REND.PCOUPON.IRREG","ODDLPRICE":"PRIX.DCOUPON.IRREG","ODDLYIELD":"REND.DCOUPON.IRREG","PDURATION":"PDUREE","PMT":"VPM","PPMT":"PRINCPER","PRICE":"PRIX.TITRE","PRICEDISC":"VALEUR.ENCAISSEMENT","PRICEMAT":"PRIX.TITRE.ECHEANCE","PV":"VA","RATE":"TAUX","RECEIVED":"VALEUR.NOMINALE","RRI":"TAUX.INT.EQUIV","SLN":"AMORLIN","SYD":"AMORANN","TBILLEQ":"TAUX.ESCOMPTE.R","TBILLPRICE":"PRIX.BON.TRESOR","TBILLYIELD":"RENDEMENT.BON.TRESOR","VDB":"VDB","XIRR":"TRI.PAIEMENTS","XNPV":"VAN.PAIEMENTS","YIELD":"RENDEMENT.TITRE","YIELDDISC":"RENDEMENT.SIMPLE","YIELDMAT":"RENDEMENT.TITRE.ECHEANCE","ABS":"ABS","ACOS":"ACOS","ACOSH":"ACOSH","ACOT":"ACOT","ACOTH":"ACOTH","AGGREGATE":"AGREGAT","ARABIC":"CHIFFRE.ARABE","ASIN":"ASIN","ASINH":"ASINH","ATAN":"ATAN","ATAN2":"ATAN2","ATANH":"ATANH","BASE":"BASE","CEILING":"PLAFOND","CEILING.MATH":"PLAFOND.MATH","CEILING.PRECISE":"PLAFOND.PRECIS","COMBIN":"COMBIN","COMBINA":"COMBINA","COS":"COS","COSH":"COSH","COT":"COT","COTH":"COTH","CSC":"CSC","CSCH":"CSCH","DECIMAL":"DECIMAL","DEGREES":"DEGRES","ECMA.CEILING":"ECMA.PLAFOND","EVEN":"PAIR","EXP":"EXP","FACT":"FACT","FACTDOUBLE":"FACTDOUBLE","FLOOR":"PLANCHER","FLOOR.PRECISE":"PLANCHER.PRECIS","FLOOR.MATH":"PLANCHER.MATH","GCD":"PGCD","INT":"ENT","ISO.CEILING":"ISO.PLAFOND","LCM":"PPCM","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"DETERMAT","MINVERSE":"INVERSEMAT","MMULT":"PRODUITMAT","MOD":"MOD","MROUND":"ARRONDI.AU.MULTIPLE","MULTINOMIAL":"MULTINOMIALE","ODD":"IMPAIR","PI":"PI","POWER":"PUISSANCE","PRODUCT":"PRODUIT","QUOTIENT":"QUOTIENT","RADIANS":"RADIANS","RAND":"ALEA","RANDBETWEEN":"ALEA.ENTRE.BORNES","ROMAN":"ROMAIN","ROUND":"ARRONDI","ROUNDDOWN":"ARRONDI.INF","ROUNDUP":"ARRONDI.SUP","SEC":"SEC","SECH":"SECH","SERIESSUM":"SOMME.SERIES","SIGN":"SIGNE","SIN":"SIN","SINH":"SINH","SQRT":"RACINE","SQRTPI":"RACINE.PI","SUBTOTAL":"SOUS.TOTAL","SUM":"SOMME","SUMIF":"SOMME.SI","SUMIFS":"SOMME.SI.ENS","SUMPRODUCT":"SOMMEPROD","SUMSQ":"SOMME.CARRES","SUMX2MY2":"SOMME.X2MY2","SUMX2PY2":"SOMME.X2PY2","SUMXMY2":"SOMME.XMY2","TAN":"TAN","TANH":"TANH","TRUNC":"TRONQUE","ADDRESS":"ADRESSE","CHOOSE":"CHOISIR","COLUMN":"COLONNE","COLUMNS":"COLONNES","FORMULATEXT":"FORMULETEXTE","HLOOKUP":"RECHERCHEH","INDEX":"INDEX","INDIRECT":"INDIRECT","LOOKUP":"RECHERCHE","MATCH":"EQUIV","OFFSET":"DECALER","ROW":"LIGNE","ROWS":"LIGNES","TRANSPOSE":"TRANSPOSE","VLOOKUP":"RECHERCHEV","ERROR.TYPE":"TYPE.ERREUR","ISBLANK":"ESTVIDE","ISERR":"ESTERR","ISERROR":"ESTERREUR","ISEVEN":"EST.PAIR","ISFORMULA":"ESTFORMULE","ISLOGICAL":"ESTLOGIQUE","ISNA":"ESTNA","ISNONTEXT":"ESTNONTEXTE","ISNUMBER":"ESTNUM","ISODD":"EST.IMPAIR","ISREF":"ESTREF","ISTEXT":"ESTTEXTE","N":"N","NA":"NA","SHEET":"FEUILLE","SHEETS":"FEUILLES","TYPE":"TYPE","AND":"ET","FALSE":"FAUX","IF":"SI","IFS":"SI.CONDITIONS","IFERROR":"SIERREUR","IFNA":"SI.NON.DISP","NOT":"PAS","OR":"OU","SWITCH":"SI.MULTIPLE","TRUE":"VRAI","XOR":"OUX","LocalFormulaOperands":{"StructureTables":{"h":"En-têtes","d":"Données","a":"Tous","tr":"Cette ligne","t":"Totaux"},"CONST_TRUE_FALSE":{"t":"VRAI","f":"FAUX"},"CONST_ERROR":{"nil":"#NUL!","div":"#DIV/0!","value":"#VALEUR!","ref":"#REF!","name":"#NOM\\?","num":"#NOMBRE!","na":"#N/A","getdata":"#CHARGEMENT_DONNEES","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file diff --git a/apps/spreadsheeteditor/mobile/resources/l10n/functions/it.json b/apps/spreadsheeteditor/mobile/resources/l10n/functions/it.json index 20d1216db..f74574abb 100644 --- a/apps/spreadsheeteditor/mobile/resources/l10n/functions/it.json +++ b/apps/spreadsheeteditor/mobile/resources/l10n/functions/it.json @@ -1 +1 @@ -{"DATE":"DATA","DATEDIF":"DATEDIF","DATEVALUE":"DATE.VALORE","DAY":"GIORNO","DAYS":"GIORNI","DAYS360":"GIORNO360","EDATE":"DATA.MESE","EOMONTH":"FINE.MESE","HOUR":"ORA","ISOWEEKNUM":"NUM.SETTIMANA.ISO","MINUTE":"MINUTO","MONTH":"MESI","NETWORKDAYS":"GIORNI.LAVORATIVI.TOT","NETWORKDAYS.INTL":"GIORNI.LAVORATIVI.TOT.INTL","NOW":"ORA","SECOND":"SECONDO","TIME":"ORARIO","TIMEVALUE":"ORARIO.VALORE","TODAY":"OGGI","WEEKDAY":"GIORNO.SETTIMANA","WEEKNUM":"NUM.SETTIMANA","WORKDAY":"GIORNO.LAVORATIVO","WORKDAY.INTL":"GIORNO.LAVORATIVO.INTL","YEAR":"ANNO","YEARFRAC":"FRAZIONE.ANNO","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BINARIO.DECIMALE","BIN2HEX":"BINARIO.HEX","BIN2OCT":"BINARIO.OCT","BITAND":"BITAND","BITLSHIFT":"BIT.SPOSTA.SX","BITOR":"BITOR","BITRSHIFT":"BIT.SPOSTA.DX","BITXOR":"BITXOR","COMPLEX":"COMPLESSO","DEC2BIN":"DECIMALE.BINARIO","DEC2HEX":"DECIMALE.HEX","DEC2OCT":"DECIMALE.OCT","DELTA":"DELTA","ERF":"FUNZ.ERRORE","ERF.PRECISE":"FUNZ.ERRORE.PRECISA","ERFC":"FUNZ.ERRORE.COMP","ERFC.PRECISE":"FUNZ.ERRORE.COMP.PRECISA","GESTEP":"SOGLIA","HEX2BIN":"HEX.BINARIO","HEX2DEC":"HEX.DECIMALE","HEX2OCT":"HEX.OCT","IMABS":"COMP.MODULO","IMAGINARY":"COMP.IMMAGINARIO","IMARGUMENT":"COMP.ARGOMENTO","IMCONJUGATE":"COMP.CONIUGATO","IMCOS":"COMP.COS","IMCOSH":"COMP.COSH","IMCOT":"COMP.COT","IMCSC":"COMP.CSC","IMCSCH":"COMP.CSCH","IMDIV":"COMP.DIV","IMEXP":"COMP.EXP","IMLN":"COMP.LN","IMLOG10":"COMP.LOG10","IMLOG2":"COMP.LOG2","IMPOWER":"COMP.POTENZA","IMPRODUCT":"COMP.PRODOTTO","IMREAL":"COMP.PARTE.REALE","IMSEC":"COMP.SEC","IMSECH":"COMP.SECH","IMSIN":"COMP.SEN","IMSINH":"COMP.SENH","IMSQRT":"COMP.RADQ","IMSUB":"COMP.DIFF","IMSUM":"COMP.SOMMA","IMTAN":"COMP.TAN","OCT2BIN":"OCT.BINARIO","OCT2DEC":"OCT.DECIMALE","OCT2HEX":"OCT.HEX","DAVERAGE":"DB.MEDIA","DCOUNT":"DB.CONTA.NUMERI","DCOUNTA":"DB.CONTA.VALORI","DGET":"DB.VALORI","DMAX":"DB.MAX","DMIN":"DB.MIN","DPRODUCT":"DB.PRODOTTO","DSTDEV":"DB.DEV.ST","DSTDEVP":"DB.DEV.ST.POP","DSUM":"DB.SOMMA","DVAR":"DB.VAR","DVARP":"DB.VAR.POP","CHAR":"CODICE.CARATT","CLEAN":"LIBERA","CODE":"CODICE","CONCATENATE":"CONCATENA","CONCAT":"CONCATENA","DOLLAR":"VALUTA","EXACT":"IDENTICO","FIND":"TROVA","FINDB":"FINDB","FIXED":"FISSO","LEFT":"SINISTRA","LEFTB":"LEFTB","LEN":"LUNGHEZZA","LENB":"LENB","LOWER":"MINUSC","MID":"STRINGA.ESTRAI","MIDB":"MIDB","NUMBERVALUE":"NUMERO.VALORE","PROPER":"MAIUSC.INIZ","REPLACE":"RIMPIAZZA","REPLACEB":"REPLACEB","REPT":"RIPETI","RIGHT":"DESTRA","RIGHTB":"RIGHTB","SEARCH":"RICERCA","SEARCHB":"SEARCHB","SUBSTITUTE":"SOSTITUISCI","T":"Т","T.TEST":"TESTT","TEXT":"TESTO","TEXTJOIN":"TEXTJOIN","TRIM":"ANNULLA.SPAZI","TRIMMEAN":"MEDIA.TRONCATA","TTEST":"TEST.T","UNICHAR":"CARATT.UNI","UNICODE":"UNICODE","UPPER":"MAIUSCOL","VALUE":"VALORE","AVEDEV":"MEDIA.DEV","AVERAGE":"MEDIA","AVERAGEA":"MEDIA.VALORI","AVERAGEIF":"MEDIA.SE","AVERAGEIFS":"MEDIA.PIÙ.SE","BETADIST":"DISTRIB.BETA","BETA.DIST":"DISTRIB.BETA.N","BETA.INV":"INV.BETA.N","BINOMDIST":"DISTRIB.BINOM","BINOM.DIST":"DISTRIB.BINOM.N","BINOM.DIST.RANGE":"INTERVALLO.DISTRIB.BINOM.N.","BINOM.INV":"INV.BINOM","CHIDIST":"DISTRIB.CHI","CHIINV":"INV.CHI","CHITEST":"TEST.CHI","CHISQ.DIST":"DISTRIB.CHI.QUAD","CHISQ.DIST.RT":"DISTRIB.CHI.QUAD.DS","CHISQ.INV":"INV.CHI.QUAD","CHISQ.INV.RT":"INV.CHI.QUAD.DS","CHISQ.TEST":"TEST.CHI.QUAD","CONFIDENCE":"CONFIDENZA","CONFIDENCE.NORM":"CONFIDENZA.NORM","CONFIDENCE.T":"CONFIDENZA.T","CORREL":"CORRELAZIONE","COUNT":"CONTA.NUMERI","COUNTA":"COUNTA","COUNTBLANK":"CONTA.VUOTE","COUNTIF":"CONTA.SE","COUNTIFS":"CONTA.PIÙ.SE","COVAR":"COVARIANZA","COVARIANCE.P":"COVARIANZA.P","COVARIANCE.S":"COVARIANZA.C","CRITBINOM":"CRIT.BINOM","DEVSQ":"DEV.Q","EXPON.DIST":"DISTRIB.EXP.N","EXPONDIST":"EXPONDIST","FDIST":"DISTRIB.F","FINV":"INV.F","F.DIST":"DISTRIBF","F.DIST.RT":"DISTRIB.F.DS","F.INV":"INVF","F.INV.RT":"INV.F.DS","FISHER":"FISHER","FISHERINV":"INV.FISHER","FORECAST":"PREVISIONE","FORECAST.LINEAR":"PREVISIONE.LINEARE","FREQUENCY":"FREQUENZA","GAMMA":"GAMMA","GAMMADIST":"DISTRIB.GAMMA","GAMMA.DIST":"DISTRIB.GAMMA.N","GAMMAINV":"INV.GAMMA","GAMMA.INV":"INV.GAMMA.N","GAMMALN":"LN.GAMMA","GAMMALN.PRECISE":"LN.GAMMA.PRECISA","GAUSS":"GAUSS","GEOMEAN":"MEDIA.GEOMETRICA","HARMEAN":"MEDIA.ARMONICA","HYPGEOM.DIST":"DISTRIB.IPERGEOM.N","HYPGEOMDIST":"DISTRIB.IPERGEOM","INTERCEPT":"INTERCETTA","KURT":"CURTOSI","LARGE":"GRANDE","LOGINV":"INV.LOGNORM","LOGNORM.DIST":"DISTRIB.LOGNORM.N","LOGNORM.INV":"INV.LOGNORM.N","LOGNORMDIST":"DISTRIB.LOGNORM","MAX":"MAX","MAXA":"MAX.VALORI","MAXIFS":"MAXIFS","MEDIAN":"MEDIANA","MIN":"MIN","MINA":"MIN.VALORI","MINIFS":"MINIFS","MODE":"MODA","MODE.MULT":"MODA.MULT","MODE.SNGL":"MODA.SNGL","NEGBINOM.DIST":"DISTRIB.BINOM.NEG.N","NEGBINOMDIST":"DISTRIB.BINOM.NEG","NORM.DIST":"DISTRIB.NORM.N","NORM.INV":"INV.NORM.N","NORM.S.DIST":"DISTRIB.NORM.ST.N","NORM.S.INV":"INV.NORM.S","NORMDIST":"DISTRIB.NORM.N","NORMINV":"INV.NORM.N","NORMSDIST":"DISTRIB.NORM.ST","NORMSINV":"INV.NORM.ST","PEARSON":"PEARSON","PERCENTILE":"PERCENTILE","PERCENTILE.EXC":"ESC.PERCENTILE","PERCENTILE.INC":"INC.PERCENTILE","PERCENTRANK":"PERCENT.RANGO","PERCENTRANK.EXC":"ESC.PERCENT.RANGO","PERCENTRANK.INC":"INC.PERCENT.RANGO","PERMUT":"PERMUTAZIONE","PERMUTATIONA":"PERMUTAZIONE.VALORI","PHI":"PHI","POISSON":"POISSON","POISSON.DIST":"DISTRIB.POISSON","PROB":"PROBABILITÀ","QUARTILE":"QUARTILE","QUARTILE.INC":"INC.QUARTILE","QUARTILE.EXC":"ESC.QUARTILE","RANK.AVG":"RANGO.MEDIA","RANK.EQ":"RANGO.UG","RANK":"RANGO","RSQ":"RQ","SKEW":"ASIMMETRIA","SKEW.P":"ASSIMETRIA.P","SLOPE":"PENDENZA","SMALL":"PICCOLO","STANDARDIZE":"NORMALIZZA","STDEV":"DEV.ST","STDEV.P":"DEV.ST.P","STDEV.S":"DEV.ST.C","STDEVA":"DEV.ST.VALORI","STDEVP":"DEV.ST.P","STDEVPA":"DEV.ST.POP.VALORI","STEYX":"ERR.STD.YX","TDIST":"DISTRIB.T","TINV":"INV.T","T.DIST":"DISTRIB.T.N","T.DIST.2T":"DISTRIB.T.2T","T.DIST.RT":"DISTRIB.T.DS","T.INV":"INVT","T.INV.2T":"INV.T.2T","VAR":"VAR","VAR.P":"VAR.P","VAR.S":"VAR.C","VARA":"VAR.VALORI","VARP":"VAR.POP","VARPA":"VAR.POP.VALORI","WEIBULL":"WEIBULL","WEIBULL.DIST":"DISTRIB.WEIBULL","Z.TEST":"TESTZ","ZTEST":"TEST.Z","ACCRINT":"INT.MATUTRATO.PER","ACCRINTM":"INT.MATUTRATO.SCAD","AMORDEGRC":"AMMORT.DEGR","AMORLINC":"AMMORT.PER","COUPDAYBS":"GIORNI.CED.INIZ.LIQ","COUPDAYS":"GIORNI.CED","COUPDAYSNC":"GIORNI.CED.NUOVA","COUPNCD":"DATA.CED.SUCC","COUPNUM":"NUM.CED","COUPPCD":"DATA.CED.PREC","CUMIPMT":"INT.CUMUL","CUMPRINC":"CAP.CUM","DB":"AMMORT.FISSO","DDB":"AMMORT","DISC":"TASSO.SCONTO","DOLLARDE":"VALUTA.DEC","DOLLARFR":"VALUTA.FRAZ","DURATION":"DURATA","EFFECT":"EFFETTIVO","FV":"VAL.FUT","FVSCHEDULE":"VAL.FUT.CAPITALE","INTRATE":"TASSO.INT","IPMT":"INTERESSI","IRR":"TIR.COST","ISPMT":"INTERESSE,RATA","MDURATION":"DURATA.M","MIRR":"TIR.VAR","NOMINAL":"NOMINALE","NPER":"NUM.RATE","NPV":"VAN","ODDFPRICE":"PREZZO.PRIMO.IRR","ODDFYIELD":"REND.PRIMO.IRR","ODDLPRICE":"PREZZO.ULTIMO.IRR","ODDLYIELD":"REND.ULTIMO.IRR","PMT":"RATA","PPMT":"P.RATA","PRICE":"PREZZO","PRICEDISC":"PREZZO.SCONT","PRICEMAT":"PREZZO.SCAD","PV":"VA","RATE":"TASSO","RECEIVED":"RICEV.SCAD","RRI":"RIT.INVEST.EFFETT","SLN":"AMMORT.COST","SYD":"AMMORT.ANNUO","TBILLEQ":"BOT.EQUIV","TBILLPRICE":"BOT.PREZZO","TBILLYIELD":"BOT.REND","VDB":"AMMORT.VAR","XIRR":"TIR.X","XNPV":"VAN.X","YIELD":"REND","YIELDDISC":"REND.TITOLI.SOCNTI","YIELDMAT":"REND.SCAD","ABS":"ASS","ACOS":"ARCCOS","ACOSH":"ARCCOSH","ACOT":"ARCCOT","ACOTH":"ARCCOTH","AGGREGATE":"AGGREGA","ARABIC":"ARABO","ASIN":"ARCSEN","ASINH":"ARCSENH","ATAN":"ARCTAN","ATAN2":"ARCTAN.2","ATANH":"ARCTANH","BASE":"BASE","CEILING":"ARROTONDA.ECCESSO","CEILING.MATH":"ARROTONDA.ECCESSO.MAT","CEILING.PRECISE":"ARROTONDA.ECCESSO.PRECISA","COMBIN":"COMBINAZIONE","COMBINA":"COMBINAZIONE.VALORI","COS":"COS","COSH":"COSH","COT":"COT","COTH":"COTH","CSC":"CSC","CSCH":"CSCH","DECIMAL":"DECIMALE","DEGREES":"GRADI","ECMA.CEILING":"ECMA.CEILING","EVEN":"PARI","EXP":"EXP","FACT":"FATTORIALE","FACTDOUBLE":"FATT.DOPPIO","FLOOR":"ARROTONDA.DIFETTO","FLOOR.PRECISE":"ARROTONDA.DIFETTO.PRECISA","FLOOR.MATH":"ARROTONDA.DIFETTO.MAT","GCD":"MCD","INT":"INT","ISO.CEILING":"ISO.ARROTONDA.ECCESSO","LCM":"MCM","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"MATR.DETERM","MINVERSE":"MATR.INVERSA","MMULT":"MATR.PRODOTTO","MOD":"RESTO","MROUND":"ARROTONDA.MULTIPLO","MULTINOMIAL":"MULTINOMIALE","ODD":"DISPARI","PI":"PI.GRECO","POWER":"POTENZA","PRODUCT":"PRODOTTO","QUOTIENT":"QUOZIENTE","RADIANS":"RADIANTI","RAND":"CASUALE","RANDBETWEEN":"CASUALE.TRA","ROMAN":"ROMANO","ROUND":"ARROTONDA","ROUNDDOWN":"ARROTONDA.PER.DIF","ROUNDUP":"ARROTONDA.PER.ECC","SEC":"SEC","SECH":"SECH","SERIESSUM":"SOMMA.SERIE","SIGN":"SEGNO","SIN":"SEN","SINH":"SENH","SQRT":"RADQ","SQRTPI":"RADQ.PI.GRECO","SUBTOTAL":"SUBTOTAL","SUM":"SOMMA","SUMIF":"SOMMA.SE","SUMIFS":"SOMMA.PIÙ.SE","SUMPRODUCT":"MATR.SOMMA.PRODOTTO","SUMSQ":"SOMMA.Q","SUMX2MY2":"SOMMA.DIFF.Q","SUMX2PY2":"SOMMA.SOMMA.Q","SUMXMY2":"SOMMA.Q.DIFF","TAN":"TAN","TANH":"TANH","TRUNC":"TRONCA","ADDRESS":"INDIRIZZO","CHOOSE":"SCEGLI","COLUMN":"RIF.COLONNA","COLUMNS":"COLONNE","HLOOKUP":"CERCA.ORIZZ","INDEX":"INDICE","INDIRECT":"INDIRETTO","LOOKUP":"CERCA","MATCH":"CONFRONTA","OFFSET":"SCARTO","ROW":"RIF.RIGA","ROWS":"RIGHE","TRANSPOSE":"MATR.TRASPOSTA","VLOOKUP":"CERCA.VERT","ERROR.TYPE":"ERRORE.TIPO","ISBLANK":"VAL.VUOTO","ISERR":"VAL.ERR","ISERROR":"VAL.ERRORE","ISEVEN":"VAL.PARI","ISFORMULA":"VAL.FORMULA","ISLOGICAL":"VAL.LOGICO","ISNA":"ISNA","ISNONTEXT":"VAL.NON.TESTO","ISNUMBER":"VAL.NUMERO","ISODD":"VAL.DISPARI","ISREF":"VAL.RIF","ISTEXT":"VAL.TESTO","N":"N","NA":"NA","SHEET":"FOGLIO","SHEETS":"FOGLI","TYPE":"TYPE","AND":"E","FALSE":"FALSO","IF":"SE","IFERROR":"SE.ERRORE","IFNA":"SE.NON.DISP.","NOT":"NON","OR":"O","SWITCH":"SWITCH","TRUE":"VERO","XOR":"XOR","LocalFormulaOperands":{"StructureTables":{"h":"Headers","d":"Data","a":"All","tr":"This row","t":"Totals"},"CONST_TRUE_FALSE":{"t":"TRUE","f":"FALSE"},"CONST_ERROR":{"nil":"#NULL!","div":"#DIV/0!","value":"#VALUE!","ref":"#REF!","name":"#NAME\\?","num":"#NUM!","na":"#N/A","getdata":"#GETTING_DATA","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file +{"DATE":"DATA","DATEDIF":"DATEDIF","DATEVALUE":"DATE.VALORE","DAY":"GIORNO","DAYS":"GIORNI","DAYS360":"GIORNO360","EDATE":"DATA.MESE","EOMONTH":"FINE.MESE","HOUR":"ORA","ISOWEEKNUM":"NUM.SETTIMANA.ISO","MINUTE":"MINUTO","MONTH":"MESI","NETWORKDAYS":"GIORNI.LAVORATIVI.TOT","NETWORKDAYS.INTL":"GIORNI.LAVORATIVI.TOT.INTL","NOW":"ORA","SECOND":"SECONDO","TIME":"ORARIO","TIMEVALUE":"ORARIO.VALORE","TODAY":"OGGI","WEEKDAY":"GIORNO.SETTIMANA","WEEKNUM":"NUM.SETTIMANA","WORKDAY":"GIORNO.LAVORATIVO","WORKDAY.INTL":"GIORNO.LAVORATIVO.INTL","YEAR":"ANNO","YEARFRAC":"FRAZIONE.ANNO","BESSELI":"BESSELI","BESSELJ":"BESSELJ","BESSELK":"BESSELK","BESSELY":"BESSELY","BIN2DEC":"BINARIO.DECIMALE","BIN2HEX":"BINARIO.HEX","BIN2OCT":"BINARIO.OCT","BITAND":"BITAND","BITLSHIFT":"BIT.SPOSTA.SX","BITOR":"BITOR","BITRSHIFT":"BIT.SPOSTA.DX","BITXOR":"BITXOR","COMPLEX":"COMPLESSO","DEC2BIN":"DECIMALE.BINARIO","DEC2HEX":"DECIMALE.HEX","DEC2OCT":"DECIMALE.OCT","DELTA":"DELTA","ERF":"FUNZ.ERRORE","ERF.PRECISE":"FUNZ.ERRORE.PRECISA","ERFC":"FUNZ.ERRORE.COMP","ERFC.PRECISE":"FUNZ.ERRORE.COMP.PRECISA","GESTEP":"SOGLIA","HEX2BIN":"HEX.BINARIO","HEX2DEC":"HEX.DECIMALE","HEX2OCT":"HEX.OCT","IMABS":"COMP.MODULO","IMAGINARY":"COMP.IMMAGINARIO","IMARGUMENT":"COMP.ARGOMENTO","IMCONJUGATE":"COMP.CONIUGATO","IMCOS":"COMP.COS","IMCOSH":"COMP.COSH","IMCOT":"COMP.COT","IMCSC":"COMP.CSC","IMCSCH":"COMP.CSCH","IMDIV":"COMP.DIV","IMEXP":"COMP.EXP","IMLN":"COMP.LN","IMLOG10":"COMP.LOG10","IMLOG2":"COMP.LOG2","IMPOWER":"COMP.POTENZA","IMPRODUCT":"COMP.PRODOTTO","IMREAL":"COMP.PARTE.REALE","IMSEC":"COMP.SEC","IMSECH":"COMP.SECH","IMSIN":"COMP.SEN","IMSINH":"COMP.SENH","IMSQRT":"COMP.RADQ","IMSUB":"COMP.DIFF","IMSUM":"COMP.SOMMA","IMTAN":"COMP.TAN","OCT2BIN":"OCT.BINARIO","OCT2DEC":"OCT.DECIMALE","OCT2HEX":"OCT.HEX","DAVERAGE":"DB.MEDIA","DCOUNT":"DB.CONTA.NUMERI","DCOUNTA":"DB.CONTA.VALORI","DGET":"DB.VALORI","DMAX":"DB.MAX","DMIN":"DB.MIN","DPRODUCT":"DB.PRODOTTO","DSTDEV":"DB.DEV.ST","DSTDEVP":"DB.DEV.ST.POP","DSUM":"DB.SOMMA","DVAR":"DB.VAR","DVARP":"DB.VAR.POP","CHAR":"CODICE.CARATT","CLEAN":"LIBERA","CODE":"CODICE","CONCATENATE":"CONCATENA","CONCAT":"CONCATENA","DOLLAR":"VALUTA","EXACT":"IDENTICO","FIND":"TROVA","FINDB":"FINDB","FIXED":"FISSO","LEFT":"SINISTRA","LEFTB":"LEFTB","LEN":"LUNGHEZZA","LENB":"LENB","LOWER":"MINUSC","MID":"STRINGA.ESTRAI","MIDB":"MIDB","NUMBERVALUE":"NUMERO.VALORE","PROPER":"MAIUSC.INIZ","REPLACE":"RIMPIAZZA","REPLACEB":"REPLACEB","REPT":"RIPETI","RIGHT":"DESTRA","RIGHTB":"RIGHTB","SEARCH":"RICERCA","SEARCHB":"SEARCHB","SUBSTITUTE":"SOSTITUISCI","T":"T","T.TEST":"TESTT","TEXT":"TESTO","TEXTJOIN":"TEXTJOIN","TRIM":"ANNULLA.SPAZI","TRIMMEAN":"MEDIA.TRONCATA","TTEST":"TEST.T","UNICHAR":"CARATT.UNI","UNICODE":"UNICODE","UPPER":"MAIUSCOL","VALUE":"VALORE","AVEDEV":"MEDIA.DEV","AVERAGE":"MEDIA","AVERAGEA":"MEDIA.VALORI","AVERAGEIF":"MEDIA.SE","AVERAGEIFS":"MEDIA.PIÙ.SE","BETADIST":"DISTRIB.BETA","BETA.DIST":"DISTRIB.BETA.N","BETA.INV":"INV.BETA.N","BINOMDIST":"DISTRIB.BINOM","BINOM.DIST":"DISTRIB.BINOM.N","BINOM.DIST.RANGE":"INTERVALLO.DISTRIB.BINOM.N.","BINOM.INV":"INV.BINOM","CHIDIST":"DISTRIB.CHI","CHIINV":"INV.CHI","CHITEST":"TEST.CHI","CHISQ.DIST":"DISTRIB.CHI.QUAD","CHISQ.DIST.RT":"DISTRIB.CHI.QUAD.DS","CHISQ.INV":"INV.CHI.QUAD","CHISQ.INV.RT":"INV.CHI.QUAD.DS","CHISQ.TEST":"TEST.CHI.QUAD","CONFIDENCE":"CONFIDENZA","CONFIDENCE.NORM":"CONFIDENZA.NORM","CONFIDENCE.T":"CONFIDENZA.T","CORREL":"CORRELAZIONE","COUNT":"CONTA.NUMERI","COUNTA":"COUNTA","COUNTBLANK":"CONTA.VUOTE","COUNTIF":"CONTA.SE","COUNTIFS":"CONTA.PIÙ.SE","COVAR":"COVARIANZA","COVARIANCE.P":"COVARIANZA.P","COVARIANCE.S":"COVARIANZA.C","CRITBINOM":"CRIT.BINOM","DEVSQ":"DEV.Q","EXPON.DIST":"DISTRIB.EXP.N","EXPONDIST":"EXPONDIST","FDIST":"DISTRIB.F","FINV":"INV.F","F.DIST":"DISTRIBF","F.DIST.RT":"DISTRIB.F.DS","F.INV":"INVF","F.INV.RT":"INV.F.DS","FISHER":"FISHER","FISHERINV":"INV.FISHER","FORECAST":"PREVISIONE","FORECAST.LINEAR":"PREVISIONE.LINEARE","FREQUENCY":"FREQUENZA","GAMMA":"GAMMA","GAMMADIST":"DISTRIB.GAMMA","GAMMA.DIST":"DISTRIB.GAMMA.N","GAMMAINV":"INV.GAMMA","GAMMA.INV":"INV.GAMMA.N","GAMMALN":"LN.GAMMA","GAMMALN.PRECISE":"LN.GAMMA.PRECISA","GAUSS":"GAUSS","GEOMEAN":"MEDIA.GEOMETRICA","HARMEAN":"MEDIA.ARMONICA","HYPGEOM.DIST":"DISTRIB.IPERGEOM.N","HYPGEOMDIST":"DISTRIB.IPERGEOM","INTERCEPT":"INTERCETTA","KURT":"CURTOSI","LARGE":"GRANDE","LOGINV":"INV.LOGNORM","LOGNORM.DIST":"DISTRIB.LOGNORM.N","LOGNORM.INV":"INV.LOGNORM.N","LOGNORMDIST":"DISTRIB.LOGNORM","MAX":"MAX","MAXA":"MAX.VALORI","MAXIFS":"MAXIFS","MEDIAN":"MEDIANA","MIN":"MIN","MINA":"MIN.VALORI","MINIFS":"MINIFS","MODE":"MODA","MODE.MULT":"MODA.MULT","MODE.SNGL":"MODA.SNGL","NEGBINOM.DIST":"DISTRIB.BINOM.NEG.N","NEGBINOMDIST":"DISTRIB.BINOM.NEG","NORM.DIST":"DISTRIB.NORM.N","NORM.INV":"INV.NORM.N","NORM.S.DIST":"DISTRIB.NORM.ST.N","NORM.S.INV":"INV.NORM.S","NORMDIST":"DISTRIB.NORM.N","NORMINV":"INV.NORM.N","NORMSDIST":"DISTRIB.NORM.ST","NORMSINV":"INV.NORM.ST","PEARSON":"PEARSON","PERCENTILE":"PERCENTILE","PERCENTILE.EXC":"ESC.PERCENTILE","PERCENTILE.INC":"INC.PERCENTILE","PERCENTRANK":"PERCENT.RANGO","PERCENTRANK.EXC":"ESC.PERCENT.RANGO","PERCENTRANK.INC":"INC.PERCENT.RANGO","PERMUT":"PERMUTAZIONE","PERMUTATIONA":"PERMUTAZIONE.VALORI","PHI":"PHI","POISSON":"POISSON","POISSON.DIST":"DISTRIB.POISSON","PROB":"PROBABILITÀ","QUARTILE":"QUARTILE","QUARTILE.INC":"INC.QUARTILE","QUARTILE.EXC":"ESC.QUARTILE","RANK.AVG":"RANGO.MEDIA","RANK.EQ":"RANGO.UG","RANK":"RANGO","RSQ":"RQ","SKEW":"ASIMMETRIA","SKEW.P":"ASSIMETRIA.P","SLOPE":"PENDENZA","SMALL":"PICCOLO","STANDARDIZE":"NORMALIZZA","STDEV":"DEV.ST","STDEV.P":"DEV.ST.P","STDEV.S":"DEV.ST.C","STDEVA":"DEV.ST.VALORI","STDEVP":"DEV.ST.P","STDEVPA":"DEV.ST.POP.VALORI","STEYX":"ERR.STD.YX","TDIST":"DISTRIB.T","TINV":"INV.T","T.DIST":"DISTRIB.T.N","T.DIST.2T":"DISTRIB.T.2T","T.DIST.RT":"DISTRIB.T.DS","T.INV":"INVT","T.INV.2T":"INV.T.2T","VAR":"VAR","VAR.P":"VAR.P","VAR.S":"VAR.C","VARA":"VAR.VALORI","VARP":"VAR.POP","VARPA":"VAR.POP.VALORI","WEIBULL":"WEIBULL","WEIBULL.DIST":"DISTRIB.WEIBULL","Z.TEST":"TESTZ","ZTEST":"TEST.Z","ACCRINT":"INT.MATUTRATO.PER","ACCRINTM":"INT.MATUTRATO.SCAD","AMORDEGRC":"AMMORT.DEGR","AMORLINC":"AMMORT.PER","COUPDAYBS":"GIORNI.CED.INIZ.LIQ","COUPDAYS":"GIORNI.CED","COUPDAYSNC":"GIORNI.CED.NUOVA","COUPNCD":"DATA.CED.SUCC","COUPNUM":"NUM.CED","COUPPCD":"DATA.CED.PREC","CUMIPMT":"INT.CUMUL","CUMPRINC":"CAP.CUM","DB":"AMMORT.FISSO","DDB":"AMMORT","DISC":"TASSO.SCONTO","DOLLARDE":"VALUTA.DEC","DOLLARFR":"VALUTA.FRAZ","DURATION":"DURATA","EFFECT":"EFFETTIVO","FV":"VAL.FUT","FVSCHEDULE":"VAL.FUT.CAPITALE","INTRATE":"TASSO.INT","IPMT":"INTERESSI","IRR":"TIR.COST","ISPMT":"INTERESSE,RATA","MDURATION":"DURATA.M","MIRR":"TIR.VAR","NOMINAL":"NOMINALE","NPER":"NUM.RATE","NPV":"VAN","ODDFPRICE":"PREZZO.PRIMO.IRR","ODDFYIELD":"REND.PRIMO.IRR","ODDLPRICE":"PREZZO.ULTIMO.IRR","ODDLYIELD":"REND.ULTIMO.IRR","PMT":"RATA","PPMT":"P.RATA","PRICE":"PREZZO","PRICEDISC":"PREZZO.SCONT","PRICEMAT":"PREZZO.SCAD","PV":"VA","RATE":"TASSO","RECEIVED":"RICEV.SCAD","RRI":"RIT.INVEST.EFFETT","SLN":"AMMORT.COST","SYD":"AMMORT.ANNUO","TBILLEQ":"BOT.EQUIV","TBILLPRICE":"BOT.PREZZO","TBILLYIELD":"BOT.REND","VDB":"AMMORT.VAR","XIRR":"TIR.X","XNPV":"VAN.X","YIELD":"REND","YIELDDISC":"REND.TITOLI.SOCNTI","YIELDMAT":"REND.SCAD","ABS":"ASS","ACOS":"ARCCOS","ACOSH":"ARCCOSH","ACOT":"ARCCOT","ACOTH":"ARCCOTH","AGGREGATE":"AGGREGA","ARABIC":"ARABO","ASIN":"ARCSEN","ASINH":"ARCSENH","ATAN":"ARCTAN","ATAN2":"ARCTAN.2","ATANH":"ARCTANH","BASE":"BASE","CEILING":"ARROTONDA.ECCESSO","CEILING.MATH":"ARROTONDA.ECCESSO.MAT","CEILING.PRECISE":"ARROTONDA.ECCESSO.PRECISA","COMBIN":"COMBINAZIONE","COMBINA":"COMBINAZIONE.VALORI","COS":"COS","COSH":"COSH","COT":"COT","COTH":"COTH","CSC":"CSC","CSCH":"CSCH","DECIMAL":"DECIMALE","DEGREES":"GRADI","ECMA.CEILING":"ECMA.CEILING","EVEN":"PARI","EXP":"EXP","FACT":"FATTORIALE","FACTDOUBLE":"FATT.DOPPIO","FLOOR":"ARROTONDA.DIFETTO","FLOOR.PRECISE":"ARROTONDA.DIFETTO.PRECISA","FLOOR.MATH":"ARROTONDA.DIFETTO.MAT","GCD":"MCD","INT":"INT","ISO.CEILING":"ISO.ARROTONDA.ECCESSO","LCM":"MCM","LN":"LN","LOG":"LOG","LOG10":"LOG10","MDETERM":"MATR.DETERM","MINVERSE":"MATR.INVERSA","MMULT":"MATR.PRODOTTO","MOD":"RESTO","MROUND":"ARROTONDA.MULTIPLO","MULTINOMIAL":"MULTINOMIALE","ODD":"DISPARI","PI":"PI.GRECO","POWER":"POTENZA","PRODUCT":"PRODOTTO","QUOTIENT":"QUOZIENTE","RADIANS":"RADIANTI","RAND":"CASUALE","RANDBETWEEN":"CASUALE.TRA","ROMAN":"ROMANO","ROUND":"ARROTONDA","ROUNDDOWN":"ARROTONDA.PER.DIF","ROUNDUP":"ARROTONDA.PER.ECC","SEC":"SEC","SECH":"SECH","SERIESSUM":"SOMMA.SERIE","SIGN":"SEGNO","SIN":"SEN","SINH":"SENH","SQRT":"RADQ","SQRTPI":"RADQ.PI.GRECO","SUBTOTAL":"SUBTOTAL","SUM":"SOMMA","SUMIF":"SOMMA.SE","SUMIFS":"SOMMA.PIÙ.SE","SUMPRODUCT":"MATR.SOMMA.PRODOTTO","SUMSQ":"SOMMA.Q","SUMX2MY2":"SOMMA.DIFF.Q","SUMX2PY2":"SOMMA.SOMMA.Q","SUMXMY2":"SOMMA.Q.DIFF","TAN":"TAN","TANH":"TANH","TRUNC":"TRONCA","ADDRESS":"INDIRIZZO","CHOOSE":"SCEGLI","COLUMN":"RIF.COLONNA","COLUMNS":"COLONNE","HLOOKUP":"CERCA.ORIZZ","INDEX":"INDICE","INDIRECT":"INDIRETTO","LOOKUP":"CERCA","MATCH":"CONFRONTA","OFFSET":"SCARTO","ROW":"RIF.RIGA","ROWS":"RIGHE","TRANSPOSE":"MATR.TRASPOSTA","VLOOKUP":"CERCA.VERT","ERROR.TYPE":"ERRORE.TIPO","ISBLANK":"VAL.VUOTO","ISERR":"VAL.ERR","ISERROR":"VAL.ERRORE","ISEVEN":"VAL.PARI","ISFORMULA":"VAL.FORMULA","ISLOGICAL":"VAL.LOGICO","ISNA":"ISNA","ISNONTEXT":"VAL.NON.TESTO","ISNUMBER":"VAL.NUMERO","ISODD":"VAL.DISPARI","ISREF":"VAL.RIF","ISTEXT":"VAL.TESTO","N":"N","NA":"NA","SHEET":"FOGLIO","SHEETS":"FOGLI","TYPE":"TYPE","AND":"E","FALSE":"FALSO","IF":"SE","IFERROR":"SE.ERRORE","IFNA":"SE.NON.DISP.","NOT":"NON","OR":"O","SWITCH":"SWITCH","TRUE":"VERO","XOR":"XOR","LocalFormulaOperands":{"StructureTables":{"h":"Headers","d":"Data","a":"All","tr":"This row","t":"Totals"},"CONST_TRUE_FALSE":{"t":"TRUE","f":"FALSE"},"CONST_ERROR":{"nil":"#NULL!","div":"#DIV/0!","value":"#VALUE!","ref":"#REF!","name":"#NAME\\?","num":"#NUM!","na":"#N/A","getdata":"#GETTING_DATA","uf":"#UNSUPPORTED_FUNCTION!"}}} \ No newline at end of file