احمد
یک شنبه 02 آذر 1382, 23:37 عصر
قطعه کد زیر همیشه خطای " استک اورفلو " میدهد . اشکال در چیست ؟لطفا راهنمایی کنید.
with DataMadul1 do
begin
تولید ده رکورد خالی در جدول ممتاز //
if tblMomtas.Active then tblMomtas.Active := False ;
tblMomtas.EmptyTable ;
tblMomtas.Active := True ;
tblMomtas.First ;
for i := 1 to 10 do
begin
tblMomtas.Edit ;
tblMomtas.Append ;
tblMomtas.Post ;
end;
انتقال اطلاعات ده رکورد پرس و جوی اول به جدول ممتاز که در واقع دو فیلد اول جدول ممتاز را پر میکند.//
tblMomtas.First ;
qryFHMan.Active := True ;
qryFHMan.First ;
i := 1 ;
while (not qryFHMan.Eof ) and (i <= 10) do
begin
tblMomtas.Edit ;
tblMomtas.FieldValues['O57SW'] :=
qryFHMan.FieldValues['O5'] +
'-' + qryFHMan.FieldValues['O7'] +
'-' + qryFHMan.FieldValues['OS'] +
'-' + qryFHMan.FieldValues['W'] ;
tblMomtas.FieldByName('TotMarkW').AsString :=
qryFHMan.FieldValues['SUM OF TotalMark'];
tblMomtas.Post ;
tblMomtas.Next ;
qryFHMan.Next ;
i := i + 1 ;
end;
qryFHMan.Active := False ;
انتقال اطلاعات ده رکورد پرس و جوی دوم به جدول ممتاز که در واقع دو فیلد دوم جدول ممتاز را پر میکند.//
tblMomtas.First ;
qryFSub.Active := True ;
qryFSub.First ;
i := 1 ;
while (not qryFSub.Eof) and (i <= 10) do
begin
tblMomtas.Edit ;
tblMomtas.FieldByName('O57S').AsString :=
qryFSub.Fields[0].Value +
'-' + qryFSub.Fields[1].Value +
'-' + qryFSub.Fields[2].Value ;
tblMomtas.FieldByName('TotMarkS').AsString :=
qryFSub.Fields[3].Value ;
tblMomtas.Post ;
tblMomtas.Next ;
qryFSub.Next ;
i := i + 1 ;
end;
qryFSub.Active := False ;
end ;[/code] :( :(
with DataMadul1 do
begin
تولید ده رکورد خالی در جدول ممتاز //
if tblMomtas.Active then tblMomtas.Active := False ;
tblMomtas.EmptyTable ;
tblMomtas.Active := True ;
tblMomtas.First ;
for i := 1 to 10 do
begin
tblMomtas.Edit ;
tblMomtas.Append ;
tblMomtas.Post ;
end;
انتقال اطلاعات ده رکورد پرس و جوی اول به جدول ممتاز که در واقع دو فیلد اول جدول ممتاز را پر میکند.//
tblMomtas.First ;
qryFHMan.Active := True ;
qryFHMan.First ;
i := 1 ;
while (not qryFHMan.Eof ) and (i <= 10) do
begin
tblMomtas.Edit ;
tblMomtas.FieldValues['O57SW'] :=
qryFHMan.FieldValues['O5'] +
'-' + qryFHMan.FieldValues['O7'] +
'-' + qryFHMan.FieldValues['OS'] +
'-' + qryFHMan.FieldValues['W'] ;
tblMomtas.FieldByName('TotMarkW').AsString :=
qryFHMan.FieldValues['SUM OF TotalMark'];
tblMomtas.Post ;
tblMomtas.Next ;
qryFHMan.Next ;
i := i + 1 ;
end;
qryFHMan.Active := False ;
انتقال اطلاعات ده رکورد پرس و جوی دوم به جدول ممتاز که در واقع دو فیلد دوم جدول ممتاز را پر میکند.//
tblMomtas.First ;
qryFSub.Active := True ;
qryFSub.First ;
i := 1 ;
while (not qryFSub.Eof) and (i <= 10) do
begin
tblMomtas.Edit ;
tblMomtas.FieldByName('O57S').AsString :=
qryFSub.Fields[0].Value +
'-' + qryFSub.Fields[1].Value +
'-' + qryFSub.Fields[2].Value ;
tblMomtas.FieldByName('TotMarkS').AsString :=
qryFSub.Fields[3].Value ;
tblMomtas.Post ;
tblMomtas.Next ;
qryFSub.Next ;
i := i + 1 ;
end;
qryFSub.Active := False ;
end ;[/code] :( :(