I would like to have a specific field in a response to a Google Form trigger a task creation. I am using a Google form to record when I am paid for a tutoring session. If someone says they would like a receipt after paying me, I would like to have a task created to remind me to send that receipt.
I have seen several add-ons that automate triggers, but I have already built a template in Google Docs I want to use. I didn't see any questions here that related to this particular need.
Related
I am working on a seat booking system so that user can fill in seat preference on Google form and data would be updated on Google sheet linked to Google form. However the key is that I want to show a real time information in form of matrix (with row and column in grid like fashion to indicate which seat is booked and which is available), so that user can fill the choice correctly in the Google form before submitting the form.
I somehow feel that requirement to show the real time information in form of matrix side by side to Google form may not be possible.
It could be my technical knowledge limitation on Google form and Google sheet. Would appreciate your thoughts on this if this can be achieved.
Thanks
Publish a webapp bound to Google sheets
Embed the Google form in your webapp
Poll your sheet from web app every minute or so.
Use LockService to avoid simultaneous execution conflicts.
I am working on a project for my company, that well is kind of complicated. I am not sure if I will be able to explain it as well as I need to.
Basically, this is how it works:
A user fills out a Google Form that represents a user in our company, either new or existing
My Google Apps Script gets the last form response, triggered on form submission
That script then relays that last form response data to the custom schema fields I set up on Google Admin
Once the user is updated, I grab ALL the users in the domain and paste them into a google sheet
The spreadsheet represents our company roster. We originally just tried to maintain the data solely in a spreadsheet, but it became a mess.
To solve this, we introduced the google form, which can validate all data. Furthermore, our data is backed up to Google Admin (within custom schema). The spreadsheet is solely for display. It is bulletproof. Upon refresh, it pulls the data, and re-writes the sheet.
However...
I am noticing that after the form is submitted and the user is updated in Google Admin, and then all the users are pulled from Google Admin, the user that was updated isn't showing as updated in the spreadsheet. However, if I refresh the page, then the correct data shows up (I have another script that triggers on spreadsheet open, literally the SAME EXACT code that runs after the form submission). Why does that code return the proper data on refresh, but not when run directly after the form submission and consequent user update in Google Admin?
I really am dumbfounded and having an incredibly hard time explaining this because it does not make any sense. My boss and I both spent the entire day scratching our heads on this yesterday.
Do you guys have ANY ideas?
Is there a cached response, possibly accounting for the non-current data from Google Admin?
When I used the Admin Directory SDK API Explorer, the user modified shows as current. I just don't seem to be getting that same response when my script runs.
I am so lost. I spent 2 months developing this system. It worked in development.
Any and all suggestions are appreciated
Consider a Google Calendar scenario with various rooms that can be booked. Users will be browsing the different rooms and can create an entry in one of the free slots. The basic default properties provided by the Google Calendar are not sufficient for the business scenario but I haven't found a way to add more fields: the default new event form does seem to be customisable. Is this so?
My idea was to provide a Google Form to cover the rest of the details.
The process would look as below:
The user browses the different rooms and finds an available slot. The calendar entry is created with the basic details. The entry is added into the calendar and the details are recorded into a Google spreadsheet.
The user receives an email with another google form: the ID of the appointment would need to somehow be passed as parameter. The google form will be used to insert the "advanced details" into the spreadsheet.
An interface will be created to view the spreadsheet data in a more structured and user friendly manner.
Can something like this be done using Google Calendars, Google Forms and App Script? Any pointers where to start from? Or if not, how the process could be changed to be actually possible. The only starting points I found were Add ins which create calendar entries directly from Google forms, but this would require the user to start from a form, rather from the calendar, which I would not rather go for, not at least until I know there's no other way.
I am using the following lines of Apps Script to dynamically generate a Google Forms Quiz
form.setIsQuiz(true);
form.setTitle("New")
.setDescription('Test')
.setConfirmationMessage('Thanks for responding!')
.setAllowResponseEdits(false)
.setAcceptingResponses(true)
.setLimitOneResponsePerUser(true)
.setShuffleQuestions(true)
.setProgressBar(true)
.setCollectEmail(true)
This is creating a form and i am able to send out the quizzes to multiple people. But i also want to "Release Score >> Immediately After Submission". This is a feature in Google Quiz Form. But i am unable to find a method equivalent to the Google Forms feature of "Release Score >> Immediately After Submission".
I cannot do this manually for each form because i generate hundreds of forms distributed to different sets of people.
AFAIAA, there is no means to do this directly using a Google Apps Script method at this time.
A possible workaround is to create a minimal Google Form, make it a quiz, and configure it to 'Immediately after each submission'. Instead of creating the form within the script, merely duplicate this Form file (using your script) and proceed to build your quiz programmatically in the copy.
It is worth noting that this omission in Google Apps Script can result in a bug in the completed quiz. When a Form is created using a script and .setIsQuiz(true) method is used to to turn it into a quiz, the "Release marks" setting defaults to "Later, after manual review". In the Forms settings User Interface, this option includes the note "Turns on email collection" - This is so that when results are released manually, there is an email address to send the results to. When a Quiz is created using the steps above, email collection is not enabled. This means it is not possible to release the results manually. The workaround described above alleviates this issue.
I have a Google Apps script (written in a Google Spreadsheet) that creates a separate calendar and events for it with respect to a university course and the university calendar. The GUI is a Spreadsheet form, which triggers the execution of my script. The script gets its input from the spreadsheet form entry.
The trouble I have is that I can't easily deploy my solution to other users. Yes, they can make a copy of my sheet/form/scripts, so that they can run it on their account. Several problems, however, result from this approach:
triggers don't get copied - this is because authorization to access local info (calendars, contacts, etc.) must be given by the users before a trigger is enabled. So users have to re-connect the form submission trigger to the Apps Script for it to work (this is not user friendly).
if I change the code of my apps script, the users are using a copy and won't see the changes.
The solution seems to be Google Web Apps, but from what I've read, I can't re-use the form-based GUI of my approach. Or can I?
Google Spreadsheet Forms have the advantage that they are very easy to create, and you can already specify what fields are mandatory, etc. I don't want to have to re-write all of this in a complicated GUI front-end to my Google Apps Script (Edit: even the GUI builder tool seems way more complicated than a Spreadsheet Form), yet I want other users to be able to create the calendars and events in their own Google accounts. Is there a way to keep my form, but have it hooked to a Web App version of my code?
Try adding the form on a google sites (intranet). This way, any user having access, will be able to use the form as it is. All logic you created will remain the same.
Creating a script however will allow the user to execute the script "under their login", thus enabling access to calendars, contacts......