Class FormResponse

양식 응답

양식 전체에 대한 응답입니다. FormResponse은 응답자가 제출한 답변에 액세스하고 (getItemResponses() 참고), 프로그래매틱 방식으로 양식에 응답을 제출하고 (withItemResponse(response)submit() 참고), 제공된 답변을 사용하여 필드를 미리 채우는 양식의 URL을 생성하는 세 가지 방법으로 사용할 수 있습니다. FormResponseForm에서 만들거나 액세스할 수 있습니다.

// Open a form by ID and log the responses to each question.
var form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');
var formResponses = form.getResponses();
for (var i = 0; i < formResponses.length; i++) {
  var formResponse = formResponses[i];
  var itemResponses = formResponse.getItemResponses();
  for (var j = 0; j < itemResponses.length; j++) {
    var itemResponse = itemResponses[j];
    Logger.log('Response #%s to the question "%s" was "%s"',
        (i + 1).toString(),
        itemResponse.getItem().getTitle(),
        itemResponse.getResponse());
  }
}

메서드

메서드반환 유형간략한 설명
getEditResponseUrl()String이미 제출된 응답을 수정하는 데 사용할 수 있는 URL을 생성합니다.
getGradableItemResponses()ItemResponse[]항목이 양식에 표시되는 것과 동일한 순서로 양식 응답에 포함된 모든 항목 응답을 가져옵니다.
getGradableResponseForItem(item)ItemResponse지정된 항목의 양식 응답에 포함된 항목 응답을 가져옵니다.
getId()String양식 응답의 ID를 가져옵니다.
getItemResponses()ItemResponse[]항목이 양식에 표시되는 것과 동일한 순서로 양식 응답에 포함된 모든 항목 응답을 가져옵니다.
getRespondentEmail()StringForm.setCollectEmail(collect) 설정이 사용 설정된 경우 응답을 제출한 사람의 이메일 주소를 가져옵니다.
getResponseForItem(item)ItemResponse지정된 항목의 이 양식 응답에 포함된 항목 응답을 가져옵니다.
getTimestamp()Date양식 응답 제출의 타임스탬프를 가져옵니다.
submit()FormResponse응답을 제출합니다.
toPrefilledUrl()String이 양식 응답의 답변을 바탕으로 답변이 미리 채워진 양식의 URL을 생성합니다.
withItemGrade(gradedResponse)FormResponse지정된 항목 응답을 양식 응답에 추가합니다.
withItemResponse(response)FormResponse양식 응답에 지정된 항목 응답을 추가합니다.

자세한 문서

getEditResponseUrl()

이미 제출된 응답을 수정하는 데 사용할 수 있는 URL을 생성합니다. Form.setAllowResponseEdits(enabled) 설정이 사용 중지되면 링크가 양식 응답 수정의 사용 중지를 설명하는 페이지로 연결됩니다. Form.setRequireLogin(requireLogin) 설정이 사용 설정된 경우 링크를 방문하는 사용자는 누구나 응답을 수정할 수 있지만 양식에 액세스할 수 있는 계정이 필요합니다. Form.setCollectEmail(collect) 설정을 사용 설정하면 양식에 원래 응답자의 이메일 주소 대신 응답을 수정한 사용자의 이메일 주소가 기록됩니다.

스크립트가 만들었지만 아직 제출하지 않은 양식 응답의 경우 이 메서드는 null를 반환합니다.

Return

String: 제출된 응답을 변경하는 URL

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getGradableItemResponses()

항목이 양식에 표시되는 것과 동일한 순서로 양식 응답에 포함된 모든 항목 응답을 가져옵니다. 이 메서드는 getItemResponses()와 유사하게 작동하지만, 누락된 답변을 채점할 수 있도록 실제 응답이 없더라도 해당하는 Item를 채점할 수 있다면 (즉, 점수 값) ItemResponse를 반환합니다. 그러나 Item를 채점할 수 없는 경우 이 메서드는 반환된 배열에서 해당 항목을 제외합니다.

Return

ItemResponse[]: 응답자가 점수를 받을 수 있는 양식 내의 모든 질문 항목에 대한 응답의 배열입니다.

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getGradableResponseForItem(item)

지정된 항목의 양식 응답에 포함된 항목 응답을 가져옵니다. 이 메서드는 getResponseForItem(item)와 유사하게 작동하지만 누락된 답변을 채점할 수 있도록 실제 응답이 없더라도 해당하는 Item를 채점할 수 있다면 (즉, 포인트 값 포함) ItemResponse를 반환합니다. 그러나 Item를 채점할 수 없는 경우 이 메서드는 null를 반환합니다.

매개변수

이름유형설명
itemItem

Return

