دوستان عزیز سلام
من یک جدول در sql ساخته ام که یکی از فیلدهای آن شماره ترتیب بر اساس سال جاری میباشد مثلاً در سال 86 ترتیب شماره بصورت 860001 و 860002 و ... میباشد و در سال های بعدی بجاری 86 آن سال مورد نظر قرار می گیرد . حال در دلفی فرمی ساخته ام که با جدول فوق در ارتباط بوده و یک کلید در داخل فرم قرار داده ام که با زدن این کلید می خواهم بطور اتوماتیک برای هر رکورد شماره مورد نظر ایجاد گردد . البته بنده کد مورد نظر را نوشته ام فقط یک مشکل دارد و آن اینکه اولین شماره در اول هر سال مورد نظر را نمی تواند ایجاد کند و برنامه خطا می دهد . لطفا اگر متوجه شده اید راهنمایی کنید
با تشکر
var
a:String;
begin
a:=Copy(MainForm.EDYear.Text,3,2)+'0001';
TFactorMain.Insert;
EDFactCode.SetFocus;
with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('SELECT MAX(FactCode) as FMax FROM FactorMain Where DYear='+
QuotedStr(MainForm.EDYear.Text) + '');
Open;
FCode.DataField:='FMax';
if AdoQuery1.RecordCount>0 then
EDFactCode.Text:=inttostr(strtoint(FCode.Text)+1)
else if AdoQuery1.RecordCount=0 then
EDFactCode.Text:=a;
EDDYear.Text:=MainForm.EDYear.Text;
end;
//FCode:=strtoint(FcCod.Text)+1;
//EDFactCode.Text:=inttostr(FCode);
end;