sanırım şöyle.
8. sınıfları atarken 
Go to Record/Request/Page              
adımından sonra new record dediğiniz için yeni kayıt atıyor. fakat 6. sınıflar için go to record için bir numara belirtmiyorsunuz.
ya yaptığınız tabloda 6. sınıfları 8. sınıfların peşine new record ile 16-17-18 olarak ekleyin yada loop öncesinde  set variable ile bir sayaç oluşturabilirsiniz. 
Set Variable [$a; Value:1] gibi
loop içerisinde de Go to Record/Request/Page [$a]
dediğinizde 1. satırdaki kayda gidecektir. istediğiniz alanları set field ile şekillendirirsiniz.
End loop dan önce de a yı Set Variable [$a; Value:$a+1] ile bir arttırmanız gerekir.
loop un başına if ile $a=15 ise exit loop demelisiniz.
şöyle özetleyeyim.
Set Variable [$a; Value:1] 
Loop 
Go to Layout [“öğrenci listesi” (öğrenci listesi)] 
Enter Find Mode [  ] 
Set Field [öğrenci listesi::Sınıfı; "6"] 
New Record/Request 
Set Field [öğrenci listesi::Durumu; "yerleşti"] 
Omit Record 
Perform Find [  ] 
If [Get ( LastError ) = 401] 
Show Custom Dialog [Title:"UYARI"; Message: "6. sınıf öğrencilerinin sınav yeri dağıtımları başarı ile tamamlanmıştır."; Default Button:“TAMAM”, Commit:“Yes”] Exit Script [  ] 
End If 
Go to Record/Request/Page [Round ( Random * ( Get ( FoundCount ) - 1) ; 0 ) + 1] [No dialog]
Set Variable [$$adı2; Value:öğrenci listesi::Adı 
Set Variable [$$soyadı2; Value:öğrenci listesi::Soyadı 
Set Variable [$$sınıfı2; Value:öğrenci listesi::Sınıfı] 
Set Variable [$$no2; Value:öğrenci listesi::No] 
Set Field [öğrenci listesi::Durumu; "yerleşti"] 
Go to Layout [“DAĞITIM” (DAĞITIM)] 
Go to Record/Request/Page [$a] 
Set Field [DAĞITIM::ADI2; $$adı2] 
Set Field [DAĞITIM::SOYADI2; $$soyadı2] 
Set Field [DAĞITIM::SINIFI2; $$sınıfı2] 
Set Field [DAĞITIM::NO2; $$no2] 
Exit Loop If [$a = $$YSAY]    
End Loop
kodları işinizi görecektir kanaatindeyim.