ItemResponse: 지정된 항목의 응답 또는 null(항목이 존재하지 않고 채점되지 않은 경우)


getId()

양식 응답의 ID를 가져옵니다. 양식 응답이 제출되지 않은 경우 이 메서드는 null를 반환합니다.

Return

String: 양식 응답의 ID 또는 양식 응답이 제출되지 않은 경우 null

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getItemResponses()

항목이 양식에 표시되는 것과 동일한 순서로 양식 응답에 포함된 모든 항목 응답을 가져옵니다. 지정된 TextItem, DateItem, TimeItem 또는 ParagraphTextItem에 대한 응답이 양식 응답에 포함되어 있지 않으면 이 항목에 대해 반환된 ItemResponse는 응답으로 빈 문자열을 가집니다. 양식 응답에서 다른 항목 유형에 대한 응답을 생략하는 경우 이 메서드는 반환된 배열에서 해당 항목을 제외합니다.

Return

ItemResponse[]: 응답자가 답변을 제공한 양식 내의 모든 질문 항목에 대한 응답의 배열

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getRespondentEmail()

Form.setCollectEmail(collect) 설정이 사용 설정된 경우 응답을 제출한 사람의 이메일 주소를 가져옵니다.

스크립트가 만들었지만 아직 제출하지 않은 양식 응답의 경우 이 메서드는 null를 반환합니다.

Return

String: 이 응답을 제출한 사용자의 이메일 주소(해당하는 경우) 또는 null가 이 응답을 작성했지만 아직 제출하지 않은 경우 이메일 주소입니다.

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getResponseForItem(item)

지정된 항목의 이 양식 응답에 포함된 항목 응답을 가져옵니다.

매개변수

이름유형설명
itemItem

Return

ItemResponse: 지정된 항목의 응답 또는 null가 없는 경우 응답


getTimestamp()

양식 응답 제출의 타임스탬프를 가져옵니다.

스크립트가 만들었지만 아직 제출하지 않은 양식 응답의 경우 이 메서드는 null를 반환합니다.

Return

Date: 이 응답이 제출된 타임스탬프 또는 스크립트에서 이 응답을 생성했지만 아직 제출하지 않은 경우 null입니다.

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

submit()

응답을 제출합니다. 응답이 이미 제출된 경우 스크립팅 예외가 발생합니다.

Return

FormResponse — 양식의 응답 저장소에 새로 생성된 응답입니다.

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

toPrefilledUrl()

이 양식 응답의 답변을 바탕으로 답변이 미리 채워진 양식의 URL을 생성합니다.

Return

String: 미리 채워진 답변이 있는 양식의 URL

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

withItemGrade(gradedResponse)

지정된 항목 응답을 양식 응답에 추가합니다. 이 방법은 이미 제출된 양식 응답에만 적용되며 저장된 성적에만 영향을 미칩니다. 이 메서드는 항목 응답의 성적만 업데이트하며, 응답이 이미 제출되었으므로 실제 응답에 영향을 주지 않습니다. 동일한 항목에 이 메서드를 여러 번 호출하면 마지막 성적만 유지됩니다. ItemResponse에 성적이 없는 경우 이 메서드는 항목의 성적을 삭제합니다.

// Programmatically award partial credit for a given response
var form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');
var formResponses = form.getResponses();
var formItems = form.getItems();
for (var i = 0; i < formResponses.length; i++) {
  var formResponse = formResponses[i];
  for (var j = 0; j < formItems.length; j++) {
    var item = formItems[j];
    var points = item.asMultipleChoiceItem().getPoints();
    var itemResponse = formResponse.getGradableResponseForItem(item);
    Logger.log('Award half credit for answers containing the word "Kennedy"');
    var answer = itemResponse.getResponse();
    if (answer != null && answer.includes('Kennedy')) {
      itemResponse.setScore(points / 2);
      formResponse.withItemGrade(itemResponse);
    }
  }
}
form.submitGrades(formResponses);

매개변수

이름유형설명
gradedResponseItemResponse

Return

FormResponse: 이 FormResponse, 체이닝용

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

withItemResponse(response)

양식 응답에 지정된 항목 응답을 추가합니다. 이 메서드는 스크립트가 만들었지만 아직 제출하지 않은 양식 응답에만 적용됩니다. 저장된 응답에 영향을 주지 않습니다. 동일한 항목에 이 메서드가 여러 번 호출되면 마지막 항목 응답만 유지됩니다.

매개변수

이름유형설명
responseItemResponse

Return

FormResponse: 이 FormResponse, 체이닝용

승인

이 방법을 사용하는 스크립트에는 다음 범위 중 하나 이상을 사용하여 승인해야 합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms