Google apps script - Parte - 1

  • 1,881 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,881
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
46
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Google Apps Script Aprenda na prática - Parte 1 Prof. Sérgio Souza Costa
  • 2. Sobre mim Sérgio Souza Costa Professor - UFMA Doutor em Computação Aplicada (INPE) prof.sergio.costa@gmail.com https://sites.google.com/site/profsergiocosta/home http://www.slideshare.net/skosta/presentations?order=popular https://twitter.com/profsergiocosta http://gplus.to/sergiosouzacosta
  • 3. O que é Google Apps Script (GAS)? Google Apps Script é um ambiente de desenvolvimento JavaScript na nuvem que provê um modo fácil de automação de tarefas que usem os produtos da Google integrado com serviços de terceiros.
  • 4. O que é Google Apps Script (GAS)? Google Apps Script é um ambiente de desenvolvimento JavaScript na nuvem que provê um modo fácil de automação de tarefas que usem os produtos da Google integrado com serviços de terceiros. No link abaixo tenho disponível uma aula detalhada sobre JavaScript: http://www.slideshare.net/skosta/j12591397
  • 5. Integração entre produtos Calendar Spreadsheet Documents Maps Gmail Apps Script Translate Sites Contacts Google API
  • 6. Breve histórico Fonte: Arun Nagarajan
  • 7. Introdução (overview) Agradecimento ao Alexandre Jacket por ter cedido a apresentação no link abaixo: http://www.slideshare.net/alejacquet/google-appsscript-overview-22980983 Alexandre Jacquet Breno Araújo alejacquet@gmail.com breno.araujo@acm.org Abram esta apresentação
  • 8. Resumo dos serviços https://developers.google.com/apps-script/reference/ Fonte: Arun Nagarajan
  • 9. Roteiro Parte 1 Google Documents Google Planilha Parte 2 Webapps Google Sites
  • 10. Roteiro Parte 1 Google Documents Google Planilha Antes de seguir, será necessário ter uma conta na Parte 2 Google. Webapps Google Sites
  • 11. Criando funções para planilha Crie uma função que recebe um ou mais valores como argumento, de uma ou mais células. Estes argumentos serão usados dentro da função para gerar o resultado, que será retornado pela função para a célula que chamou a função. https://developers.google.com/apps-script/execution_custom_functions
  • 12. Criando funções para planilha function binary2decimal (num) { var str = new String(num) var tam = str.length - 1 var dec = 0 for (var i = tam; i >=0 ; i--) { dec = dec + ( str[tam-i] * (Math.pow(2, i)) ) } return dec }
  • 13. Selecione: Ferramenta -> Editor de Scripts
  • 14. Selecione: Ferramenta -> Editor de Scripts Escolha projeto em branco
  • 15. Selecione: Copie o código abaixo no editor. Ferramenta -> Editor de Scripts function binary2decimal (num) { var str = new String(num) var tam = str.length - 1 var dec = 0 for (var i = tam; i >=0 ; i--) { dec = dec + ( str[tam-i] * (Math.pow(2, i)) ) } return dec }
  • 16. Selecione: Copie o código abaixo no editor. Ferramenta -> Editor de Scripts Para quem não fez os passos anteriores, pode abrir o link abaixo e criar uma cópia do arquivo. function binary2decimal https://docs.google. (num) { com/spreadsheet/ccc? var str = new String(num) var tam = str.length -key=0Avv93GPSzr6FdHpiT29mT3E 1 yajVoWUFNSTFfaDVMdVE&usp=s var dec = 0 haring for (var i = tam; i >=0 ; i--) { dec = dec + ( str[tam-i] * (Math.pow(2, i)) ) } return dec }
  • 17. Criando funções para planilha Mãos a obra !!! Atividade, codifique uma função chamada toDecimal, que usa dois argumento, um número e a base. Observe que basta adaptar o código anterior para receber mais um parâmetro (base) e este ser usado na expressão, como abaixo: dec = dec + ( str[tam-i] * (Math.pow(base, i)) )
  • 18. Criando funções para planilha Função sobre uma faixa de valores Uma faixa de valores será enviada com um vetor (uma dimensão) ou matriz (duas dimensões). range é um vetor function minhaMedia(range){ var soma = 0 for (var i in range) { soma+= parseFloat(range[i]) } return soma / range.length }
  • 19. Criando funções para planilha Mãos a obra !!! Atividade, codifique uma função que retorne o número de alunos aprovados. Media das 3 notas deve ser maior ou igual a 7. Observe que neste caso temos uma matriz.
  • 20. Lendo valores da planilha A informação é capturada através de logs (registros). Útil para depurar. Lê todos os valores da planilha ativa como uma matriz. function printProductInfo() { var sheet = SpreadsheetApp.getActiveSheet(); var data = sheet.getDataRange().getValues(); for (var i = 0; i < data.length; i++) { Logger.log("Nome: " + data[i][0]); Logger.log("Preço: " + data[i][1]); } }
  • 21. Lendo valores da planilha pegando dados 1. Abrir a seguinte planilha: https: //docs.google.com/spreadsheet/ccc? key=0Avv93GPSzr6FdDhHc29PX29iNm5seU50c TlvYTZwSlE&usp=sharing
  • 22. Lendo valores da planilha pegando dados 2. Selecione “Gerenciador de scripts”
  • 23. Lendo valores da planilha pegando dados 2. Selecione “Gerenciador de scripts” 3. Click em executar
  • 24. Lendo valores da planilha pegando dados 2. Selecione “Gerenciador de scripts” 4. Click em Editar
  • 25. Lendo valores da planilha pegando dados 2. Selecione “Gerenciador de scripts” 5. Click em Registros
  • 26. Lendo valores da planilha pegando dados 2. Selecione “Gerenciador de scripts” 5. Click em Registros
  • 27. Criando documentos 1. Abra o script no link abaixo e click executar: https://script.google.com/d/1B8zP8U00Kl84Vlp8oIEKeV00bQETz_U4rraHSdJYdvu7CfbGT6NR5ij/edit?usp=sharing function createDoc() { var doc = DocumentApp.create('Sample Document'); var body = doc.getBody(); var rowsData = [['Plants', 'Animals'], ['Ficus', 'Goat'], ['Basil', 'Cat'], ['Moss', 'Frog']]; body.insertParagraph(0, doc.getName()) .setHeading(DocumentApp.ParagraphHeading.HEADING1); table = body.appendTable(rowsData); table.getRow(0).editAsText().setBold(true); }
  • 28. Criando documentos Estrutura de um documento.
  • 29. Integração - planilha e documento Script para criação de listas de exercícios no google docs Professores estão sempre elaborando listas de exercícios, consumindo um tempo nesta atividade. Esta é uma dica para os professores que querem automatizar esta tarefa, bem como começar a usar scripts nos aplicativos google. Completado este passos, você conseguira criar uma base de questões em uma planilha e um script que cria uma dada lista de exercícios com uma dada quantidade de questões. http://sergioscosta.blogspot.com.br/2013/08/script-para-criacao-de-listas-de.html Façam o exercício do blog. Spreadsheet Documents
  • 30. Substituindo texto
  • 31. Substituindo texto 1. Abra e crie uma cópia do documento do link abaixo: var ui = DocumentApp.getUi(); function onOpen() { ui.createMenu('Mais') .addItem('Atualiza', 'atualiza') .addToUi(); } https://docs.google. com/document/d/1Wrzhe7Axf8 LlQxm2t4mpitd_XOvfHVlL1D5q 7yzz5Ec/edit?usp=sharing function atualiza() { var result = ui.prompt('Atualizando o nome', 'Entre com o nome do aluno:', ui.ButtonSet.OK_CANCEL); 2. Selecione o menu Mais -> Atualiza if (result.getSelectedButton() == ui.Button.OK) { var name = result.getResponseText() var body = DocumentApp.getActiveDocument() .getBody(); body.replaceText('{nome}', name); } } Código que faz a subsituição
  • 32. Integração - planilha, documento e drive
  • 33. Integração - planilha, documento e drive 1. Abra e execute o documento do link abaixo: https://docs.google.com/spreadsheet/ccc? key=0Avv93GPSzr6FdGJWQ3FIaDk4VXpWT E1iVVdySFN5dVE&usp=sharing function copiaCertificados() { var file = DriveApp.getFileById( "1gE4V_0GZUx4byQYQywyg3reqRpF_xLr_hQZKCD_uPbo") var sheet = SpreadsheetApp.getActive(); var data = sheet.getDataRange().getValues(); for (var i in data) { var file2 = file.makeCopy("certificado_"+data[i][0]) var body = DocumentApp.openById(file2.getId()).getBody(); body.replaceText('{nome}', data[i][0]); } } Substitua pelo id da cópia do arquivo criado anteriormente
  • 34. Referências 1. Google Apps Script Reference http://www.google. com/script/start/