Still not sure I completely understand, I'm afraid. Note that
<data>
/file = "P_IAT_rawdata.iqdat"
/separatefiles = true
/ columns = [date, time, group, subject, blockcode, blocknum, trialcode, trialnum,
response, correct, latency, stimulusnumber, stimulusitem,
expressions.da, expressions.db, expressions.d, expressions.latdiffa, expressions.latdiffb, expressions.latdiff]
</data>
means that a separate raw data file will be written for every run. But
<summarydata >
/file = "P_IAT_summary.iqdat"
/columns = [script.startdate, script.starttime, script.subjectid, script.groupid,
expressions.da, expressions.db, expressions.d, expressions.latdiffa, expressions.latdiffb, expressions.latdiff]
</summarydata>
has no /separatefiles attribute specified, i.e., if "P_IAT_summary.iqdat" already exists, data from additional runs will be added to that file. You can see that by running something minimal like
<data>
/ columns = [date time subject trialcode latency response]
/ file = "raw.iqdat"
/ separatefiles = true
</data>
<summarydata>
/ columns = [script.subjectid trial.mytrial.meanlatency]
/ file = "summary.iqdat"
</summarydata>
<block myblock>
/ trials = [1-4=mytrial]
</block>
<trial mytrial>
/ validresponse = (57)
</trial>
a couple of times with different subjec ids.
Otherwise, no, I have no idea why certain data sets might be missing from the summary file.