Примечания к выпуску: 2014 г.

Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.

На этой странице перечислены основные изменения в каждой версии скрипта Google Apps за 2014 год. Она предназначена для того, чтобы помочь разработчикам выявить изменения в поведении. Более свежие изменения см. в примечаниях к выпуску за текущий год .

декабрь 2014 г.

11 декабря 2014 г.

1 декабря 2014 г.

  • Добавлено пять новых методов FormApp :
    • Form.getShuffleQuestions() : определяет, является ли порядок вопросов на каждой странице формы случайным.
    • Form.hasLimitOneResponsePerUser() : определяет, разрешает ли форма только один ответ на одного респондента. Если значение равно true, сценарий вообще не может отправлять ответы формы.
    • Form.setLimitOneResponsePerUser(enabled) : устанавливает, разрешает ли форма только один ответ на одного респондента. По умолчанию для новых форм установлено значение false. Если установлено значение true, сценарий вообще не может отправлять ответы формы.
    • Form.setShuffleQuestions(shuffle) : определяет, является ли порядок вопросов на каждой странице формы случайным.
    • Form.shortenFormUrl(url) : преобразует длинный URL-адрес формы в короткий URL-адрес.
  • Добавлено два новых метода SpreadsheetApp :

Октябрь 2014 г.

23 октября 2014 г.

14 октября 2014 г.

сентябрь 2014 г.

30 сентября 2014 г.

  • Добавлен LinearOptimizationService , который позволяет сценариям моделировать и решать линейные и смешанно-целочисленные линейные программы.
  • Надстройки для Google Таблиц и Документов теперь могут использовать большинство устанавливаемых триггеров , хотя они по-прежнему не могут использовать триггеры, управляемые временем (иногда называемые триггерами часов).
  • Добавлен устанавливаемый триггер открытия для Документов Google. Как и устанавливаемые открытые триггеры для Таблиц и Форм, этот триггер похож на простой onOpen() , но позволяет запускаемой функции вызывать службы, требующие авторизации, если пользователь заранее авторизовал сценарий.
  • Добавлено несколько новых методов, классов и перечислений ScriptApp для поддержки устанавливаемых триггеров в надстройках:
    • AuthorizationInfo : объект, используемый для определения необходимости авторизации этого скрипта для использования одной или нескольких служб, а также для предоставления URL-адреса диалогового окна авторизации. Возвращается ScriptApp.getAuthorizationInfo() .
    • AuthorizationStatus : перечисление, обозначающее статус авторизации скрипта. Возвращается с помощью AuthorizationInfo.getAuthorizationStatus() .
    • DocumentTriggerBuilder : Построитель триггеров документов. Возвращено TriggerBuilder.forDocument(...) .
    • ScriptApp.getUserTriggers(...) : получает все устанавливаемые триггеры, принадлежащие этому пользователю в данном документе, электронной таблице или форме.
  • Виджет UiService DocsListDialog теперь требует, чтобы вы вызывали DocsListDialog.setOAuthToken(oAuthToken) перед вызовом DocsListDialog.showDocsPicker() .

4 сентября 2014 г.

  • Добавлен метод UiService DocsListDialog.setOAuthToken(oAuthToken) , который устанавливает токен OAuth 2.0 для использования при извлечении данных для диалога от имени пользователя, содержимое которого должно отображаться. Этот метод станет обязательным перед вызовом DocsListDialog.showDocsPicker() 30 сентября 2014 г.
  • Добавлен метод CacheService getDocumentCache() и метод LockService getDocumentLock() , которые получают кеш и блокировку, к которым могут получить доступ все пользователи в текущем документе, если скрипт опубликован как надстройка. Эти методы концептуально похожи на метод getDocumentProperties() PropertiesService , который был представлен для использования в надстройках ранее в этом году.
  • Заменены методы CacheService getPrivateCache() и getPublicCache() и методы LockService getPrivateLock() и getPublicLock() на getUserCache() , getScriptCache() , getUserLock() и getScriptLock() соответственно. Старые имена методов устарели, но будут продолжать работать. Новые имена следуют тем же соглашениям, что и PropertiesService .

август 2014 г.

28 августа 2014 г.

14 августа 2014 г.

июль 2014 г.

17 июля 2014 г.

июнь 2014 г.

20 июня 2014 г.

  • Устарела галерея скриптов в старой версии Google Таблиц. Как объясняется в сообщении блога , магазин надстроек в новой версии Sheets предоставляет разработчикам более широкое распространение, автоматические обновления и ряд других функций, недоступных в галерее скриптов.

май 2014 г.

