Вниз
Скачать: CL | DM;

Как сделать вх. номер?   Найти похожие ветки 

 
Viktor1 ©   (2002-04-07 00:28) [0]

Делаю программу регистрации входящих писем, нужно чтобы программа каждому письму присваивала уникальный вх.номер. Так вот к чему этот номер привязать, чтобы по окончанию года вх.номер начинался бы сначала. Может кто видел такой пример, подскажите где. База Paradox, BDE.Спасибо всем.


 
Anatoly Podgoretsky ©   (2002-04-07 09:04) [1]

Привяжи к году, год+nr


 
Shaman ©   (2002-04-07 10:01) [2]

Не используй автоинкрементное поле, а расчитывай номер письма сам. Например

function NewLetterNum(NewDate: TDateTime): Lontint;
var
d, m, y1, y2: Word;
PrevDate: TDateTime;
PrevNum: LongInt;
begin
// Определяем год из даты нового письма
DecodeDate(NewDate, d, m, y1);
// Таблица должна быть отсортирована по дате + номер письма
Table1.IndexFieldNames := "LDate;LNum";
// Определяем номер и дату последнего письма и выделяем из нее год
Table1.Last;
PrevDate := Table1.FieldByName("LDate").AsDateTime;
PrevNum := Table1.FieldByName("LNum").AsInteger;
DecodeDate(PrevDate, d, m, y2);
if y2 < y1 then Result := 1 else Result := PrevNum + 1;
end;


 
Viktor1 ©   (2002-04-07 12:26) [3]

Спасибо, всё понял. Shaman огромное спасибо за пример. Главное принцип остальное дело техники!!!


 
dnk   (2002-04-07 15:30) [4]

Можно таким нехитрым запросом его посчтитать ->

select Max(Nomer)+1 from jurnal.db
where Year = :PY


PY = параметр текущий год



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.007 c
3-94317
AndreyP
2002-04-09 13:23
2002.04.29
Показ результата выборки


1-94377
a_k
2002-04-17 15:05
2002.04.29
Form.OnClose


3-94257
valievrf
2002-04-07 17:02
2002.04.29
Обсуждение рендома и фора.....


1-94495
Sukhov
2002-04-16 16:43
2002.04.29
Получение почты, а точнее приаттаченных файлов с помощью FastNet


14-94538
VATERMAN
2002-03-20 19:54
2002.04.29
АРI




   Наверх