Study/Recall test: errors in script

MegCG mcrawford at islander.tamucc.edu
Fri Sep 28 21:37:27 UTC 2012


This is a simple recall memory test, but because of the requirements for 
data recording, I'm running into a snag with the script.

My test begins with Study Block that has  2 nested lists (Water & Land ) 
within a StudyList. Half the words from each nested list are presented in 
random order. Water list has 12 words, Land list has 12 different words 
(total 24 words to pool from). The 12 random words that are presented are 
marked in the following Test Block on the single list, RecallList. 
RecallList is created with 4 attributes ("Word", "Sampled", 
"CorrectAnswer", "Type"; all values set at /?/). The script that takes the 
words presented in the Study session and moves them to the RecallList is as 
follows:
-----------------------------
'Mark the selected level as 1=sampled and z=correct in the StudyList
Dim RowIdentifier As Integer

RowIdentifier = RowIdentifier + 1

RecallList.SetAttrib RowIdentifier, "Word", c.GetAttrib ("Word")
RecallList.SetAttrib RowIdentifier, "Type", c.GetAttrib ("Type")
RecallList.SetAttrib RowIdentifier, "Sampled", "1"
RecallList.SetAttrib RowIdentifier, "CorrectAnswer", "z"
-----------------------------

Debug.Print let's me know that the test is successful up to this point.

The problem I am having is in the next line of script in the Test Block. I 
want the program to go to the RecallList, find the words, then one at a 
time, go back through the StudyList, find the matching "Word" and change 
the "Sampled" attribute from 0 to 1. This is important because the 
"Sampled" setting (0,1) is eventually how I plan to have the non-presented 
words added to the RecallList. By doing this my data read out is remarkably 
simplified.

HOWEVER, I am snagged at the script that says to go back to StudyList and 
find the corresponding word to the one from RecallList. The script looks 
like this:
-----------------------------
'Add additional levels to RecallList as distractors
Dim i As Integer
Dim Shown As Integer
Dim FindTarget As Integer
Dim TotalNumSampled As Integer

TotalNumSampled = 3
Shown = 0

For i = 1 To TotalNumSampled
    'Choose levels until get a Shown level
    Do
        Shown = Shown + 1
    Loop Until RecallList.GetAttrib(Shown, "Type") = "Water" 
    TargetWord = RecallList.GetAttrib(Shown, "Word")

    Do
        FindTarget = FindTarget + 1
    Loop Until Water.GetAttrib(FindTarget, "Word") = TargetWord
    Water.SetAttrib FindTarget, "Sampled", "1"
    
Next i
-----------------------------
(the next set is for "Land" Type) This script worked perfectly last week on 
several trials. Now E-Prime keeps coming up with
*"Run-time Error (Line 330) -999: Factor Error:
Level specified is not valid"*
Line 330 = Loop Until Water.GetAttrib(FindTarget, "Word") = TargetWord

Does anyone have an idea why this is happening?

-- 
You received this message because you are subscribed to the Google Groups "E-Prime" group.
To post to this group, send email to e-prime at googlegroups.com.
To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msg/e-prime/-/vd5-XROjrnAJ.
For more options, visit https://groups.google.com/groups/opt_out.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.linguistlist.org/pipermail/eprime/attachments/20120928/2ee618ec/attachment.htm>


More information about the Eprime mailing list