Pomiar czasu

W skrypcie możemy spawdzić ile czasu trwała odpowiedź na pytanie i w zależności od czasu (jeżeli za krótki) przerwać wywiad. Możemy to zrobić przy pomocy nowej własności time typu Interval.

var suma = q1.time;
if suma < "1 second" then
  goquota;
end

Warunek skryptowy możemy napisać również dla samych podpytań lub zsumować czas dla wszystkich podpytań w tabeli.

var suma = interval 0;
if q1s1-6.aw then suma+= q1s1-6.time end
if suma < "5 seconds" then
  goquota;
end

Dla większej ilości pytań skrypt może wyglądać następująco.

var length = interval 0;
for 1-8 do
  length += q1-8.time;
end
if length < "1 minute 2 seconds" then
goquota;
end

Jedna istotna zmiana jest we wzorcu (template.pg). Należy samodzielnie dodać 3 linijki. Bez tego przy cofnięciu się na poprzedni ekran czas będzie liczony od początku.

<CMS:LIST src="interactions">
  <INPUT type=hidden name="interaction.%%interactions.intId%%.%%interactions.ansId%%.latency" value="%%interactions.ansLatency%%" >
</CMS:LIST>

Zmiana musi być wprowadzona w następującym miejscu: