Вообще-то, обычно зависит от БД.
Например в оракле есть сиквенсы. Можно просто получит значение из сиквенса и использовать его при вставке записи, соотв. и для отчета.
В MS SQL при вставке записи моджно получить значение автоинкрементного поля, т.е. PK.
В конце концов для вставки записи можно сделать процедуру и из нее получить ID вставленной записи (практически все СУБД поддердивают получение ID последней вставленной записи в текущей сессии).
|