PDA

View Full Version : افزایش سرعت در نوع کد نویسی



khanboloky
جمعه 07 مهر 1396, 01:17 صبح
سلام این کد نویسی درست کار می کنه ولی خیلی طول می کشه که انجام بشه امکانش هست این کد طوری بنویسید که سریع انجام یشه؟


label
N,B,Q,F,K,H,J,L,M,P,C,Z;
var
i:integer;
a:string;
e:integer;
w:integer;
begin
ADOQuery6.DisableControls;
ADOQuery4.DisableControls;
ADOQuery48.DisableControls;




Edit232.Text:='نيروهاي مسلح';
//M:IF Edit232.Text<>'' then
//begin
ADOQuery6.Close;
ADOQuery6.SQL.Clear;
ADOQuery6.SQL.Add('select * from D1 where ([90mosalah] <>''0'' )and ([90mosalah] <>''-'' )and ([232] = 0) and (tprace=0)');
ADOQuery6.Open;


for e:=1 to ADOQuery6.RecordCount do
begin
ADOQuery4.Close;
ADOQuery4.SQL.Clear;
ADOQuery4.SQL.Add('select * from D where (COD5 = '''+ADOQUERY6.FieldByName('COD5').Text+''')and (GROHKA = ''دارو'')');
ADOQuery4.Open;


if ADOQuery4.RecordCount > 0 then goto P else goto Z;


P:for w:=1 to ADOQuery4.RecordCount do
begin
ADOQuery48.Close;
ADOQuery48.SQL.Clear;
ADOQuery48.SQL.Add('select * from CKHARG where (COD1 = '''+ADOQUERY4.FieldByName('COD1').Text+''') and (NUMEBE = '''+Edit232.Text+''')');
ADOQuery48.Open;


if ADOQuery48.RecordCount > 0 then
begin
ADOQUERY48.Edit;
ADOQUERY48.FieldByName('COD1').AsString :=ADOQUERY4.FieldByName('COD1').Text;
ADOQUERY48.FieldByName('COD2').AsString :=ADOQUERY4.FieldByName('COD2').Text;
ADOQUERY48.FieldByName('NAME1').AsString :=ADOQUERY4.FieldByName('NAME1').Text;
ADOQUERY48.FieldByName('NAME2').AsString :=ADOQUERY4.FieldByName('NAME2').Text;
ADOQUERY48.FieldByName('NAME3').AsString :=ADOQUERY4.FieldByName('NAME3').Text;
ADOQUERY48.FieldByName('FORM').AsString :=ADOQUERY4.FieldByName('FORM').Text;
ADOQUERY48.FieldByName('DOZ').AsString :=ADOQUERY4.FieldByName('DOZ').Text;
ADOQUERY48.FieldByName('TAKHAS').AsString :=ADOQUERY6.FieldByName('article1moslah').Text;
ADOQUERY48.FieldByName('NUMEBE').AsString :=EDIT232.Text;
IF ADOQUERY6.FieldByName('article1moslah').Text<>'غيربيمه اي' THEN ADOQUERY48.FieldByName('KHAREJ').AsString :='-' ELSE
ADOQUERY48.FieldByName('KHAREJ').AsString :='غيربيمه اي' ;
ADOQUERY48.FieldByName('PRODUC').AsString :=ADOQUERY6.FieldByName('90mosalah').Text;
ADOQUERY48.FieldByName('SALE1').AsString :=ADOQUERY6.FieldByName('mprice').Text;
ADOQUERY48.Post;
ADOQUERY4.Next;
end else
begin
ADOQUERY48.Insert;
ADOQUERY48.FieldByName('COD1').AsString :=ADOQUERY4.FieldByName('COD1').Text;
ADOQUERY48.FieldByName('COD2').AsString :=ADOQUERY4.FieldByName('COD2').Text;
ADOQUERY48.FieldByName('NAME1').AsString :=ADOQUERY4.FieldByName('NAME1').Text;
ADOQUERY48.FieldByName('NAME2').AsString :=ADOQUERY4.FieldByName('NAME2').Text;
ADOQUERY48.FieldByName('NAME3').AsString :=ADOQUERY4.FieldByName('NAME3').Text;
ADOQUERY48.FieldByName('FORM').AsString :=ADOQUERY4.FieldByName('FORM').Text;
ADOQUERY48.FieldByName('DOZ').AsString :=ADOQUERY4.FieldByName('DOZ').Text;
ADOQUERY48.FieldByName('TAKHAS').AsString :=ADOQUERY6.FieldByName('article1moslah').Text;
ADOQUERY48.FieldByName('NUMEBE').AsString :=EDIT232.Text;
IF ADOQUERY6.FieldByName('article1moslah').Text<>'غيربيمه اي' THEN ADOQUERY48.FieldByName('KHAREJ').AsString :='-' ELSE
ADOQUERY48.FieldByName('KHAREJ').AsString :='غيربيمه اي' ;
ADOQUERY48.FieldByName('PRODUC').AsString :=ADOQUERY6.FieldByName('90mosalah').Text;
ADOQUERY48.FieldByName('SALE1').AsString :=ADOQUERY6.FieldByName('mprice').Text;
ADOQUERY48.Post;
ADOQUERY4.Next;
end;
end;
Z:ADOQUERY6.Next;
end;
ADOQuery6.EnableControls;
ADOQuery4.EnableControls;
ADOQuery48.EnableControls;
end;

fakhravari
شنبه 08 مهر 1396, 12:16 عصر
حاجی داری اشتباه میزنی