google apps script - parte - 1

Post on 21-Jan-2015

2.003 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Google Apps Script

Prof. Sérgio Souza Costa

Aprenda na prática - Parte 1

Sobre mim

Sérgio Souza CostaProfessor - UFMADoutor em Computação Aplicada (INPE)

prof.sergio.costa@gmail.com

https://sites.google.com/site/profsergiocosta/home

https://twitter.com/profsergiocosta

http://gplus.to/sergiosouzacosta

http://www.slideshare.net/skosta/presentations?order=popular

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.

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/j-12591397

Integração entre produtos

Gmail

Sites

SpreadsheetCalendar

Documents

Translate

Maps

Contacts

Apps Script

Google API

Breve histórico

Fonte: Arun Nagarajan

Alexandre Jacquet

alejacquet@gmail.com

Breno Araújo

breno.araujo@acm.org

Agradecimento ao Alexandre Jacket por ter cedido a apresentação no link abaixo:

http://www.slideshare.net/alejacquet/google-appsscript-overview-22980983

Abram esta apresentação

Introdução (overview)

Resumo dos serviços

https://developers.google.com/apps-script/reference/

Fonte: Arun Nagarajan

Parte 1Google DocumentsGoogle Planilha

Parte 2WebappsGoogle Sites

Roteiro

Parte 1Google DocumentsGoogle Planilha

Parte 2WebappsGoogle Sites

Roteiro

Antes de seguir, será necessário ter uma conta na Google.

Criando funções para planilha

https://developers.google.com/apps-script/execution_custom_functions

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.

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}

Criando funções para planilha

Selecione:

Ferramenta -> Editor de Scripts

Selecione:

Ferramenta -> Editor de Scripts

Escolha projeto em branco

Selecione:

Ferramenta -> Editor de Scripts

Copie o código abaixo no editor.

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}

Selecione:

Ferramenta -> Editor de Scripts

Copie o código abaixo no editor.

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}

Para quem não fez os passos anteriores, pode abrir o link abaixo e criar uma cópia do arquivo.

https://docs.google.com/spreadsheet/ccc?key=0Avv93GPSzr6FdHpiT29mT3EyajVoWUFNSTFfaDVMdVE&usp=sharing

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)) )

Criando funções para planilha

Mãos a obra !!!

function minhaMedia(range){ var soma = 0 for (var i in range) { soma+= parseFloat(range[i]) } return soma / range.length }

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

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.

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]);

}}

Lê todos os valores da planilha ativa como uma matriz.

Lendo valores da planilha

A informação é capturada através de logs (registros). Útil para depurar.

pegando dados

2. Selecione “Gerenciador de scripts”

Lendo valores da planilha

pegando dados

2. Selecione “Gerenciador de scripts”

3. Click em executar

Lendo valores da planilha

pegando dados

2. Selecione “Gerenciador de scripts”

4. Click em Editar

Lendo valores da planilha

pegando dados

2. Selecione “Gerenciador de scripts”

5. Click em Registros

Lendo valores da planilha

pegando dados

2. Selecione “Gerenciador de scripts”

5. Click em Registros

Lendo valores da planilha

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);}

1. Abra o script no link abaixo e click executar: https://script.google.com/d/1B8zP8U00Kl84Vlp8oIEKeV-00bQETz_U4rraHSdJYdvu7CfbGT6NR5ij/edit?usp=sharing

Criando documentos

Criando documentos

Estrutura de um documento.

Spreadsheet Documents

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.

Substituindo texto

var ui = DocumentApp.getUi();

function onOpen() { ui.createMenu('Mais') .addItem('Atualiza', 'atualiza') .addToUi();}

function atualiza() { var result = ui.prompt('Atualizando o nome', 'Entre com o nome do aluno:', ui.ButtonSet.OK_CANCEL); if (result.getSelectedButton() == ui.Button.OK) { var name = result.getResponseText() var body = DocumentApp.getActiveDocument() .getBody();

body.replaceText('{nome}', name); } }

Substituindo texto

1. Abra e crie uma cópia do documento do link abaixo:https://docs.google.com/document/d/1Wrzhe7Axf8LlQxm2t4mpitd_XOvfHVlL1D5q7yzz5Ec/edit?usp=sharing

2. Selecione o menu Mais -> Atualiza

Código que faz a subsituição

Integração - planilha, documento e drive

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]);

}}

Integração - planilha, documento e drive

1. Abra e execute o documento do link abaixo:https://docs.google.com/spreadsheet/ccc?key=0Avv93GPSzr6FdGJWQ3FIaDk4VXpWTE1iVVdySFN5dVE&usp=sharing

Substitua pelo id da cópia do arquivo criado anteriormente

Referências

1. Google Apps Script Reference http://www.google.com/script/start/

top related