| Bots de conversa | Exemples | Dades pràctiques | Recursos CITCEA | |
| Google Apps Script | Projectes | Interacció | Inici |
Des d'un script podem obrir, copiar, modificar i, fins i tot, esborrar (enviar a la paperera) un document. Hi ha moltes funcions per manipular documents, aquí veurem les més interessants. Cal tenir en compte que a Google Docs hi pot haver diversos documents amb el mateix nom i, per tant, és important disposar de l'identificador del document corresponent perquè aquest sí és únic.
La funció create ens permet crear un document i posar-li un nom. El document el podem guardar, com a objecte, en una variable.
var doc_prov = DocumentApp.create(nom);
Un cop tenim un document creat, podem consultar-ne el seu identificador amb getId o demanar, amb getDownloadUrl, l'adreça URL per poder-lo descarregar.
var url_fitxer = file.getDownloadUrl(); var id_fitxer = file.getId();
Podem fer una còpia d'un document:
var plantilla = DriveApp.getFileById(id_plantilla); var doc_prov = plantilla.makeCopy(titol);
La funció openById ens permet obrir un document i guardar-lo, com a objecte, en una variable.
var plantilla = DocumentApp.openById(id_plantilla);
Amb la funció getBody podem obtenir el contingut (cos) d'un document que haguem obert.
var contingut = document.getBody();
D'aquest cos en podem obtenir els paràgrafs amb la funció getParagraphs, que ens torna un vector amb un paràgraf a cada component. Hem d'entendre la paraula paràgraf en sentit ampli, és a dir un conjunt de text que forma una unitat tancada.
var plantilla_paragrafs = plantilla.getBody().getParagraphs();
Podem obtenir la còpia d'un paràgraf:
var parag = plantilla_paragrafs[j].copy();
També podem afegir un paràgraf a un document obert:
doc_prov.getBody().appendParagraph(parag);
Podem substituir un text per un altre, tant en un paràgraf com en el contingut complet del document:
parag.replaceText("{nom}",nom);
contingut.replaceText("{nom}",nom);
Un cop hem acabat de treballar amb un document cal tancar-lo:
doc_prov.saveAndClose();
Per esborrar un fitxer (enviar-lo a la paperera) ho podem fer així:
DriveApp.getFileById(id_doc_prov).setTrashed(true);
Per obtenir un document en versió PDF, primer el generarem com a dades binàries o BLOB (binary large objects) i després crearem un fitxer per guardar-lo i, si volem, podem indicar a quina carpeta ha d'estar. Les següents instruccions en són una mostra:
// Genera el contingut PDF apartir del document Final de la combinació
var docblob = DriveApp.getFileById(id_doc_prov).getAs('application/pdf');
docblob.setName(titol + ".pdf");
// Crea el fitxer PDF a partir del contingut guardat abans
var file = DriveApp.createFile(docblob);
var file = DriveApp.getFolderById(id_carpeta).createFile(docblob);
En aquesta pàgina podem veure un exemple d'ús de la major part d'aquestes funcions.

Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.