12-03-2020, 07:50 PM
الصفحات : 1 2
13-03-2020, 03:50 PM
(11-03-2020, 10:46 PM)medreg كتب : [ -> ]اليكم المرفق للإطلاع والتعديل
علما انني استعمل قاعدة البيانات
absolute database
ونسخة الدلفي xe8
جزاكم الله عنا كل خير
السلام عليكم جرب هذا
كود :
function GetNewNumero(Annee: string): string;
var
tan: string;
tNum,Err : integer;
tKey : variant;
PriorFilter: string;
PriorFiltered: Boolean;
begin
PriorFilter:= DM.Table1.Filter;
PriorFiltered:= DM.Table1.Filtered;
DM.Table1.Filter:= 'Annee=' + Annee;
DM.Table1.Filtered:= True;
tan:= Annee;
DM.Table1.Last;
tKey:= DM.Table1.FieldByName('No_Brd').value;
if (tKey = NULL) or (copy(tKey, length(tKey)-3, 4)<>tan)then
tNum := 0
else
begin
val(copy(tKey, 1, 4), tNum, Err);
if Err<>0 then
tNum:= 0;
end;
Result:= Format('%4.3d/', [DM.Table1.RecordCount+ 1]) + tan ;
DM.Table1.Filter:= PriorFilter;
DM.Table1.Filtered:= PriorFiltered;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
NewNumero: string;
begin
NewNumero:= GetNewNumero(DM.Table2.FieldValues['Annee']);
DM.Table1.Append;
DM.Table1.FieldValues['No_Brd']:= NewNumero;
DM.Table1.FieldValues['Annee']:= DM.Table2.FieldValues['Annee'];
DM.Table1.Post;
end;(13-03-2020, 03:50 PM)anter2016 كتب : [ -> ](11-03-2020, 10:46 PM)medreg كتب : [ -> ]اليكم المرفق للإطلاع والتعديل
علما انني استعمل قاعدة البيانات
absolute database
ونسخة الدلفي xe8
جزاكم الله عنا كل خير
السلام عليكم جرب هذا
كود :function GetNewNumero(Annee: string): string; var tan: string; tNum,Err : integer; tKey : variant; PriorFilter: string; PriorFiltered: Boolean; begin PriorFilter:= DM.Table1.Filter; PriorFiltered:= DM.Table1.Filtered; DM.Table1.Filter:= 'Annee=' + Annee; DM.Table1.Filtered:= True; tan:= Annee; DM.Table1.Last; tKey:= DM.Table1.FieldByName('No_Brd').value; if (tKey = NULL) or (copy(tKey, length(tKey)-3, 4)<>tan)then tNum := 0 else begin val(copy(tKey, 1, 4), tNum, Err); if Err<>0 then tNum:= 0; end; Result:= Format('%4.3d/', [DM.Table1.RecordCount+ 1]) + tan ; DM.Table1.Filter:= PriorFilter; DM.Table1.Filtered:= PriorFiltered; end; procedure TForm1.Button1Click(Sender: TObject); var NewNumero: string; begin NewNumero:= GetNewNumero(DM.Table2.FieldValues['Annee']); DM.Table1.Append; DM.Table1.FieldValues['No_Brd']:= NewNumero; DM.Table1.FieldValues['Annee']:= DM.Table2.FieldValues['Annee']; DM.Table1.Post; end;
كود :
function TForm1.AutoID: string;
var
ID ,t: string;
begin
t:= IntToStr(DM.Table1.RecordCount + 1);
ID := FormatFloat('0000' ,StrToInt(t)) + '/' + Copy(DBEdit2.Text,1,4);
Result := ID;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
dm.Table1.Insert;
dm.Table1No_Brd.value := AutoID;
end;
end.(13-03-2020, 03:50 PM)anter2016 كتب : [ -> ](11-03-2020, 10:46 PM)medreg كتب : [ -> ]اليكم المرفق للإطلاع والتعديل
علما انني استعمل قاعدة البيانات
absolute database
ونسخة الدلفي xe8
جزاكم الله عنا كل خير
السلام عليكم جرب هذا
كود :function GetNewNumero(Annee: string): string; var tan: string; tNum,Err : integer; tKey : variant; PriorFilter: string; PriorFiltered: Boolean; begin PriorFilter:= DM.Table1.Filter; PriorFiltered:= DM.Table1.Filtered; DM.Table1.Filter:= 'Annee=' + Annee; DM.Table1.Filtered:= True; tan:= Annee; DM.Table1.Last; tKey:= DM.Table1.FieldByName('No_Brd').value; if (tKey = NULL) or (copy(tKey, length(tKey)-3, 4)<>tan)then tNum := 0 else begin val(copy(tKey, 1, 4), tNum, Err); if Err<>0 then tNum:= 0; end; Result:= Format('%4.3d/', [DM.Table1.RecordCount+ 1]) + tan ; DM.Table1.Filter:= PriorFilter; DM.Table1.Filtered:= PriorFiltered; end; procedure TForm1.Button1Click(Sender: TObject); var NewNumero: string; begin NewNumero:= GetNewNumero(DM.Table2.FieldValues['Annee']); DM.Table1.Append; DM.Table1.FieldValues['No_Brd']:= NewNumero; DM.Table1.FieldValues['Annee']:= DM.Table2.FieldValues['Annee']; DM.Table1.Post; end;
(13-03-2020, 03:50 PM)anter2016 كتب : [ -> ](11-03-2020, 10:46 PM)medreg كتب : [ -> ]اليكم المرفق للإطلاع والتعديل
علما انني استعمل قاعدة البيانات
absolute database
ونسخة الدلفي xe8
جزاكم الله عنا كل خير
السلام عليكم جرب هذا
كود :function GetNewNumero(Annee: string): string; var tan: string; tNum,Err : integer; tKey : variant; PriorFilter: string; PriorFiltered: Boolean; begin PriorFilter:= DM.Table1.Filter; PriorFiltered:= DM.Table1.Filtered; DM.Table1.Filter:= 'Annee=' + Annee; DM.Table1.Filtered:= True; tan:= Annee; DM.Table1.Last; tKey:= DM.Table1.FieldByName('No_Brd').value; if (tKey = NULL) or (copy(tKey, length(tKey)-3, 4)<>tan)then tNum := 0 else begin val(copy(tKey, 1, 4), tNum, Err); if Err<>0 then tNum:= 0; end; Result:= Format('%4.3d/', [DM.Table1.RecordCount+ 1]) + tan ; DM.Table1.Filter:= PriorFilter; DM.Table1.Filtered:= PriorFiltered; end; procedure TForm1.Button1Click(Sender: TObject); var NewNumero: string; begin NewNumero:= GetNewNumero(DM.Table2.FieldValues['Annee']); DM.Table1.Append; DM.Table1.FieldValues['No_Brd']:= NewNumero; DM.Table1.FieldValues['Annee']:= DM.Table2.FieldValues['Annee']; DM.Table1.Post; end;
كود :function TForm1.AutoID: string; var ID ,t: string; begin t:= IntToStr(DM.Table1.RecordCount + 1); ID := FormatFloat('0000' ,StrToInt(t)) + '/' + Copy(DBEdit2.Text,1,4); Result := ID; end; procedure TForm1.Button3Click(Sender: TObject); begin dm.Table1.Insert; dm.Table1No_Brd.value := AutoID; end; end.
الصفحات : 1 2