Šiandien debesijos sprendimai išstumia darbalaukio programas, skirtas darbui biure. Vieną iš didžiausių biuro programų rinkinių teikia "Google", į jį įeina Dokumentai, Skaičiuoklės ir Pristatymai, taigi dauguma to, ko reikia vidutiniam biurui.
Šiame straipsnyje noriu atidžiau apžvelgti "Google" skaičiuoklės programą ir parodyti, kaip ją padaryti dar išmanesnę naudojant "Google Apps Script".
Įsivaizduokite, kad jūsų darbas yra susijęs su kitų asmenų darbo priežiūra, o tai paprastai reiškia, kad tenka rašyti ataskaitas. Norite, kad viskas būtų standartizuota ir apibendrinta, todėl sukūrėte skaičiuoklę su kontroliuojamų dalykų sąrašu ir keliais langeliukais komentarui. Tarkime, kad esate atsakingas už skaitmeninio produktas. Tada jūsų skaičiuoklė gali atrodyti taip:
Pirmiau pateiktame pavyzdyje matote keletą dalykų:
funkcijos pavadinimas (“Vartotojo prisijungimo forma”) ir numeris (pvz., iš ERP sistemos),
aspektų, kuriuos turite patikrinti ir apie kuriuos turite pateikti atsiliepimus, sąrašą (skiltis “Sritys”),
kai kuriuos tuščius laukus išvadoms pateikti (stulpelis “Komentarai”).
Šis lapas pavadintas “Ataskaitų generatorius”, nes parodysiu, kaip šis dokumentas gali tapti tikrai naudingu įrankiu, leidžiančiu įvertinti kieno nors darbo rezultatų kokybę.
Jei norite kiekybiškai įvertinti tam tikrus rezultatus, tikriausiai geriausia būtų naudoti skalę, pvz., nuo 1 iki 10 balų arba panašiai.
Tame pačiame dokumente sukurkime naują lapą, pavadinkime jį “Config” ir apibrėžkime, kad jis yra apsaugotas (arba bent jau pridėkime prie jo pavadinimo emotikoną "Key Lock"). Šis lapas skirtas tik tam tikroms iš anksto nustatytoms parinktims saugoti, pvz:
Dabar šias vertes galite įrašyti į išskleidžiamus langelius Ataskaitų generatorius lapą naudodami Duomenys patvirtinimas funkcija. Čia galite rasti keletą instrukcijų, kaip tai padaryti:
Tai atlikę, galite lengvai konvertuoti reitingus į skaitines vertes naudodami IF formulė. Jūsų skaičiuoklė išliks draugiška žmogui, o išvados bus kiekybiškai išreikštos (taigi išmatuojamos ir palyginamos).
Šis dokumentas yra tvarkingas, tačiau įsivaizduokite, kas atsitinka, kai jūsų auditas auga, o jūs turite šimtus dalykų, kuriuos reikia patikrinti. Galite išsaugoti tuščią formos šabloną ir nukopijuoti jį kiekvieną kartą, kai reikia sukurti naują ataskaitą, tačiau perjunginėti dokumentų sąrašus ir skaičiuoklę labai erzina. Štai tada pradedate galvoti apie tam tikrą automatizavimą.
Puikus metas pradėti nuotykius su "Google Apps" scenarijumi!
Prieš pradėdami koduoti, paruoškime keletą mygtukų masiniams veiksmams atlikti. Pagal pirmiau pateiktą pavyzdį:
pažymėti visus elementus kaip “Perfect”.”
pažymėkite visus kaip “Reikia patobulinimų”.”
visus pažymėti kaip “nepriimtina”.”
iš naujo nustatyti visus (nustatyti reikšmę į tuščią eilutę).
Be to, mums reikės vieno papildomo veiksmo, kad užbaigus auditą išsaugotume naują failą.
Pirmiausia išplėskime savo Ataskaitų generatorius su funkcine sritimi, kurioje yra mygtukai.
Tada, naudodami Įterpti -> Brėžiniai, po vieną pridėkime mygtukus.
Mūsų pavyzdinis dokumentas turėtų atrodyti taip:
Esame pasiruošę pridėti šiek tiek logikos prie šios gražios vartotojo sąsajos! Pradėti labai paprasta - tiesiog pasirinkite Įrankiai -> Scenarijų redaktorius viršutiniame meniu ir naršyklė pereis prie naujos kortelės.
Redaktoriaus sąsaja labai intuityvi. Jei esate susipažinę su bet kuria kodas redaktorius, turėtumėte lengvai pervadinti savo failą arba sukurti naują (Failas -> Naujas -> Scenarijaus failas).
"Google Apps" scenarijus yra ne kas kita, kaip JavaScript pusbrolis. Jei žinote JS, jūs taip pat galite įgyti GS įgūdžių!
Pirmasis žingsnis - surinkti visas galimai reikalingas nuorodas į vieną vietą ir suteikti joms prasmingus pavadinimus. Pradėsime nuo globaliųjų kintamųjų, pašalindami numatytuosius myFunction deklaraciją ir įvesti ką nors naudingesnio į Code.gs failas.
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet()
// nuorodos į lapus
var report = spreadsheet.getSheets()[0]
var config = spreadsheet.getSheets()[1]
Aukščiau pateiktas kodas yra gana aiškus, bet kad būtų visiškai aišku:
SpreadsheetApp klasė yra prieinama pasauliniame kontekste,
getSheets metodas, iškviestas į Skaičiuoklės pavyzdys grąžina šios skaičiuoklės lapų masyvą; mūsų pavyzdyje jis grąžina [Ataskaitų generatorius lapas, Konfigūracija sheet] masyvas.
Dabar galime žengti toliau ir paimti naudingus duomenis iš savo skaičiuoklės.
// redaguojama sritis (langeliai su išskleidžiamosiomis eilutėmis)
var dropdowns = report.getRange('C4:C13')
// ląstelė su antrašte (funkcijos pavadinimas)
var featureName = report.getRange('B2').getValue()
// parinktys iš lapo 'Config
// atkreipkite dėmesį, kad getRange() metodui galite perduoti vieną ląstelę
// ir parinkčių keitimas neturi įtakos scenarijaus funkcionalumui
var values = {
unacceptable: config.getRange('A2').getValue(),
improvements_needed: config.getRange('A3').getValue(),
perfect: config.getRange('A4').getValue(),
tuščia: ''
};
Belieka tik apibrėžti funkcijas, kurias norime priskirti mygtukams.
// mygtukų funkcijos
funkcija allPerfect() {
dropdowns.setValue(values.perfect)
}
funkcija allNeedImprovements() {
dropdowns.setValue(values.improvements_need)
}
funkcija allUnacceptable() {
dropdowns.setValue(values.unacceptable)
}
funkcija clear() {
dropdowns.setValue(values.empty)
}
funkcija copy() {
var copy = spreadsheet.copy(featureName + ' - ataskaita')
// Dabar nukopijavome du lapus su tomis pačiomis reikšmėmis
// bet su pakeistais pavadinimais (su priesaga "copy"),
// šiuo atveju turime jiems suteikti originalius pavadinimus
// pervadinti ataskaitos lapą
copy.getSheets()[0].setName(report.getName())
// pervadinti konfigūracijos lapą
copy.getSheets()[1].setName(config.getName())
}
Svetainė kopijuoti() metodas automatiškai sukurs naują skaičiuoklę, pavadintą (mūsų pavyzdyje) “Vartotojo prisijungimo forma - ataskaita”, šalia dabartinio.
Priskirkite mūsų metodus prieš tai sukurtiems mygtukams. Pasirinkite Skripto priskyrimas paspaudus mygtuką dešiniuoju pelės klavišu...
...ir įveskite metodo pavadinimą, čia jis yra viskasPerfect
Jums nereikia uždaryti generatoriaus. Naudodamiesi masiniais veiksmais paruoškite formą naujai ataskaitai, pakeiskite funkcijos pavadinimą ir išsaugokite kitą kopiją!
Galimybės "Google Apps" scenarijus yra toks platus, kad jiems visiems aptarti prireiktų visos serijos straipsnių. Jei jus domina biuro darbo optimizavimas, kviečiame susipažinti su oficialūs dokumentai ir paverskite savo patalynę dar protingesne!
Yra keletas tikrai naudingų gudrybių, pvz. šis iš xfanatical.com apie "Google" skaičiuoklės eksportavimą į PDF.
Šiame straipsnyje aprašytas pavyzdys yra čia. Tikiuosi, kad jums patiks. Smagiai praleiskite laiką!