29 мая 2014 г.

  • Добавлены методы службы документов getTextAlignment и setTextAlignment , а также перечисление TextAlignment для поддержки выравнивания текста NORMAL , SUPERSCRIPT и SUBSCRIPT в Документах Google.
  • Предоставлено руководство по переходу от службы домена к расширенным службам Admin SDK. Как было объявлено в блоге , сервис будет доступен в течение следующих шести месяцев, но будет отключен 20 ноября 2014 года.

15 мая 2014 г.

8 мая 2014 г.

  • Диалоговое окно «Сообщить о проблеме» для надстроек теперь спрашивает пользователей, не хотят ли они поделиться своим именем и адресом электронной почты с разработчиком.

1 мая 2014 г.

апрель 2014 г.

24 апреля 2014 г.

  • В новой версии Google Таблиц команда «Отменить» теперь может отменить изменения, внесенные скриптом. Это уже было верно в Документах, Формах и старой версии Таблиц.
  • Были применены следующие исправления:
    • Проблема 3891. В новой версии Таблиц пользовательские функции теперь правильно пересчитываются, если в качестве аргумента передается более 100 ячеек.
    • Проблема 3859. В новой версии Таблиц установка критериев проверки данных для ячейки, которая уже содержит значение, больше не повреждает электронную таблицу.
    • Проблема 3773. В новой версии Sheets методы Browser inputBox и msgBox теперь обрабатывают символы новой строки ( \n ) так же, как и в старой версии Sheets. В частности, \n создает пробел, а \\n (с двойным экранированием) создает разрыв строки.
    • Проблема 2335 : Тот факт, что идентификатор GmailThread меняется в зависимости от содержащихся в нем сообщений, теперь задокументирован .
    • Проблема 2288 : теперь задокументирован тот факт, что сайт Google или страница сайта не может иметь более 500 дочерних страниц.
    • Проблема 1427 : теперь задокументирован тот факт, что метод getAs заменяет часть имени файла, которая следует за последней точкой, расширением нового типа файла.

17 апреля 2014 г.

  • Метод Document setSelection метод Sheet activate , а методы Spreadsheet setActiveRange и setActiveSelection больше не имеют никакого эффекта, если они вызываются из onOpen или onEdit .
  • Были применены следующие исправления:
    • Проблема 3669. В новой версии Таблиц методы Range getValue() и getValues() больше не вызывают исключение, если ячейка использует встроенные методы Таблиц =IMAGE(url) или =SPARKLINE(data) .
    • Проблема 2684 : если сценарий использует удаленную версию библиотеки, теперь можно переключиться на другую версию.

10 апреля 2014 г.

  • Устаревшая служба SOAP и старая служба XML теперь удалены из автозаполнения и документации, как было объявлено 9 июля 2013 г. и задокументировано в расписании закрытия скриптов приложений . Существующие сценарии, использующие эти службы, должны по-прежнему работать. Виджеты службы пользовательского интерфейса DeckPanel , DecoratedPopupPanel , DockLayoutPanel , DockPanel , StackLayoutPanel и TabLayoutPanel были полностью отключены, как было объявлено 15 апреля 2013 года.
  • Были применены следующие исправления:
    • Проблема 3788 : в новой версии Таблиц пользовательские функции теперь вычисляют, если им передается значение ошибки в качестве аргумента. Это соответствует поведению в старой версии Таблиц.
    • Проблема 3539 : в новой версии Таблиц методы Range setValue и setValues ​​теперь автоматически определяют, когда значение должно быть установлено в виде формулы. Это соответствует поведению в старой версии Таблиц.

3 апреля 2014 г.

  • Метод Range getDataSourceUrl() теперь поддерживается в новой версии Google Таблиц . Информацию о других незавершенных функциях Apps Script в новой версии Таблиц см. в списке известных проблем .
  • Были применены следующие исправления:
    • Проблема 3866 : методы DocsList File.getEditors() и File.getViewers() больше не выдают ошибку сервера при каждом вызове.
    • Проблема 3865 : метод DocsList File.getOwner() больше не выдает ошибку сервера при каждом вызове.
    • Проблема 3845 : расширенные службы Google для Диска и Календаря теперь задокументированы.
    • Проблема 3624. В новой версии Sheets метод Sheet hideSheet() теперь может скрывать только что вставленные листы.
    • Проблема 3554 : в новой версии Таблиц метод Range sort() теперь успешно работает для диапазонов, не включающих столбец A.
    • Проблема 3522. В новой версии Таблиц метод getActiveSheet() SpreadsheetApp теперь возвращает правильный лист в одном вызове пользовательской функции. Однако getActiveSheet() по-прежнему возвращает неверное значение, если пользовательская функция используется более чем в одной ячейке с одинаковыми аргументами функции или если она вызывается из устанавливаемого триггера редактирования в новой версии Таблиц.
    • Проблема 3496. В новой версии Таблиц метод getActiveRange() SpreadsheetApp теперь возвращает правильный диапазон в одном вызове пользовательской функции. Однако getActiveRange() по-прежнему возвращает неверное значение, если пользовательская функция используется более чем в одной ячейке с одинаковыми аргументами функции или если она вызывается из устанавливаемого триггера редактирования в новой версии Таблиц.

