Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Apps Script - это платформа сценариев, разработанная Google для разработки легких приложений на платформе Google Workspace . Скрипт Google Apps изначально был разработан Майком Хармом в качестве побочного проекта, когда он работал разработчиком в Google Таблицах. [2] Сценарий Google Apps был впервые публично объявлен в мае 2009 года, когда Джонатан Рошель, в то время менеджер по продукту Google Docs, объявил о программе бета-тестирования. [3] В августе 2009 года скрипт Google Apps стал доступен всем клиентам Профессионального пакета Служб Google и пакета для учебных заведений. [4] Он основан на JavaScript 1.6, но также включает некоторые части 1.7 и 1.8 и подмножество ECMAScript.5 API. [5] Проекты и приложения сценария запуска на стороне сервера на Google инфраструктуры «s. Согласно Google, Apps Script «предоставляет простые способы автоматизации задач в продуктах Google и сторонних сервисах». [6] Apps Script - это также инструмент, который поддерживает надстройки для Google Docs, Sheets и Slides . [7]

Преимущества [ править ]

  1. На основе JavaScript 1.6 и некоторых JavaScript 1.7 и 1.8 [8]
  2. Облачный отладчик для отладки скриптов приложений в веб-браузере.
  3. Его можно использовать для создания простых инструментов для внутреннего потребления организации.
  4. Его можно использовать для выполнения простых задач системного администрирования.
  5. Модель поддержки на уровне сообщества. [1]

Ограничения [ править ]

  1. Ограничения обработки. Будучи облачной службой, скрипт приложений ограничивает время, в течение которого скрипт пользователя может запускаться, а также ограничивает доступ к сервисам Google. [9]
  2. В настоящее время в Google Apps Store не разрешено прямое подключение к внутренним (за брандмауэром) корпоративным базам данных, что является ключом к созданию бизнес-приложений, однако с помощью службы JDBC это можно преодолеть, если подключения разрешены с серверов Google. на внутренний сервер базы данных. [10] Точно так же отсутствие других возможностей подключения, таких как подключение LDAP, ограничивает уровень, до которого GAS может использоваться на предприятии. [ необходима цитата ]
  3. Из-за облачной природы скрипта приложений, функции, связанные с датой и временем, будут давать результаты, которые кажутся неверными из-за того, что данные пересекают часовые пояса . Использование объектов и функций Date / Time без очень точного объявления и тщательного тестирования может привести к неточным результатам. [11]

Пример [ править ]

