хм... ну например получение номера следующего документа на определенную дату можно оформить такой функцией
Код:
// функция получения следующего номера документа за определенную дату
function TForm1.GetNewNum(dt: integer): string;
begin
//seq - табличка в БД с двумя полями, описание полей ниже
if not seq.Locate('dat',dt,[]) then //ищем дату такую в табличке
begin //если не нашли, добавляем запись и номер ставим 2, возвращаем 1
seq.Insert;
seq.FieldByName('dat').AsInteger := dt;//тип целое. ключевое. дата приказа в виде целого числа
seq.FieldByName('nxt').AsInteger := 2;//тип целое. номер следующего приказа за дату
seq.Post;
Result := '1';
Exit;
end
else
begin //если нашли дату, т.е. были документы на эту дату
Result := seq.fieldbyname('nxt').AsString;//берем номер
seq.Edit;
// и увеличиваем в табличке на 1
seq.FieldByName('nxt').AsInteger := seq.FieldByName('nxt').AsInteger +1;
seq.Post;
end;
end;
PS это не решение твоей задачи, а так наводка на мысли, делать
все за тебя мне скучно
