Tänapäeval suruvad pilvelahendused välja kontoritööks mõeldud töölauarakendusi. Üks suurimaid kontoripakette on Google'i pakutav ning see sisaldab dokumente, arvutustabeleid ja esitlusi, seega enamikku sellest, mida keskmine kontor vajab.
Selles artiklis tahan vaadata lähemalt Google Spreadsheets'i rakendust ja näidata, kuidas seda Google Apps Script'i abil veelgi nutikamaks muuta.
Kujutage ette, et teie töö seisneb kellegi teise töö jälgimises, mis tavaliselt toob kaasa mõne aruande kirjutamise. Te soovite hoida asju standardiseeritud ja üldisel kujul, seega olete loonud tabeli, kus on nimekiri asjadest, mida peate kontrollima, ja mõned lahtrid kommentaaride jaoks. Oletame, et te vastutate kvaliteedi eest digitaalse toode. Siis võib teie arvutustabel välja näha nii:
Ülaltoodud näites on näha mitmeid asju:
funktsiooni nimi ("Kasutaja sisselogimisvorm") ja number (nt ERP-süsteemist),
loetelu aspektidest, mida peate kontrollima ja mille kohta peate andma tagasisidet ("Ala" veerg),
mõned tühjad väljad teie järelduste jaoks ("Comment" veerg).
Selle lehe nimi on "Aruandegeneraator", sest ma näitan teile, kuidas see dokument võib kujuneda tõeliselt kasulikuks tööriistaks, mis võimaldab teil hinnata kellegi töötulemuste kvaliteeti.
Kui soovite mõningaid tulemusi kvantifitseerida, oleks ilmselt parim võimalus kasutada skaalat, nt 1-10 punkti või midagi sellist.
Loome samas dokumendis uue lehe, nimetame selle "Config" ja määratleme selle kaitstavaks (või vähemalt lisame selle nimele klahviluku emoji). See leht on mõeldud ainult mõnede eeldefineeritud valikute hoidmiseks, nagu allpool:
Nüüd saate need väärtused panna mõnedesse rippmenüüdesse, mis asuvad Aruande generaator lehe abil Andmete valideerimine funktsioon. Siin leiate mõned juhised, kuidas seda saavutada:
Pärast seda saate hõlpsasti konverteerida hinnangud numbrilisteks väärtusteks, kasutades funktsiooni IF valemiga. Teie arvutustabel jääb inimsõbralikuks ja teie järeldused on samal ajal kvantifitseeritud (seega mõõdetavad ja võrreldavad).
See dokument on korralik, aga kujutage ette, mis juhtub, kui ulatus teie audit kasvab ja teil on sadu asju, mida kontrollida. Saate salvestada tühja vormimalli ja kopeerida selle iga kord, kui teil on vaja uut aruannet koostada, kuid dokumendiloendite ja arvutustabeli vahel ümberlülitamine on väga tüütu. See on punkt, kus te hakkate mõtlema mõningase automatiseerimise peale.
See on ideaalne aeg alustada oma seiklust Google Apps Scriptiga!
Enne kui hakkame kodeerima, valmistame ette mõned nupud lahtiste tegevuste jaoks. Vastavalt ülaltoodud näitele:
märkida kõik esemed "täiuslikuks","
märkida kõik "vajalikud parandused","
märkida kõik "vastuvõetamatu","
nullida kõik (määrata väärtus tühjaks stringiks).
Samuti on meil vaja ühte lisategevust, et salvestada uus fail, kui audit on lõpetatud.
Esiteks, laiendame meie Aruande generaator koos nuppe sisaldava funktsionaalse alaga.
Seejärel, kasutades Sisesta -> Joonis, lisame oma nupud ükshaaval.
Meie näidisdokument peaks välja nägema selline:
Oleme valmis lisama sellele ilusale kasutajaliidesele loogikat! Alustada on väga lihtne - valige lihtsalt Tööriistad -> Stsenaariumi redaktor ülemises menüüs ja brauser hüppab uuele kaardile.
Redaktori kasutajaliides on väga intuitiivne. Kui olete tuttav mõne kood redaktori abil peaksite oma faili lihtsalt ümber nimetama või looma uue (Faili -> Uus -> Skriptifail).
Google Apps Script ei ole midagi enamat kui JavaScript nõbu, nii öelda. Kui sa tunned JS, siis võid ka GS-profiili saavutada!
Kõige esimene samm on koguda kõik võimalikud vajalikud viited ühte kohta ja anda neile mõttekad nimed. Alustame globaalsetest muutujatest, eemaldades vaikimisi myFunction deklaratsiooni ja kirjutades midagi kasulikumat Code.gs faili.
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet()
// lehtede viited
var report = spreadsheet.getSheets()[0]
var config = spreadsheet.getSheets()[1]
Ülaltoodud kood on üsna iseenesestmõistetav, kuid et see oleks täiesti selge:
getActiveSpreadsheet meetod võimaldab meil saada viide arvutustabelile, millega me töötame,
getSheets meetod, mida kutsutakse välja Tabelarvutus instants tagastab selle arvutustabeli lehtede massiivi; meie näites tagastab see [Aruande generaator leht, Config leht] massiivi.
Nüüd saame minna edasi ja võtta meie tabelist mõned kasulikud andmed.
// redigeeritav ala (lahtrid koos rippmenüüdega)
var dropdowns = report.getRange('C4:C13')
// lahter alapealkirjaga (funktsiooni nimi)
var featureName = report.getRange('B2').getValue()
// valikud lehel 'Config'
// pane tähele, et getRange() meetodile saab üle anda ühe lahtri
// ja valikute muutmine ei mõjuta teie skripti funktsionaalsust
var values = {
lubamatu: config.getRange('A2').getValue(),
improvements_needed: config.getRange('A3').getValue(),
perfect: config.getRange('A4').getValue(),
empty: ''
};
Ainus asi, mis on jäänud kodeerida, on funktsioonide määratlemine, mida me tahame oma nuppudele määrata.
// nupu funktsioonid
function allPerfect() {
dropdowns.setValue(values.perfect)
}
function allNeedImprovements() {
dropdowns.setValue(values.improvements_needed)
}
function allUnacceptable() {
dropdowns.setValue(values.unacceptable)
}
function clear() {
dropdowns.setValue(values.empty)
}
function copy() {
var copy = spreadsheet.copy(featureName + ' - report')
// Nüüd oleme kopeerinud kaks samade väärtustega lehte
// kuid muudetud nimedega (järelliiduga "copy"),
// sel juhul peame neile andma originaalnimed
// nimetame aruande lehe ümber
copy.getSheets()[0].setName(report.getName())
// nimetame konfigulehe ümber
copy.getSheets()[1].setName(config.getName())
}
The copy() meetod loob automaatselt uue tabeli nimega (meie näites) "Kasutaja sisselogimise vorm - aruanne", otse praeguse kõrval.
Määrake meie meetodid eelnevalt loodud nuppudele. Vali Skripti määramine pärast nupu paremklikki...
...ja kirjuta meetodi nimi, siin on see allPerfect
Te ei pea oma generaatorit sulgema. Kasutage oma lahtiseid toiminguid, et valmistada vorm ette uue aruande jaoks, muutke funktsiooni nime ja salvestage seejärel teine koopia!
Võimalused Google Apps Script on nii laiad, et nende kõigi arutamine võtaks terve rea artikleid. Kui olete huvitatud oma kontoritööde optimeerimisest, vaadake julgelt läbi ametlikud dokumendid ja tee oma lehed veelgi targemaks!
Seal on mõned väga kasulikud häkid, näiteks see aadressilt xfanatical.com Google'i arvutustabeli eksportimisest PDF-i.
Käesolevas artiklis kirjeldatud näide on siin. Loodan, et see meeldib teile. Lõbutsege!