март 2014 г.

27 марта 2014 г.

24 марта 2014 г.

  • В новой версии Google Таблиц Range.setValues() теперь автоматически расширяет электронную таблицу, если диапазон превышает текущий размер.
  • Были применены следующие исправления:
    • Проблема 3800 : в новой версии Таблиц пользовательские функции теперь принимают в качестве аргументов числа больше 10 000 000 или меньше 0,0001.
    • Проблема 3770 : в новой версии Sheets Sheet.insertImage() теперь вставляет изображение нужного размера.
    • Проблема 3724. В новой версии Таблиц Range.setValue() теперь правильно устанавливает числовые значения в электронных таблицах, отличных от английского.

18 марта 2014 г.

  • Было применено следующее исправление:
    • Проблема 3757 : ссылка на Google Developers Console в диалоговом окне Advanced Google Services теперь открывает правильный проект.

11 марта 2014 г.

  • Объявлено о предварительной версии для разработчиков надстроек в Google Docs и новой версии Google Sheets с поддержкой Google Forms в ближайшее время. Надстройка — это проект Apps Script, опубликованный в магазине в Документах или Таблицах, что упрощает пользователям поиск и установку новых функций. Наши руководства охватывают все, что вам нужно знать для разработки , проектирования и подачи заявки на публикацию вашего первого дополнения.
  • Выпущен пакет CSS для применения стилей Google к шрифтам, кнопкам и элементам формы в диалоговых окнах службы HTML и боковых панелях, в первую очередь для использования в надстройках.
  • Добавлен метод пользовательского интерфейса Ui createAddonMenu() , который позволяет сценариям вставлять подменю в меню надстроек в Google Sheets или Docs. Для получения дополнительной информации см. руководство по меню .
  • Добавлено перечисление ScriptApp AuthMode , которое определяет категории авторизованных служб, которые Apps Script может выполнять с помощью запускаемой функции. Дополнительные сведения см. в руководстве по жизненному циклу авторизации дополнений .
  • Изменена квота для Gmail с 10 000 операций чтения и 10 000 операций записи в день (исключая отправленные сообщения) до 20 000 операций чтения и записи в день вместе взятых.
  • Добавлена ​​поддержка пользовательской аннотации @OnlyCurrentDoc , которая заставляет диалоговое окно авторизации запрашивать доступ только к файлам, в которых используется надстройка или сценарий, а не ко всем электронным таблицам, документам или формам пользователя. Также доступна противоположная аннотация @NotOnlyCurrentDoc .

Февраль 2014

25 февраля 2014 г.

  • Служба « Финансы » устарела. Как было объявлено в сообщении в блоге , сервис будет доступен в течение следующих шести месяцев, но будет отключен 26 сентября 2014 г.
  • ScriptProperties и UserProperties заменены унифицированным сервисом PropertiesService . Дополнительные сведения см. в руководстве по службе «Свойства ».
  • Добавлены следующие классы и методы DocumentApp , которые позволяют сценариям создавать закладки и именованные диапазоны, а также устанавливать положение курсора пользователя или выделение.
  • Добавлен следующий класс и методы ScriptApp , которые позволяют сценариям создавать маркеры состояния, которые можно использовать в API обратного вызова (например, потоки OAuth), а также извлекать собственный маркер доступа OAuth 2.0 сценария.
  • В класс Ui добавлен метод showModalDialog(userInterface, title) и заменен метод showDialog(userInterface) на showModelessDialog(userInterface, title) . Это позволяет сценариям указывать, должен ли диалог в Документах Google, Формах или новой версии Таблиц запрещать пользователю взаимодействовать с чем-либо, кроме диалога.
  • Добавлен метод HTML-сервиса на стороне клиента google.script.host.editor.focus() , который позволяет сценариям переключать фокус браузера с диалогового окна или боковой панели на редактор Google Docs, Sheets или Forms.
  • В Google Docs и Forms боковые панели теперь игнорируют метод setWidth() ; их нельзя изменить с ширины по умолчанию 300 пикселей. Это изменение было применено к новой версии Таблиц в выпуске предыдущей недели.
  • В Документах и ​​формах Google команда «Отменить» теперь может отменить изменения, внесенные скриптом. Это также верно в старой версии Таблиц, но не в новой версии.
  • В службе HTML режим песочницы NATIVE теперь используется по умолчанию, если вы не указали, какой режим должен использовать ваш сценарий. В некоторых крайних случаях это может повлиять на работу существующих веб-приложений; если это так, добавьте .setSandboxMode(HtmlService.SandboxMode.EMULATED) к вашему объекту HtmlOutput , чтобы восстановить старое поведение.
  • Было применено следующее исправление:
    • Проблема 3622 : строка заголовка боковой панели, отображаемая скриптом в Google Docs, Forms или новой версии Таблиц, теперь имеет ту же высоту, что и боковая панель, отображаемая встроенной функцией.