function  doGet ( e )  {  var  searchTerm  =  'Script Tools'  var  ui  =  XmlService . createDocument ( XmlService . createElement ( 'html' )). setDocType ( XmlService . createDocType ( 'html' ))  var  body  =  XmlService . createElement ( 'body' )  body  =  buildTree ( тело ,  searchTerm ); ui . getRootElement (). addContent ( body )  возвращает  HtmlService . createHtmlOutput ( XmlService . getRawFormat (). format ( ui )) }функция  buildTree ( узел ,  searchTerm )  {  var  ul  =  XmlService . createElement ( 'ul' ). addContent ( XmlService . createElement ( 'p' ). addContent ( XmlService . createText ( searchTerm )));  // Использование службы DriveApp сценария приложений для получения коллекций.  var  папки  =  DriveApp . getFoldersByName ( searchTerm ). следующий(). getFolders () в  то время как  ( папки . hasNext ()) {  var  thisFolder  =  папки . следующий ();  var  li  =  XmlService . createElement ( 'ли' );  var  resp  =  buildTree ( li ,  thisFolder . getName ())  ul . addContent ( li );  } var  files  =  DriveApp . getFoldersByName ( searchTerm ). следующий (). getFiles ()  while  ( files . hasNext ())  {  var  thisFile  =  files . next ()  if  ( thisFile . getMimeType ()  ===  "application / vnd.google-apps.document" )  {  urlBase  =  "https://docs.google.com/document/edit?id=" ;  iconHTML  = "https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.document" ;  }  else  if  ( thisFile . getMimeType ()  ===  "application / vnd.google-apps.spreadsheet" )  {  urlBase  =  "https://spreadsheets.google.com/ccc?key=" ;  iconHTML  =  "https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.spreadsheet" ;  }  else  if  ( thisFile . getMimeType ()  ===  "application / vnd.google-apps.script")  {  urlBase =  "https://docs.google.com/fileview?id=" ;  iconHTML  =  "https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.script" ;  }  else  if  ( thisFile . getMimeType ()  ===  "application / vnd.google-apps.presentation" )  {  urlBase  =  "https://docs.google.com/present/edit?id=" ;  iconHTML  =  "https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.presentation" ;  }  else  if  ( thisFile . getMimeType()  ===  "application / vnd.google-apps.drawing" )  {  urlBase  =  "https://docs.google.com/drawings/edit?id=" ;  iconHTML  =  "https://drive-thirdparty.googleusercontent.com/32/type/application/vnd.google-apps.drawing" ;  }  else  {  urlBase  =  "https://docs.google.com/fileview?id=" ;  iconHTML  =  "https://drive-thirdparty.googleusercontent.com/32/type/application/application/vnd.google-apps.unknown" ;  }   var  li  =  XmlService . createElement ( 'ли' );  var  image  =  XmlService . createElement ( 'img' ). setAttribute ( 'src' ,  iconHTML );  var  fileLabel  =  XmlService . createElement ( 'а' ). setAttribute ( 'href' ,  urlBase  +  thisFile . getId ())  . setAttribute ( 'цель' , _blank ). addContent ( XmlService . createText ( thisFile . getName ()))  var  fileLabelPanel  =  XmlService . createElement ( 'div' ). setAttribute ( 'style' ,  'display: flex; flex-direction: row;' )  fileLabelPanel . addContent ( изображение )  fileLabelPanel . addContent ( fileLabel )  li . addContent ( fileLabelPanel ) ул . addContent ( li )  }  узел . addContent ( ul )  возвращаемый  узел ;  }

Дополнения [ править ]

В марте 2014 года Google представила надстройки для Документов и Таблиц (вскоре за ними последовали Формы). Магазины надстроек позволяют пользователям добавлять в редакторы Google дополнительные функции, такие как объединение писем, рабочие процессы, построители диаграмм, ... Все надстройки либо на 100% построены с помощью скрипта приложений, либо просто используют скрипт приложений для отображения пользовательского интерфейса в редакторы Google, полагаясь на внешний сервер для выполнения некоторых задач. Например, MailChimp, инструмент для слияния писем, имеет надстройку для Google Docs, которая взаимодействует с платформой MailChimp для отправки электронных писем.

До появления надстроек можно было публиковать скрипты для Google Таблиц в галерее скриптов. Когда пользователи устанавливали скрипты через эту галерею, копия кода скрипта приложений была установлена ​​на листе пользователя. С надстройками исходный код не виден конечному пользователю, и все используют последнюю версию, опубликованную разработчиком. Этот новый подход упростил поддержку существующего кода и помог убедить несколько компаний, таких как MailChimp или LucidChart, инвестировать в Apps Script.

В рамках выпуска надстроек Google также представила Руководство по стилю пользовательского интерфейса [12] и пакет CSS, чтобы помочь разработчикам создавать надстройки, которые легко интегрируются в редакторы. Каждое дополнение также проверяется Google перед публикацией, и разработчики могут воспользоваться советами сотрудников Google, чтобы улучшить взаимодействие с пользователем. Встраивать рекламу в надстройки невозможно, но можно монетизировать их. [13]

См. Также [ править ]

  • Google App Engine
  • Конструктор приложений Google

Ссылки [ править ]

  1. Мейер, Дэвид (20 августа 2009 г.). "Google Apps Script получает зеленый свет" . CNet . Проверено 26 марта 2011 года .
  2. ^ Коледа, Эрик (21 августа 2019). «Празднование 10-летия Apps Script: оглядываясь назад на то, как это началось» . Блог Google Cloud . Проверено 22 августа 2019 .
  3. Рошель, Джонатан (27 мая 2009 г.). «Старый инструмент, новые хитрости» . Блог Google Cloud . Проверено 22 августа 2019 .
  4. ^ Ливи, Эвин (19 августа 2009). «Скрипт Google Apps запущен для Google Apps Premier и для учебных заведений» . Скрипт Google Apps . Проверено 22 августа 2019 .
  5. ^ Кини, Хольгер (май-июнь 2010). «Пришло время серьезно заняться JavaScript (подробнее)» . Программное обеспечение IEEE . 27 (3): 60–62. DOI : 10.1109 / MS.2010.76 . Архивировано из оригинального 29 июня 2010 года . Проверено 25 марта 2011 года .
  6. ^ Скрипт Google Apps
  7. ^ Добавьте что-то дополнительное в Документы и Таблицы с надстройками.
  8. ^ Google Inc. (28 августа 2018 г.). «Встроенные сервисы Google» . Скрипт Google Apps . Дата обращения 16 мая 2019 .
  9. ^ https://developers.google.com/apps-script/guides/services/quotas
  10. ^ https://developers.google.com/apps-script/guides/jdbc
  11. ^ «Проблема 1035: utilities.formatdate вычитает день» . Проверено 17 декабря 2012 года .
  12. ^ Руководство по стилю пользовательского интерфейса для надстроек
  13. ^ Я начал небольшой эксперимент ...

Внешние ссылки [ править ]

  • Официальный веб-сайт
  • developers.google.com/apps-script/case-studies