与记录循环
问题描述:
为什么我无法使用此脚本向我显示特定“Klasse”中的记录列表?与记录循环
我不断收到此错误:
"error "Can not get Fornavn of {{Klasse:\"1X\", Fornavn:\"Anders\", Efternavn:\"Andersen\", ElevID:\"12345\"}, etc.." (I translated the error from Danish to English)
set varElevnavnIDliste to {{Klasse:"1X", Fornavn:"Anders", Efternavn:"Andersen", ElevID:"12345"}, {Klasse:"1X", Fornavn:"Julius", Efternavn:"Nielsen", ElevID:"23442"}, {Klasse:"1X", Fornavn:"Allan", Efternavn:"Mortensen", ElevID:"32193"}, {Klasse:"1X", Fornavn:"Lukas", Efternavn:"Olsen", ElevID:"87263"}, {Klasse:"1X", Fornavn:"Victor", Efternavn:"Nielsen", ElevID:"34523"}, {Klasse:"3Y", Fornavn:"Kenneth", Efternavn:"Oddersen", ElevID:"23442"}, {Klasse:"3Y", Fornavn:"Thomas", Efternavn:"Johansen", ElevID:"23452"}, {Klasse:"3Y", Fornavn:"Johan", Efternavn:"Thomasen", ElevID:"76590"}, {Klasse:"3Y", Fornavn:"Charlotte", Efternavn:"Frandsen", ElevID:"78569"}, {Klasse:"3Y", Fornavn:"Mathilde", Efternavn:"Charlottesen", ElevID:"64569"}, {Klasse:"STAFF", Fornavn:"Poul", Efternavn:"Killegaard", ElevID:"45328"}, {Klasse:"STAFF", Fornavn:"Frederik", Efternavn:"Augustesen", ElevID:"75639"}, {Klasse:"STAFF", Fornavn:"Cornelius", Efternavn:"Bugesen", ElevID:"75630"}, {Klasse:"STAFF", Fornavn:"Rikke", Efternavn:"Hansen", ElevID:"74632"}, {Klasse:"STAFF", Fornavn:"Katja", Efternavn:"Steffensen", ElevID:"65939"}}
set varResult to {}
repeat with iPar2 from 1 to (number of items in varElevnavnIDliste)
if item 1 of varElevnavnIDliste contains {Klasse:"1X"} then
set end of varResult to Fornavn of varElevnavnIDliste
end if
end repeat
choose from list varResult
答
两个错误:
- 迭代元素
item iPar2 of varElevnavnIDliste
,不item 1 of ...
- 到请求的元素的引用
Fornavn of item iPar2 of varElevnavnIDliste
,而不是Fornavn of varElevnavnIDliste
。
set varResult to {}
repeat with iPar2 from 1 to (number of items in varElevnavnIDliste)
if item iPar2 of varElevnavnIDliste contains {Klasse:"1X"} then
set end of varResult to Fornavn of item iPar2 of varElevnavnIDliste
end if
end repeat
这是相同
set varResult to {}
repeat with iPar2 from 1 to (number of items in varElevnavnIDliste)
set theItem to item iPar2 of varElevnavnIDliste
if theItem contains {Klasse:"1X"} then
set end of varResult to Fornavn of theItem
end if
end repeat
或与repeat with ... in
语法仍然干净。
set varResult to {}
repeat with iPar2 in varElevnavnIDliste
if iPar2 contains {Klasse:"1X"} then
set end of varResult to Fornavn of iPar2
end if
end repeat
你摇滚!谢啦! 我想我有点理解......也许:-D – Polle