Here is the link about the GAS quotas:
https://developers.google.com/apps-script/guides/services/quotas#current_quotas
How can I check if I am getting close to certain quotas. For instance, how can I check, how many UrlFetchApp calls I have left for that day. Or how much Script time do I still left for that day.
I need to use this data to make decisions whether to run today or run tomorrow.
I need to check and verify quotas programatically only. Can anyone help me here?
its not currently possible.
you need to tally those stats manually, maybe storing on script properties.
Related
I'm confused with one moment regarding GCP. So, i have different AppScript projects on different google accounts and i want to link them to single GCP project (on organization level) to be able to see logs in single place (followed this description). Everything work fine, but i don't understand now if it will affect quota somehow. From my understanding quota described here is per user, but i just worry that i missed something and because of the linked GCP project quota will be splitted between all appscript project.
I would appreciate any help and advice related to this question)
I don't think there's any limit to read/write operations for sheets using apps script, there's nothing about it in quotas and it doesn't make much sense.
There are quotas if you use Sheets Api via http
https://developers.google.com/sheets/api/limits
but that's entirely other story, and you only need this to access sheets from other environments(nodejs,php,python etc)
If you're using apps script I believe you're only limited by script runtime and total trigger runtime, which are counted per-script.
please consider that I am a total newbie with these things.
At work, I have an everyday plan of two numbers - money and people.
I know these numbers for a month ahead.
I have my own (another) spreadsheet with data, where I enter numbers during the day.
What I want to achieve is that the data with plans in one spreadsheet will appear the next day at a specific time, let's say 8 AM in another spreadsheet with my data in specific cells.
I know I will have to use scripts, but I don't know how they should look and how to achieve this result.
Thank you kindly in for any possible solutions.
I have taken the tabular approach to build timers that I use for cooking different items. I make a sheet/tab for each cooking process for example rice is shown below.
When the app runs it opens up like this:
This screen allows the user to enable the audio.
This screen allows the operator to choose a timing process.
This screen runs the timer process automatically and allows to me to add additional timers if I wish. The browswer client has to remain active during this time since this app is running on the clientside.
But your script will be running on the server and will probably have no user interace at all. It will just create the spreadsheets and sheets and make the data transfer total autonomously when it receives the timebased trigger. So you won't need to create any html dialogs for your script. It will just run on the server performing the operations that you specify. Of course, it's easier to build something like this if you already know how to program them. So if you have no programming you may find it necessary to hire someone to assist you in the development.
I’d like to push some data from MySQL into Google Sheets. Once I’ve edited my data in Google Sheets, I’d like to push my edited data back into MySQL. Ideally, I’d even like to schedule it to update it every hour, so my data is always live and matches what's in my MySQL.
I’ve looked into Google Sheets Script and it seems that it enables you to type in a SQL query into a cell in Google Sheets and retrieve your queried data. However, the main issue, even though I find a proper way to export my data to sql, is that I have hundreds of tabs across multiple spreadsheets and I’d like to find a way to avoid to manually repeat this job for every tab.
Please have in mind that it is for someone on my team who can’t figure out querying with SQL, has a hard time navigating MySQL, and that I don’t want to train in SQL. I would just like this person to edit Google Sheets and these edits to be reflected back in MySQL, without this person ever having to go into my SQL database.
I think you can also use Google Apps Script to push back the data in mySQL. However, I don't know how scalable this solution would be.
Some tools exist to export data from SQL to Google sheets, like Zapier and add-ons such as Kloud and Blockspring. The thing with Blockspring is that it's targeted to people that are familiar with SQL queries. And none of those solutions allow you to push the edit data back to your database (at least, that I know of... would be very interested if it is otherwise).
So an option would be to use Actiondesk to sync your SQL database with your Google Sheets. You can schedule the synchronisation every hour (even every ten minutes actually), and it would be easy to add new sheets/tab anytime you need to (it's just a matter of few clicks).
Hope this helps!
Disclaimer: I am a back-end engineer at Actiondesk and personally implemented the Googlesheets integration, so I might be kind of biased (but at the same time, I might be the best person to answer your wildest questions on that regard so feel free to shoot them)!
It's possible to connect to MySQL with Apps Script, but you need to disable your firewall or whitelist all of Google's IP addresses (which are subject to change). As you mentioned you'll also need to set up the script for every Sheet or release the script as an add-on. You are also likely to run into difficulty writing back to the database (e.g. handling date formats).
SeekWell lets you automatically send data from SQL to Sheets and can also sync data from Sheets back to a database. It's built specifically to handle this use case, so it will get you up and running faster, but it's a commercial / paid product.
Disclaimer: I built this.
I have implemented a time booking system based on spreadsheets which the users fill out and then are consolidated into one central (and big) spreadsheet.
After having had a few performance issues the whole application now runs perfectly since several months. However, I will soon run into the size limitation of spreadsheets (400k cells).
In the consolidated spreadsheet I basically do not need more data than the current month. However for statistical purposes I would appreciate if I could make the data easily accessible for the domains users.
Basically the BigQuery Service would be perfect but I did not find an API to write data to it from a spreadsheet. I hesitate to use the Google provided MySQL database for cost reasons.
Are there any other ideas around?
There's a built-in Google BigQuery API for Apps Scripts, you just have to enable it manually under Resources > Use Google APIs. There's also Fusion Tables, that does not have a built-in API but is somewhat simple to use via UrlFetch.
Anyway, if it's statistical purposes, why don't you just "compile" the data in another spreadsheet? e.g. month - amount of entries - total prices - avg etc - etc...
I am exploring the option of using Google Sites for our new intranet. We need to be able to schedule pages when they are created to automatically be deleted on a particular day.
I know this functionality is not native, and I would like to know whether or not it's possible to write a Google Script for a scheduling gadget in the editor view (as opposed to the live site).
And advice is very welcome. Thanks!
Jessica
If I was implementing this, I'd write a standalone script with two separate trigger functions, both of which run daily.
Script 1 would inventory the pages in the site. When new pages are
identified, their creation and projected deletion dates would be
recorded.
Script 2 would review the list of known pages, and delete any that
have reached their expiry date.
The reason for splitting the work up is two-fold: it simplifies the problem a bit to think about it this way, and it reduces the chance of experiencing a script time-out failure.
Unless there is a native way of doing this, I would create a WatiN interface to Google sites to create and delete pages