Google apps script - Parte - 1

  • Published on
    21-Jan-2015

  • View
    1.977

  • Download
    1

DESCRIPTION

 

Transcript

  • 1. Google Apps Script Aprenda na prtica - Parte 1Prof. Srgio Souza Costa

2. Sobre mim Srgio Souza Costa Professor - UFMA Doutor em Computao Aplicada (INPE) prof.sergio.costa@gmail.comhttps://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 fcil de automao de tarefas que usem os produtos da Google integrado com servios de terceiros. 4. O que Google Apps Script (GAS)? Google Apps Script um ambiente de desenvolvimento JavaScript na nuvem que prov um modo fcil de automao de tarefas que usem os produtos da Google integrado com servios de terceiros. No link abaixo tenho disponvel uma aula detalhada sobre JavaScript: http://www.slideshare.net/skosta/j12591397 5. Integrao entre produtos Calendar SpreadsheetDocumentsMapsGmail Apps ScriptTranslateSitesContactsGoogle API 6. Breve histricoFonte: Arun Nagarajan 7. Introduo (overview) Agradecimento ao Alexandre Jacket por ter cedido a apresentao no link abaixo:http://www.slideshare.net/alejacquet/google-appsscript-overview-22980983Alexandre JacquetBreno Arajoalejacquet@gmail.combreno.araujo@acm.org Abram esta apresentao 8. Resumo dos servios https://developers.google.com/apps-script/reference/Fonte: Arun Nagarajan 9. RoteiroParte 1 Google Documents Google PlanilhaParte 2 Webapps Google Sites 10. RoteiroParte 1 Google Documents Google Planilha Antes de seguir, ser necessrio ter uma conta na Parte 2 Google. Webapps Google Sites 11. Criando funes para planilha Crie uma funo que recebe um ou mais valores como argumento, de uma ou mais clulas.Estes argumentos sero usados dentro da funo para gerar o resultado, que ser retornado pela funo para a clula que chamou a funo. https://developers.google.com/apps-script/execution_custom_functions 12. Criando funes para planilhafunction 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 ScriptsEscolha projeto em branco 15. Selecione:Copie o cdigo abaixo no editor.Ferramenta -> Editor de Scriptsfunction 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 cdigo abaixo no editor.Ferramenta -> Editor de ScriptsPara quem no fez os passos anteriores, pode abrir o link abaixo e criar uma cpia 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 funes para planilha Mos a obra !!! Atividade, codifique uma funo chamada toDecimal, que usa dois argumento, um nmero e a base. Observe que basta adaptar o cdigo anterior para receber mais um parmetro (base) e este ser usado na expresso, como abaixo:dec = dec + ( str[tam-i] * (Math.pow(base, i)) ) 18. Criando funes para planilha Funo sobre uma faixa de valores Uma faixa de valores ser enviada com um vetor (uma dimenso) ou matriz (duas dimenses).range um vetorfunction minhaMedia(range){ var soma = 0 for (var i in range) { soma+= parseFloat(range[i]) } return soma / range.length } 19. Criando funes para planilha Mos a obra !!! Atividade, codifique uma funo que retorne o nmero 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 planilhaA informao capturada atravs 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("Preo: " + data[i][1]); } } 21. Lendo valores da planilhapegando dados1. Abrir a seguinte planilha: https: //docs.google.com/spreadsheet/ccc? key=0Avv93GPSzr6FdDhHc29PX29iNm5seU50c TlvYTZwSlE&usp=sharing 22. Lendo valores da planilhapegando dados 2. Selecione Gerenciador de scripts 23. Lendo valores da planilhapegando dados 2. Selecione Gerenciador de scripts 3. Click em executar 24. Lendo valores da planilhapegando dados 2. Selecione Gerenciador de scripts4. Click em Editar 25. Lendo valores da planilhapegando dados 2. Selecione Gerenciador de scripts5. Click em Registros 26. Lendo valores da planilhapegando dados 2. Selecione Gerenciador de scripts5. 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=sharingfunction 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 documentosEstrutura de um documento. 29. Integrao - planilha e documento Script para criao de listas de exerccios no google docs Professores esto sempre elaborando listas de exerccios, consumindo um tempo nesta atividade. Esta uma dica para os professores que querem automatizar esta tarefa, bem como comear a usar scripts nos aplicativos google. Completado este passos, voc conseguira criar uma base de questes em uma planilha e um script que cria uma dada lista de exerccios com uma dada quantidade de questes. http://sergioscosta.blogspot.com.br/2013/08/script-para-criacao-de-listas-de.htmlFaam o exerccio do blog. SpreadsheetDocuments 30. Substituindo texto 31. Substituindo texto 1. Abra e crie uma cpia 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=sharingfunction atualiza() { var result = ui.prompt('Atualizando o nome', 'Entre com o nome do aluno:', ui.ButtonSet.OK_CANCEL);2. Selecione o menu Mais -> Atualizaif (result.getSelectedButton() == ui.Button.OK) { var name = result.getResponseText() var body = DocumentApp.getActiveDocument() .getBody(); body.replaceText('{nome}', name); } }Cdigo que faz a subsituio 32. Integrao - planilha, documento e drive 33. Integrao - 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 cpia do arquivo criado anteriormente 34. Referncias 1. Google Apps Script Reference http://www.google. com/script/start/

Recommended

View more >