18 февраля 2014 г.

  • Удален метод Session getActiveUserTimeZone() , который не возвращал значение для большинства пользователей.
  • В Документах Google, Формах и новой версии Таблиц отображение диалогового окна теперь автоматически закрывает все другие диалоговые окна, открытые сценарием. Это соответствует давнему поведению в старой версии Таблиц.
  • В новой версии Таблиц боковые панели теперь игнорируют метод setWidth() ; их нельзя изменить с ширины по умолчанию 300 пикселей. Это изменение скоро коснется Документов и Форм.
  • Были применены следующие исправления:
    • Проблема 3522. В новой версии Таблиц метод getActiveSheet() SpreadsheetApp теперь возвращает правильный лист, если он вызывается из простого onEdit() . Однако getActiveSheet() по-прежнему возвращает неверное значение, если используется в пользовательской функции или устанавливаемом триггере редактирования в новой версии Таблиц.
    • Проблема 3496. В новой версии Таблиц метод getActiveRange() SpreadsheetApp теперь возвращает правильный лист, если он вызывается из простого onEdit() . Однако getActiveRange() по-прежнему возвращает неверное значение, если используется в пользовательской функции или устанавливаемом триггере редактирования в новой версии Таблиц.
    • Проблема 3332 : метод setHeading() в DocumentApp теперь применяет стили заголовков так же, как это делает редактор Google Docs.

Январь 2014

27 января 2014 г.

  • Квота на количество получателей электронной почты для сценариев, запускаемых из потребительских (gmail.com) или бесплатных учетных записей Google Apps, уменьшена с 500 до 100 в день. Квота для платных аккаунтов Google Apps не изменилась.
  • Добавлены следующие методы Session , которые позволяют сценариям определять языковой стандарт и часовой пояс пользователя:
  • Переименованы несколько классов и методов в DocumentApp . Старые имена устарели, но будут продолжать работать. Вам не нужно обновлять код.

21 января 2014

  • Добавлена ​​следующая запрошенная функция:
    • Проблема 3162. Новый метод SpreadsheetApp Spreadsheet.getUi() приложения SpreadsheetApp позволяет сценариям получать доступ к среде пользовательского интерфейса электронной таблицы для добавления таких функций, как меню, диалоговые окна и боковые панели. Этот метод совместим с getUi() в DocumentApp и FormApp , но работает только в новой версии Google Sheets . Старая версия Google Sheets продолжает использовать существующие методы, описанные в руководствах по диалоговым окнам, боковым панелям и меню .
  • Было применено следующее исправление:
    • Проблема 3529 : некоторые расширенные службы Google, поддерживающие запросы PATCH, должны снова работать правильно.

13 января 2014 г.

  • Объект Cursor в DocumentApp переименован в Position . Это не требует каких-либо изменений в существующем коде.
  • Устарели методы SpreadsheetApp.Spreadsheet isAnonymousView() , isAnonymousWrite() , isReadable() , isWritable() и setAnonymousAccess() . Различные методы класса File в DriveApp могут реализовать одну и ту же функциональность.
  • Добавлен метод SpreadsheetApp DataValidationBuilder.requireFormulaSatisfied(String) , а также сопутствующее значение CUSTOM_FORMULA в DataValidationCriteria . Эту функцию можно использовать только в новой версии Google Таблиц .

6 января 2014 г.

  • Пользовательские меню в Документах Google теперь отображаются в поле поиска меню « Справка ».
  • Размер пользовательских диалогов, созданных с помощью службы HTML, теперь можно изменить , вызвав google.script.host.setWidth(width) и google.script.host.setHeight(height) в коде на стороне клиента. Боковые панели не могут быть изменены в коде на стороне клиента.
  • Добавлен расширенный параметр escaping в UrlFetchApp.fetch() . Если false , зарезервированные символы в URL-адресе не будут автоматически экранированы.
  • Добавлена ​​следующая запрошенная функция: