Respons terhadap formulir secara keseluruhan. Form
dapat digunakan dengan tiga cara: untuk mengakses jawaban yang dikirimkan oleh responden (lihat get
), untuk mengirimkan respons secara terprogram ke formulir (lihat with
dan submit()
), dan untuk membuat URL formulir yang mengisi otomatis kolom menggunakan jawaban yang diberikan. Form
dapat dibuat atau diakses dari Form
.
// Open a form by ID and log the responses to each question. const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); const formResponses = form.getResponses(); for (let i = 0; i < formResponses.length; i++) { const formResponse = formResponses[i]; const itemResponses = formResponse.getItemResponses(); for (let j = 0; j < itemResponses.length; j++) { const itemResponse = itemResponses[j]; Logger.log( 'Response #%s to the question "%s" was "%s"', (i + 1).toString(), itemResponse.getItem().getTitle(), itemResponse.getResponse(), ); } }
Metode
Metode | Jenis hasil yang ditampilkan | Deskripsi singkat |
---|---|---|
get | String | Menghasilkan URL yang dapat digunakan untuk mengedit respons yang telah dikirimkan. |
get | Item | Mendapatkan semua respons item yang terdapat dalam respons formulir, dalam urutan yang sama seperti item yang muncul dalam formulir. |
get | Item | Mendapatkan respons item yang terdapat dalam respons formulir untuk item tertentu. |
get | String | Mendapatkan ID respons formulir. |
get | Item | Mendapatkan semua respons item yang terdapat dalam respons formulir, dalam urutan yang sama seperti item yang muncul dalam formulir. |
get | String | Mendapatkan alamat email orang yang mengirimkan respons, jika setelan Form.setCollectEmail(collect) diaktifkan. |
get | Item | Mendapatkan respons item yang terdapat dalam respons formulir ini untuk item tertentu. |
get | Date | Mendapatkan stempel waktu untuk pengiriman respons formulir. |
submit() | Form | Mengirim respons. |
to | String | Menghasilkan URL untuk formulir yang jawabannya diisi otomatis berdasarkan jawaban dalam respons formulir ini. |
with | Form | Menambahkan nilai respons item yang diberikan ke respons formulir. |
with | Form | Menambahkan respons item yang diberikan ke respons formulir. |
Dokumentasi mendetail
get Edit Response Url()
Menghasilkan URL yang dapat digunakan untuk mengedit respons yang telah dikirimkan. Jika setelan Form.setAllowResponseEdits(enabled)
dinonaktifkan, link akan mengarah ke halaman yang menjelaskan bahwa pengeditan respons formulir dinonaktifkan. Siapa pun yang mengunjungi link dapat mengedit
respons, meskipun mereka memerlukan akun dengan akses ke formulir jika setelan
diaktifkan. Jika setelan Form.setRequireLogin(requireLogin)Form.setCollectEmail(collect)
diaktifkan, formulir akan mencatat alamat email pengguna yang mengedit respons,
bukan alamat email responden asli.
Untuk respons formulir yang telah dibuat oleh skrip, tetapi belum dikirim, metode ini akan menampilkan
null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first form response. const formResponse = form.getResponses()[0]; // Gets the edit URL for the first form response and logs it to the console. const editUrl = formResponse.getEditResponseUrl(); console.log(editUrl);
Pulang pergi
String
— URL untuk mengubah respons yang dikirim.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Gradable Item Responses()
Mendapatkan semua respons item yang terdapat dalam respons formulir, dalam urutan yang sama seperti item yang muncul
dalam formulir. Metode ini berfungsi mirip dengan get
, tetapi untuk memungkinkan penilaian
jawaban yang tidak ada, metode ini tetap menampilkan Item
jika Item
yang sesuai
dapat dinilai (yaitu memiliki nilai poin), meskipun tidak ada respons yang sebenarnya. Namun, jika
Item
tidak dapat dinilai, metode ini akan mengecualikan item tersebut dari array yang ditampilkan.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Gets the item responses contained in each form response. for (const formResponse of formResponses) { const gradableItemsResponses = formResponse.getGradableItemResponses(); // Logs the title and score for each item response to the console. for (const gradableItemsResponse of gradableItemsResponses) { console.log(`${gradableItemsResponse.getItem().getTitle()} score ${gradableItemsResponse.getScore()}`); } }
Pulang pergi
Item
— Array respons untuk setiap item pertanyaan dalam formulir yang dapat menerima skor dari responden.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Gradable Response For Item(item)
Mendapatkan respons item yang terdapat dalam respons formulir untuk item tertentu. Metode ini berfungsi
serupa dengan get
, tetapi untuk memungkinkan penilaian jawaban yang tidak ada, metode ini masih
menampilkan Item
jika Item
yang sesuai dapat dinilai (yaitu memiliki nilai
titik), meskipun tidak ada respons yang sebenarnya. Namun, jika Item
tidak dapat dinilai,
metode ini akan menampilkan null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Gets the item responses contained in a form response. for (const formResponse of formResponses) { const formItemResponses = formResponse.getGradableItemResponses(); // Logs the title and score for responses to the first item of the form. const itemResponse = formResponse.getGradableResponseForItem( formItemResponses[0].getItem(), ); console.log( `${itemResponse.getItem().getTitle()} score ${itemResponse.getScore()}`, ); }
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
item | Item |
Pulang pergi
Item
— Respons untuk item tertentu, atau null
jika tidak ada dan item tidak dinilai.
get Id()
Mendapatkan ID respons formulir. Metode ini menampilkan null
jika respons formulir belum
dikirimkan.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the form responses and logs the ID for each form response to // the console. for (const formResponse of formResponses) { console.log(`Response ID: ${formResponse.getId()}`); }
Pulang pergi
String
— ID respons formulir, atau null
jika respons formulir belum
dikirimkan.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Item Responses()
Mendapatkan semua respons item yang terdapat dalam respons formulir, dalam urutan yang sama seperti item yang muncul
dalam formulir. Jika respons formulir tidak berisi respons untuk Text
,
Date
, Time
, atau Paragraph
tertentu, Item
yang ditampilkan untuk item tersebut akan memiliki string kosong sebagai respons. Jika respons formulir menghilangkan respons untuk jenis item lainnya, metode ini akan mengecualikan item tersebut dari array yang ditampilkan.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the responses to the form. const formResponses = form.getResponses(); // Iterates over the responses. for (const formResponse of formResponses) { // Gets the item responses from each form response. const itemResponses = formResponse.getItemResponses(); // Iterates over the item responses. for (const itemResponse of itemResponses) { // Logs the items' questions and responses to the console. console.log( `Response to the question '${itemResponse.getItem().getTitle()}' was '${itemResponse.getResponse()}'`); } }
Pulang pergi
Item
— Array respons untuk setiap item pertanyaan dalam formulir yang jawabannya diberikan oleh responden.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Respondent Email()
Mendapatkan alamat email orang yang mengirimkan respons, jika setelan Form.setCollectEmail(collect)
diaktifkan.
Untuk respons formulir yang telah dibuat oleh skrip, tetapi belum dikirim, metode ini akan menampilkan
null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs each respondent's email to the console. // To collect respondent emails, ensure that Form.setCollectEmail(collect) is // set to true. for (const formResponse of formResponses) { console.log(`Respondent Email: ${formResponse.getRespondentEmail()}`); }
Pulang pergi
String
— Alamat email orang yang mengirimkan respons ini, jika tersedia, atau null
jika skrip membuat respons ini tetapi belum mengirimkannya.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Response For Item(item)
Mendapatkan respons item yang terdapat dalam respons formulir ini untuk item tertentu.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first item on the form. const item = form.getItems()[0]; // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs each response to the first item to the // console. for (const formResponse of formResponses) { const itemResponse = formResponse.getResponseForItem(item); console.log(itemResponse.getResponse()); }
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
item | Item |
Pulang pergi
Item
— Respons untuk item tertentu, atau null
jika tidak ada.
get Timestamp()
Mendapatkan stempel waktu untuk pengiriman respons formulir.
Untuk respons formulir yang telah dibuat oleh skrip, tetapi belum dikirim, metode ini akan menampilkan
null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs the timestamp of each response to the // console. for (const formResponse of formResponses) { console.log(`Timestamp: ${formResponse.getTimestamp()}`); }
Pulang pergi
Date
— Stempel waktu saat respons ini dikirim, atau null
jika skrip
membuat respons ini tetapi belum mengirimkannya.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
submit()
Mengirim respons. Menampilkan pengecualian pembuatan skrip jika respons telah dikirim.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Creates an empty response for the form. const formResponse = form.createResponse(); // Submits an empty response. formResponse.submit();
Pulang pergi
Form
— Respons yang baru dibuat dan disimpan ke penyimpanan respons formulir.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
to Prefilled Url()
Menghasilkan URL untuk formulir yang jawabannya diisi otomatis berdasarkan jawaban dalam respons formulir ini.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first form response. const formResponse = form.getResponses()[0]; // Generates and logs the URL of a pre-filled form response based on the answers // of the first form response. const prefilledUrl = formResponse.toPrefilledUrl(); console.log(prefilledUrl);
Pulang pergi
String
— URL untuk formulir dengan jawaban yang sudah diisi sebelumnya.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
with Item Grade(gradedResponse)
Menambahkan nilai respons item yang diberikan ke respons formulir. Metode ini hanya berlaku untuk respons formulir yang telah dikirimkan, dan hanya memengaruhi nilai yang disimpan setelah dikirimkan. Metode ini juga hanya memperbarui nilai respons item; metode ini tidak memengaruhi respons sebenarnya (karena respons telah dikirimkan). Jika metode ini dipanggil beberapa kali untuk item yang sama, hanya nilai terakhir yang dipertahankan. Jika ItemResponse tidak berisi nilai, metode ini akan menghapus nilai untuk item.
// Programmatically award partial credit for a given response const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); const formResponses = form.getResponses(); const formItems = form.getItems(); for (const formResponse of formResponses) { for (const item of formItems) { const points = item.asMultipleChoiceItem().getPoints(); const itemResponse = formResponse.getGradableResponseForItem(item); Logger.log('Award half credit for answers containing the word "Kennedy"'); const answer = itemResponse.getResponse(); if (answer?.includes('Kennedy')) { itemResponse.setScore(points / 2); formResponse.withItemGrade(itemResponse); } } } form.submitGrades(formResponses);
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
graded | Item |
Pulang pergi
Form
— Form
ini, untuk perantaian
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
with Item Response(response)
Menambahkan respons item yang diberikan ke respons formulir. Metode ini hanya berlaku untuk respons formulir yang telah dibuat oleh skrip, tetapi belum dikirimkan; metode ini tidak dapat memengaruhi respons yang disimpan. Jika metode ini dipanggil beberapa kali untuk item yang sama, hanya respons item terakhir yang akan dipertahankan.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Creates a response for the form. const formResponse = form.createResponse(); // Appends a checkbox item to the form. const item = form.addCheckboxItem(); // Sets the title of the item to 'Which items are ice cream flavors?' item.setTitle('Which items are ice cream flavors?'); // Sets choices for the item. item.setChoices([ item.createChoice('Vanilla'), item.createChoice('Strawberry'), item.createChoice('Brick'), ]); // Creates a response for the item. const response = item.createResponse(['Vanilla', 'Strawberry']); // Adds the item response to the form response. formResponse.withItemResponse(response); // Submits the form response. formResponse.submit();
Parameter
Nama | Jenis | Deskripsi |
---|---|---|
response | Item |
Pulang pergi
Form
— Form
ini, untuk perantaian.
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms